我正在使用Scala, 我尝试了Spark流媒体,但如果我的流媒体工作崩溃超过15分钟,这将导致数据丢失。
所以我只想知道如何在批处理作业中手动保留检查点?
输入数据的目录如下所示
数据 - > 20170818 - > (时间戳) - > (很多.json文件)
每5分钟上传一次数据。
谢谢!
答案 0 :(得分:0)
您可以在结构化流中使用readStream功能来监控目录并获取新文件。 Spark会自动为您处理检查点和跟踪。
-j
以下是有关该主题的其他材料的链接:https://jaceklaskowski.gitbooks.io/spark-structured-streaming/spark-sql-streaming-FileStreamSource.html
我个人使用格式(“text”),但你应该可以改为格式(“json”),这里有关于json格式的更多细节:https://databricks.com/blog/2017/02/23/working-complex-data-formats-structured-streaming-apache-spark-2-1.html