【发布时间】:2020-08-26 22:18:39
【问题描述】:
我知道 Apache Flink 有 Exactly once 的能力,它依赖于 checkpoint 机制和可重发的数据源。
按照我的理解,Flink 的算子如果出错了,需要重新运行上一次的操作,所以必须要获取历史数据。在这种情况下,历史数据应该/可以存储在哪里?
说数据源是Apache Kafka,那我可以让Kafka存储历史数据吗?我可以让 Flink 存储历史数据吗?或者我可以让他们两个都这样做吗?如果两个人能一起做这件事,是不是意味着我可以让Kafka存储一部分历史数据,让Flink存储另一部分历史数据,这样我就可以保存更多的历史数据?
【问题讨论】:
-
我想你可能有兴趣阅读这篇论文:vldb.org/pvldb/vol10/p1718-carbone.pdf
标签: apache-flink flink-streaming fault-tolerance exactly-once