看了下官方文档,原本streaming在使用direct模式时,可以自己维护offset,感觉上还比较靠谱。
现在structed streaming 使用kafka时,enable.auto.commit 是不可设置的,按照文档说的是,structed streaming 不提交任何offset,
那spark在新版本的消费kafka中,如何保证有且仅有一次,或者是至少被消费一次。
【求助】structed streaming 在消费kafka数据时,怎么保证数据完整&有且仅有1次被消费
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 红尘丶世界 2020-04-17 10:11关注
structed streaming 并不是不提交任何offset,只是不提交到zk而已, 首先kafka本身有个topic有个存放
__consumer_offsets
, 同时还可以提交到外部存储,比如说mysql、redis 之类, 通过checkpointLocation 可以设置偏移量存储的路径,可以自己试一下.option("checkpointLocation","./checkpoint")
解决 无用评论 打赏 举报
悬赏问题
- ¥15 虚拟机打包apk出现错误
- ¥30 最小化遗憾贪心算法上界
- ¥15 用visual studi code完成html页面
- ¥15 聚类分析或者python进行数据分析
- ¥15 逻辑谓词和消解原理的运用
- ¥15 三菱伺服电机按启动按钮有使能但不动作
- ¥15 js,页面2返回页面1时定位进入的设备
- ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
- ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
- ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝