火花流如何重新运行失败的批处理作业

时间:2017-09-16 07:17:26

标签: apache-spark apache-kafka spark-streaming

我的问题是。 我使用来自kafka的spark-streaming读取数据和directSteam Api,进程rdd然后手动更新zookeeper偏移量。 来自kafka的数据将读取并插入到hive表中。 现在我遇到了一个问题。 有时hive-meta存储过程由于某种原因退出。(现在hive-Metoreore是单一的) 由于这个原因,某些批处理作业将失败,并且火花流作业不会退出只记录一些警告。 然后,当我重新启动hive Metastore进程时,程序继续运行,新的批处理作业将成功。 但我发现失败的批次从kafka读取数据丢失了。 我从工作细节中看到了元数据。 一个批处理作业从kafka读取20个偏移的图像。 batch1作业读取偏移量1 20, batch2作业读取偏移21 40 如果batch1作业失败,批处理2成功,则失败的作业数据将被错过。 我怎样才能做到这一点? 如何重新运行失败的批处理作业?

0 个答案:

没有答案