spark streaming读取kakfka数据手动维护offset
在spark streaming读取kafka的数据中,spark streaming提供了两个接口读取kafka中的数据,分别是KafkaUtils.createDstream,KafkaUtils.createDirectStream,前者会自动把offset更新到zk中,默认会丢数据,效率低,后者不会经过zk,效率更高,需要自己手动维护offse,通过维护护offset写到zk中,保障数据零丢失,只处理一次,下面来看看KafkaUtils.createDirectStream的使用,我把zk的端口改成了9999,防止和kakfa自带的zk的端口产生冲突,下面我写了一些测试代码,经自己测试数据没任何问题,即使spark streaming挂了 ,另一方往topic中写数据,下次启动streaming程序也能读取,做到数据零丢失,不同的group.id下只读取一次,看看下面代码吧(代码是自己查看kafka中自带的接口和一些其他的资料组合而成,简单的写了一些,参数没写成配置)
相关推荐
  wkwanglei    2020-06-13  
   qingmuluoyang    2020-06-10  
   sweetgirl0    2020-05-14  
   yangyutong00    2020-04-26  
   igogo00    2020-01-31  
   guicaizhou    2020-01-25  
   amwayy    2019-12-22  
   猫咪的一生    2019-12-14  
   sweetgirl0    2019-12-08  
   vimysql    2019-11-22  
   Rafema    2011-03-08  
 