Arroyo是一個使用Rust編寫的分布式流處理引擎,旨在高效地對數(shù)據流進行有狀態(tài)的計算。與傳統(tǒng)的批處理不同,流處理引擎可以同時處理有界和無界的數(shù)據源,并在結果可用時立即得出結果。
廢話不多說,先上github:
https://github.com/ArroyoSystems/arroyo
簡而言之:Arroyo可讓你對大量實時數(shù)據提出復雜問題,并在亞秒級時間內獲得結果。
說到這里,感覺就是Flink在Rust中的完美替代品。如果真的可以穩(wěn)定使用,那么將是Rust撼動Java在大數(shù)據流式處理計算的第一槍。
我們看下, 官網的宣傳圖:
官方標榜主要特性有:
支持SQL和Rust流水線
可擴展到每秒數(shù)百萬事件
支持狀態(tài)操作,如窗口和連接
支持狀態(tài)檢查點功能,以實現(xiàn)流水線的容錯和恢復
通過Dataflow模型進行及時的流處理
用例
檢測欺詐和安全事件
實時產品和業(yè)務分析
實時數(shù)據攝取到您的數(shù)據倉庫或數(shù)據湖中
實時機器學習特征生成
為什么選擇Arroyo
現(xiàn)在已經有一些現(xiàn)有的流引擎,包括Apache Flink, Spark streaming和Kafka Streams。為什么要搞一個新的呢?
官方也給出了具體的說明:(可以說非常炸裂)
無服務器運維:Arroyo管道被設計為在現(xiàn)代云環(huán)境中運行,支持無縫擴展、恢復和重新調度。
高性能SQL:SQL是一流的關注點,具有始終優(yōu)秀的性能。
專為非專家設計:Arroyo從其內部實現(xiàn)中清晰地分離了管道API。使用者不需要成為流處理專家即可構建實時數(shù)據pipeline。
如何開始
可以通過運行以下Docker命令來使用只有單個節(jié)點的Arroyo群集:
$dockerrun-p8000:8000-p8001:8001ghcr.io/arroyosystems/arroyo-single:multi-arch
然后可以在瀏覽器打開:http://localhost:8000
深入學習
官方文檔:https://doc.arroyo.dev/getting-started(看了下,文檔寫的非常好)
使用復雜SQL構建你的第一個pipeline
https://doc.arroyo.dev/tutorial/first-pipeline
總結
之前也有Rust嘗試做大數(shù)據套件,但是都沒有很成功的案例。或許Arroyo將是第一個用Rust編寫的分布式流處理引擎成功的案例,這樣將再次證明Rust在大數(shù)據基建領域的可行性。
后面我也會繼續(xù)關注Arroyo,并寫一系列的使用教程發(fā)布到本公眾號,并做一些Flink和Arroyo的深入對比。
謝謝大家支持, 做第一個吃螃蟹的人。
審核編輯 :李倩
-
SQL
+關注
關注
1文章
762瀏覽量
44117 -
機器學習
+關注
關注
66文章
8406瀏覽量
132567 -
Rust
+關注
關注
1文章
228瀏覽量
6601
原文標題:Rust流處理新秀,即將抗衡Flink霸主地位
文章出處:【微信號:Rust語言中文社區(qū),微信公眾號:Rust語言中文社區(qū)】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論