[Spark streaming 基础]--使用低阶API消费Kafka数据(手动更新offset)

31 篇文章 4 订阅
本文介绍了如何在Spark 1.6.0中使用低阶API从Kafka 0.9.0消费数据,以避免因数据处理速度慢和job异常退出导致的数据丢失。由于不更新Zookeeper的consumer offsets,需要自行实现offset管理。文中提供了KafkaManager类的代码示例,并引用了相关资源进行详细说明。
摘要由CSDN通过智能技术生成

版本:spark(1.6.0)+kafka(0.9.0)+zookeeper(3.4.6)

      由于目前spark每天需要从kafka中消费数亿条左右的消息,集群压力比较大,会导致job不同程度的异常退出。原来使用spark1.6.0版本中的createStream函数,但是在数据处理速度跟不上数据消费速度且job异常退出的情况下,可能造成大量的数据丢失。还好,spark后续版本对这一情况有了很大的改进,1.2版本加入WAL特性,但是性能应该会受到一些影响(本人未测试),1.3版本可以直接通过低阶API从kafka的topic消费消息,并且不再向zookeeper中更新consumer offsets,使得基于zookeeper的consumer offsets的监控工具都会失效。

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

往事随风ing

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值