开发者社区> 问答> 正文

MillWheel 使用了一种名为「Strong production」的机制将每个算子的输出在发送

MillWheel 使用了一种名为「Strong production」的机制将每个算子的输出在发送至下游之前都进行了什么化存储?

展开
收起
游客gwxzsspn6neze 2022-05-10 18:36:41 465 0
来自:阿里技术
1 条回答
写回答
取消 提交回答
  • MillWheel 使用了一种名为「Strong production」的机制将每个算子的输出在发送至下游之前都进行了持久化存储,一旦发生了故障,当需要恢复时,引擎可以直接将存储后的结果发出去。回头再看端到端一致性数据处理语义的充分必要条件,显然 MillWheel 是符合「实时存储每一条中间和最终计算结果」这个条件的。对于存在不确定性计算的流计算场景,当 FailOver 时,引擎会从源头重新发送消息进行重算,多次计算可能会产生的不一致的结果,但由于「Strong Production」会对计算进行去重,因此即便进行了多次重算,但有且仅有一次重算的结果被输出给下游(下游算子或结果接受端),从整体上来看数据是满足一致性的,这也被称之为「Effective Determinism」。

    2022-05-13 15:32:14
    赞同 展开评论 打赏
问答地址:
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
Let's Work Together On The Future Of JavaScript Through TC39 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载