4

我是 Storm 的新手。请帮助我清楚地了解 Trident 拓扑。我也想知道 Trident 拓扑的需求套件是什么样的?

4

2 回答 2

7

Trident 基本上是一个建立在 Storm 之上的抽象,它允许有状态的流处理。与风暴“至少一次处理”消息相比,它确保消息的“精确一次处理”。
教程页面

Trident 是在 Storm 之上进行实时计算的高级抽象。它允许您将高吞吐量(每秒数百万条消息)、有状态流处理与低延迟分布式查询无缝混合。如果您熟悉 Pig 或 Cascading 等高级批处理工具,那么 Trident 的概念就会非常熟悉 - Trident 具有连接、聚合、分组、函数和过滤器。除了这些之外,Trident 添加了用于在任何数据库或持久性存储之上进行有状态、增量处理的原语。Trident 具有一致的、exactly-once 语义,因此很容易推断 Trident 拓扑。

对于用例,您可以在 SO Check the API overview here中进行此讨论

我可以找到更多有用的链接
http://www.datasalt.com/2013/04/an-storms-trident-api-overview/
http://asakta.blogspot.in/2013/04/learning-to-hold -trident-in-storm.html

于 2013-10-29T09:40:27.863 回答
3

Trident 支持许多特性,如对元组的分组、过滤、合并、聚合,这些特性也可以在标准拓扑中实现,但需要付出努力。Trident 为在元组上进行分区聚合的网络跳高度优化和高性能。

Trident 只提供一次交货的交易保证。我们必须根据 MongoDB 或 Casendra 等后端数据库显式实现此事务行为。

Trident 性能可以匹配 Spark 实时计算框架。

在 Storm 中使用典型的事务用例很少见。要在 trident 中启用事务性质,您需要后端数据库根据元组 id 比较或忽略该元组。我们可以在 trident 中以更好的性能完成标准拓扑中可以完成的所有事情。

DRPC 不是拓扑,它是拓扑之上的包装器,支持使用 RPC 调用的客户端-服务器模型,而 trident 是一种拓扑构建风格。

于 2014-06-26T14:11:11.867 回答