Apache Apex看起来像Apache Storm。Apache Apex如何与Apache Storm不同?
- 用户在两个平台上构建应用程序/拓扑结构为定向非循环图(DAG)。 Apex使用操作员/流,Storm使用喷嘴/流/螺栓。
- 它们都是实时处理数据,而不是批处理。
- 似乎都具有高吞吐量&低延迟
所以,一目了然,看起来都差不多,我不太得到的差异。有人能解释一下关键的区别吗?换句话说,我应该什么时候使用一个而不是另一个?
Apache Apex看起来像Apache Storm。Apache Apex如何与Apache Storm不同?
所以,一目了然,看起来都差不多,我不太得到的差异。有人能解释一下关键的区别吗?换句话说,我应该什么时候使用一个而不是另一个?
体系结构有着根本的不同,它使得每个平台在延迟,缩放和状态管理方面都有很大的不同。
在最基层,
您可以在以下博客中了解更多不同之处,其中还包括其他主流处理平台。
https://databaseline.wordpress.com/2016/03/12/an-overview-of-apache-streaming-technologies/
架构和功能
+-------------------+---------------------------+---------------------+
| | Storm | Apex |
+-------------------+---------------------------+---------------------+
| Model | Native Streaming | Native Streaming |
| | Micro batch (Trident | |
+-------------------+---------------------------+---------------------+
| Language | Java. | Java (Scala) |
| | Ability to use non | |
| | JVM languages support | |
+-------------------+---------------------------+---------------------+
| API | Compositional | Compositional (DAG) |
| | Declarative (Trident) | Declarative |
| | Limited SQL | |
| | support (Trident) | |
+-------------------+---------------------------+---------------------+
| Locality | Data Locality | Advance Processing |
+-------------------+---------------------------+---------------------+
| Latency | Low | Very Low |
| | High (Trident) | |
+-------------------+---------------------------+---------------------+
| Throughput | Limited in Ack mode | Very high |
+-------------------+---------------------------+---------------------+
| Scalibility | Limited due to Ack | Horizontal |
+-------------------+---------------------------+---------------------+
| Partitioning | Standard | Advance |
| | Set parallelism at work, | Parallel pipes, |
| | executor and task level | unifiers |
+-------------------+---------------------------+---------------------+
| Connector Library | Limited (certification) | Rich library of |
| | | connectors in |
| | | Apex Malhar |
+-------------------+---------------------------+---------------------+
操作性
+------------+--------------------------+---------------------+
| | Storm | Apex |
+------------+--------------------------+---------------------+
| State | External store | Checkpointing |
| Management | Limited checkpointing | Local checkpointing |
| | Difficult to exploit | |
| | local state | |
+------------+--------------------------+---------------------+
| Recovery | Cumbersome API to | Incremental |
| | store and retrieve state | (buffer server) |
| | Require user code | |
+------------+--------------------------+---------------------+
| Processing | At least once | |
| Semantic | Exactly once require | At least once |
| | user code and affect | End to end |
| | latency | |
| | | exactly once |
+------------+--------------------------+---------------------+
| Back | Watermark on queue | Automatic |
| Pressure | size for spout and bolt | Buffer server |
| | Does not scale | memory and disk |
+------------+--------------------------+---------------------+
| Elasticity | Through CLI only | Yes w/ full user |
| | | control |
+------------+--------------------------+---------------------+
| Dynamic | No | Yes |
| topology | | |
+------------+--------------------------+---------------------+
| Security | Kerberos | Kerberos, RBAC, |
| | | LDAP |
+------------+--------------------------+---------------------+
| Multi | Mesos, RAS - memory, | YARN |
| Tenancy | CPU, YARN | full isolation |
+------------+--------------------------+---------------------+
| DevOps | REST API | REST API |
| Tools | Basic UI | DataTorrent RTS |
+------------+--------------------------+---------------------+
来源: 研讨会:阿帕奇顶点(下一代的Hadoop)与风暴 - 比较和迁移纲要https://www.youtube.com/watch?v=sPjyo2HfD_I
添加Apache Flink和Apache Beam,所有DAG处理器 – user3613754
还请添加用例,我更喜欢哪种用例适合每种用例。 – ChikuMiku