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

Flink CDC中exactlyOnceSink 只能写一个SQL 你是怎么做到 同时写上?

Flink CDC中exactlyOnceSink 只能写一个SQL 你是怎么做到 同时写上insert update delete语句的?

展开
收起
真的很搞笑 2023-09-27 07:55:58 135 0
1 条回答
写回答
取消 提交回答
  • Flink CDC的exactly-once sink只能写一个SQL是正确的,因为exactly-once sink是基于事务提交的方式保证事务性,如果写多个SQL,那么就无法保证每个SQL都是在同一个事务中提交,从而无法保证整个作业是事务性的。

    不过你可以通过使用Flink CDC的多个exactly-once sink来实现同时写多个SQL。比如,你可以使用1个exactly-once sink写入主库,另外1个exactly-once sink写入备库。这样,主库和备库的数据都会被保证是事务性的。

    另外,你可以使用不同的exactly-once sink来写不同的表。比如,你可以使用1个exactly-once sink写入库存表,另外1个exactly-once sink写入订单表。这样,库存表和订单表的数据都会被保证是事务性的。

    总之,Flink CDC的exactly-once sink只能写一个SQL,但是你可以通过使用多个exactly-once sink来实现同时写多个SQL。

    2023-10-11 10:34:04
    赞同 展开评论 打赏

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

相关产品

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

    更多
    SQL Server 2017 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载