开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink中间计算结果如果存到redis的话,checkpoint 如何保证一致性呢 ?

Flink中间计算结果如果存到redis的话,checkpoint 如何保证一致性呢 ?

展开
收起
cuicuicuic 2024-01-09 12:23:36 38 0
1 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    将Flink的中间计算结果存储到Redis中是可行的,但需要确保数据的一致性和准确性。如果在Flink中的数据发生了变化,但是Redis中的数据没有及时更新,可能会导致计算结果不正确。在项目中使用Redis作为中间缓存时,非使用FlinkRedisSink而是引入了spring-data-redis,因为spring-data-redis已经封装了比较全面的操作。

    关于Checkpoint如何保证一致性,Flink的状态与容错主要分为以下几个知识点:Checkpoint机制、Savepoint机制和State Backends机制。为了开启checkpoint,需要在代码里或配置文件中进行相应的配置。例如,可以打开checkpoint开关,并设置其执行间隔。同时,需要设置checkpoint模式为EXACTLY_ONCE或其他适合的模式。在有赞实时计算中,对于Flink任务的Checkpoint和Savepoint进行了两个方面的工作,其中之一是对于Flink Checkpoint失败的情况,如果Checkpoint失败过于频繁,平台会及时给用户报警提示。

    2024-01-09 14:28:21
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Redis集群演化的心路历程——从2.x到3.0时代 立即下载
    微博的Redis定制之路 立即下载
    云数据库Redis版的开源之路 立即下载