开发者社区> 问答> 正文

单流的一条数据,需要先sink 至mysql,再sink至kafka,并保证两sink的原子性以及s

请问下,有没有大佬做过类似的事情?

另外,flink side out功能,可以将单流分成多流,但是不是分成多流后,但两条流sink的时候,是不是没法保证sink时候的时序? *来自志愿者整理的flink邮件归档

展开
收起
彗星halation 2021-12-07 16:06:16 765 0
1 条回答
写回答
取消 提交回答
  • 你可以先用 map 再用 addSink,这样他们的调用被 chain 在一起,可以达到先写入 mysql ,再写入 kafka 的目的。

    datastream.map(new MySQLSinkMapFunction()).addSink(new

    FlinkKafkaProducer()).

    也就是将 mysql sink 伪装成了一个 MapFunction,里面先做了 写 mysql 的动作,写成功后再将数据输出到下游。

    另外,如果要在 SQL 中解决这个需求的话,会比较麻烦,因为标准语法中没有这么个语法支持这个功能。*来自志愿者整理的flink邮件归档

    2021-12-07 16:11:03
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像