我们正在使用Apache storm对一些传感器数据进行一些预处理。数据类似于。
我们的需求之一是检测连续的时间序列。例如,我们有4个数据,T1,T2,T3,T4,其中T4-T3大于1分钟,其余的差小于1分钟,我们认为T1,T2,T3是一个连续的时间序列,T4是另一个时间序列的开始。
我们的拓扑结构如下:spout-->数据编解码器螺栓-->时间序列检测螺栓。
“数据编解码螺栓”的逻辑相当复杂,因此我们将执行器编号设置为2。问题是,时间序列检测螺栓需要按顺序处理数据,但并行的“编解码螺栓”任务能保证这个顺序吗?
或者我们应该以其他方式实现这一点?
发布于 2015-05-28 14:09:39
是的,Storm保证了事务性拓扑中的序列顺序。引用链接:https://storm.apache.org/documentation/Transactional-topologies.html
事务性拓扑背后的核心思想是在数据处理上提供强大的排序。最简单的表现,也是我们将看到的第一个设计,就是一次处理一个元组,直到当前元组被拓扑成功处理后才移动到下一个元组。
https://stackoverflow.com/questions/30449287
复制相似问题