如何编写风暴三叉戟的事务喷口

时间:2015-06-25 07:46:13

标签: apache-storm transactional trident

我写了一个关于三叉戟的演示。 在演示中,我想在事务spout中生成一系列数据,然后为它们执行persistentAggregate操作。

正常处理如下:

step1:txid = 1,{" aaa 3"," bbb 2"} ==>坚持到DB(确定)

第2步:txid = 2,{" ccc 6"," ddd 7"} ==>坚持到DB(确定)

如果在步骤1中持续存在DB的操作异常,我认为该过程应该是

step1:txid = 1,{" aaa 3"," bbb 2"} ==>坚持到DB(NG)

第2步:txid = 1,{" aaa 3"," bbb 2"} ==>坚持到DB(确定)

但测试结果如下:

step1:txid = 1,{" aaa 3"," bbb 2"} ==>坚持到DB(NG)

第2步:txid = 1,{" ccc 6"," ddd 7"} ==>坚持到DB(确定)

我认为这个过程不正确。但我不知道为什么会这样。 我检查了zookeeper,在路径" meta / 1中,值为null。

我自己编写了一个事务喷口实现了ITridentSpout接口,我认为这可能是我写的喷口问题。

任何人都可以给我一些建议吗?或者给我一个实现的事务性spout示例供我参考。

谢谢!

0 个答案:

没有答案