Yahoo! s4和Twitter storm的粗略比较

ItemsProjects Yahoo!s4 TwitterStorm
协议 Apachelicense2.0 EclipsePublicLicense1.0
开发语言 Java Clojure,Java,Clojure编写了核心代码
结构 去中心化的对等结构 有中心节点nimbus,但非关键
通信 可插拔的通讯层,目前是基于UDP的实现 基于facebook开源的thrift框架
事件/Stream <K,A>序列,用户可自定义事件类 提供Tuple类,用户不可自定义事件类,
但是可以命名field和注册序列化器
处理单元 ProcessingElements,内置PE处理
count,join和aggregate等常见任务
Bolt,没有内置任务,提供IBasicBolt处理
自动ack
第三方交互 提供API,ClientAdapter/Driver,第三方客户端输入或者输出事件 定义Spout用于产生Stream,没有标准输出API
持久化 提供PersistAPI规范,可根据频率或者次数做
持久化
无特定API,用户可自行选择处理
可靠处理 无,可能会丢失事件 提供对事件处理的可靠保证(可选)
路由 EventType+Keyedattribute+value匹配
内置count,join和aggregate标准任务
StreamGroupings:
Shuffle,Fields,All,Global,None,Direct
非常灵活的路由方式
多语言支持 暂时只支持Java 多语言支持良好,本身支持Java,Clojure,
其他非JVM语言通过thrift和进程间通讯
Failover 部分支持,数据无法failover 部分支持,数据同样无法failover
LoadBalance 不支持 不支持
并行处理 取决于节点数目,不可调节 可配置worker和task数目,storm会尽量将worker和task均匀分布
动态增删节点 不支持 支持
动态部署 不支持 支持
web管理 不支持 支持
代码成熟度 半成品 成熟
活跃度 活跃
编程 编程+XML配置 纯编程
参考文档 http://docs.s4.io/ https://github.com/nathanmarz/storm/wiki/
http://xumingming.sinaapp.com/category/storm/(非常好的中文翻译)

你可能感兴趣的:(storm,twitter,S4,Yahoo!,粗略比较)