閱讀271 返回首頁    go 微軟 go windows


Yahoo! s4和Twitter storm的粗略比較

Items\Projects
Yahoo! s4
Twitter Storm
協議
Apache license 2.0
Eclipse Public License 1.0
開發語言
Java
Clojure,Java,Clojure編寫了核心代碼
結構
去中心化的對等結構
有中心節點nimbus,但非關鍵
通信
可插拔的通訊層,目前是基於UDP的實現 基於facebook開源的thrift框架
事件/Stream
<K,A>序列,用戶可自定義事件類 提供Tuple類,用戶不可自定義事件類,
但是可以命名field和注冊序列化器
處理單元 Processing Elements,內置PE處理
count,join和aggregate等常見任務
Bolt,沒有內置任務,提供IBasicBolt處理
自動ack
第三方交互
提供API,Client Adapter/Driver,第三方客戶端輸入或者輸出事件 定義Spout用於產生Stream,沒有標準輸出API
持久化 提供Persist API規範,可根據頻率或者次數做
持久化
無特定API,用戶可自行選擇處理
可靠處理  無,可能會丟失事件  提供對事件處理的可靠保證(可選)
路由 EventType + Keyed attribute + value匹配
內置count,join和aggregate標準任務
Stream Groupings:
Shuffle,Fields,All,Global,None,Direct
非常靈活的路由方式
多語言支持  暫時隻支持Java 多語言支持良好,本身支持Java,Clojure,
其他非JVM語言通過thrift和進程間通訊
Failover
 部分支持,數據無法failover  部分支持,數據同樣無法failover
Load Balance
不支持  不支持
 並行處理  取決於節點數目,不可調節  可配置worker和task數目,storm會盡量將worker和task均勻分布
動態增刪節點 不支持
 支持
動態部署
 不支持  支持
web管理  不支持  支持
代碼成熟度  半成品  成熟
活躍度  低  活躍
編程  編程 + XML配置
  純編程
參考文檔  https://docs.s4.io/

https://github.com/nathanmarz/storm/wiki/
https://xumingming.sinaapp.com/category/storm/ (非常好




的中文翻譯)


最後更新:2017-05-18 20:31:47

  上一篇:go  《KAFKA官方文檔》入門指南(一)
  下一篇:go  Ambari 架構(二)Ambari 整體架構