介紹Atlas Stream Processing - 簡化實現回應式、靈活的事件驅動應用

MongoDB

很高興 Atlas Stream Processing 在今天進入封閉測試!

世界進步越來越快,應用程式也需要跟上前進的腳步。有了反應快速的事件導向應用程式,可以為客戶帶來全新的數位體驗,同時加速產出商業洞見和決策。想想看以下情境:

  • 送貨狀態更新時,客戶可以馬上收到通知

  • 攔阻付款過程可能出現的詐騙交易

  • 即時分析感測器進行遙測時產出的資料,偵測和修復潛在的裝置失效狀況,避免發生代價高昂的停機問題。

在以上的情境中,只要差一秒鐘的時間,資料就會失去價值。需要在低延遲的速度下,不間斷地進行查詢和處理資料。為了達成這個目的,許多開發者轉向運用串流資料的事件導向應用程式,才有辦法在這個變化快速的世界中迅速作出反應。而 Atlas Stream Processing 可以加快開發者轉移至事件導向應用程式的流程。

MongoDB 資料庫多年來受到開發者青睞,因為它的應用彈性高、文件模型容易使用,而且透過 MongoDB Query API,開發者可以把資料做為編碼使用。MongoDB 的基本特色大幅度降低開發軟體和應用程式的困難度。而今天我們將這些特色應用在串流資料上,Atlas Stream Processing 將會重新定義開發者在處理輸出輸入快且快速變化的串流資料時的體驗,並統一開發者使用動態及靜態資料的方式。

市面上有不少產品和技術,在串流及串流處理方面有著許多創新功能,不過我們認為樣樣具備的 MongoDB 可以幫助開發者處理一些既有的主要挑戰。這些挑戰包含使用計量、大量及輸出輸入快速的資料時會遇到的阻礙;學習新工具、語言和 API 時的背景間接成本,以及引進集點技術至複雜應用程式堆疊時,所造成的碎片化及額外營運維護。

隆重介紹 Atlas Stream Processing

Atlas Streaming Processing 可處理輸出輸入快速的複雜串流資料,為開發者提供以下幾項獨特優勢:

  • 這項功能建立於文件模型之上,為事件串流常見的巢狀複雜資料型態,提供更高的彈性。如此一來可以降低前處理的需求,同時開發者也能更自然且輕鬆地使用結構複雜的資料,就像資料庫一樣。

  • 這項功能統整多種資料的使用經驗,透過一個擁有 API、查詢語言和工具的平台,處理有價值的複雜串流資料以及資料庫中的重要應用程式資料。

  • 這項功能建立在 MongoDB Atlas 這個發展完備的整合服務之上,並且能完全在上面進行管理。只要執行幾個 API 要求和幾行編碼,就能在各大雲端供應商上建置串流處理器、資料庫和 API 服務層。

Atlas Stream Processing 如何運作?

Atlas Stream Processing 可以連接你重要的資料,不管是資料是儲存在 MongoDB(透過更改串流連結)或是在事件串流平台,例如 Apache Kafka。開發者可以輕鬆且毫無阻礙地連接至 Confluent Cloud、Amazon MSK、Redpanda、Azure Event Hubs,或是符合 Kafka 連線協定的自我管理 Kafka。Atlas Stream Processing 透過整合原生 Kafka 驅動程式,在此基礎上提供低延遲的效能。

除了長期策略合作的 Confluent 之外,我們很高興在這次發布上,宣布和 AWS、Microsoft、Redpanda 和 Google 成為合作夥伴。

Atlas Stream Processing 會提供三種主要功能,幫助你將串流資料管道,轉化為具差異化的客戶經驗。現在就來看看是哪三種功能吧。

處理不間斷

首先,開發者可以運用 MongoDB 的聚合框架,不間斷地處理來自事件串流平台上(例如Apache Kafka)具有價值的複雜資料串流。如此一來就能不間斷地進行查詢、分析及處理串流資料,而且不需要面對批次處理時會發生的延遲。聚合框架也能進行資料篩選和分組,將狀態時段內輸入輸出快速的事件串流聚合為可執行的洞見,提供更豐富、即時的應用程式體驗。

認證不間斷

接著,Atlas Stream Processing 提供開發者完整且原生的機制,處理可能造成應用程式失效的資料不正確狀況。有可能的狀況包括傳送錯誤結果至應用程式中、資料遺失和應用程式停機。Atlas Stream Processing 解決這些問題的方法,是確保在事件導向的應用程式之間,穩定地處理和分享串流資料。

Atlas Stream Processing:

  • 提供不間斷的標記認證,在進行處理之前,確保事件內容完整-像是拒絕有空格欄位或是包含無效值的欄位。

  • 偵測訊息損毀

  • 偵測錯過處理時段而延遲到達的資料

Altas Stream Processing 管線可以配置一組整合的無效字母佇列,認證失敗的事件會傳回此佇列之中。有了這個功能,開發者不需要建構和維護自己的安裝啟用流程。不僅能快速進行問題除錯,也能將資料缺失或損毀造成整個應用程停機的風險降到最低。

合併不間斷

處理完成的資料接下來可以直接實體化成為 Atlas 資料庫類別的視圖表。可以把這個視為 Push 查詢,應用程式可以透過 MongoDB Query API 或 Atlas SQL 介面,使用 Pull 查詢取回視圖表中的結果。對於支援自動化及人工決策和行為的最新資料分析性視圖表來說,不間斷地將更新的資料合併至類別之中,是一個非常有效率的維護方法。除了實體化視圖表之外,開發者在發佈處理過的事件回到串流系統,例如 Apache Kafka,也能有更多彈性。

建立一套串流處理器

現在就來看看透過 MongoDB Atlas 建立串流處理器多麼輕鬆吧!有了 Atlas Stream Processing,你可以在資料庫中熟悉的串流處理器上,使用與聚合管道相同的語法。接下來我們將從頭到尾,為你示範淺顯易懂的串流處理例子,只需要幾行的編碼就好了。

首先我們要編寫一個聚合管道,定義資料來源;執行認證,確保資料不是來自 localhost/127.0.0.1 的 IP 地址;建立一個輪轉時段,以便每一分鐘都會蒐集分組訊息資料,並將這些處理好的資料以 MongoDB 類別,合併至 Atlas 之中。

接著我們要建立一個串流處理器,取名為「netattacks」,指定剛剛定義的管道 p 以及 dlp 作為參數,如此就能執行我們想要的處理流程,而且透過應用無效字母佇列 (DLQ),可以儲存任何無效資料,方便檢測、除錯,或是往後再次執行處理。

最後就能開始執行,在 MongoDB Atlas 建立串流處理器就是這麼輕鬆!

申請封閉測試

我們很樂意提供你這項產品做使用,並了解你將如何應用。請到這裡了解更多 Atlas Stream Processing 並申請搶先體驗,當封閉測試開放給開發者時,就能馬上體驗。

第一次接觸 MongoDB 嗎?今天註冊 MongoDB Atlas,開始免費試用。

安全港

以上所提關於我們產品的開發、發行和任何特徵或功能的時間表,皆由我們自行決定。此訊息目的為概述我們的整體產品方向,不應以此內容作為購買決定的依據,也不應將此內容視為提供任何資料、編碼或功能的保證、承諾或是法律義務。