MAPREDUCE服务 MRS-Spark Streaming应用运行过程中重启Kafka,Web UI界面部分batch time对应Input Size为0 records:回答

时间:2024-08-01 19:24:15

回答

Kafka重启成功后应用会按照batch时间把2017/05/11 10:57:00~2017/05/11 10:58:00缺失的RDD补上(如图2所示),尽管UI界面上显示读取的数据个数为“0”但实际上这部分数据在补的RDD中进行了处理,因此,不存在数据丢失。

Kafka重启时间段的数据处理机制如下。

Spark Streaming应用使用了state函数(例如:updateStateByKey),在Kafka重启成功后,Spark Streaming应用生成2017/05/11 10:58:00 batch任务时,会按照batch时间把2017/05/11 10:57:00~2017/05/11 10:58:00缺失的RDD补上(Kafka重启前Kafka上未读取完的数据,属于2017/05/11 10:57:00之前的batch),如图2所示。

图2 重启时间段缺失数据处理机制

support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_2054.html