当spark找不到_spark_metadata文件夹中的文件时,我在生产中遇到了检查点问题
18/05/04 16:59:55 INFO FileStreamSinkLog: Set the compact interval to 10 [defaultCompactInterval: 10]
18/05/04 16:59:55 INFO DelegatingS3FileSystem: Getting file status for 's3u://data-bucket-prod/data/internal/_spark_metadata/19.compact'
18/05/04 16:59:55 ERROR FileFormatWriter: Aborting job null.
java.lang.IllegalStateException: s3u://data-bucket-prod/data/internal/_spark_metadata/19.compact doesn't exist when compacting batch 29 (compactInterval: 10)已经有了question asked,但目前还没有解决方案。
在checkpointing文件夹中,我看到batch 29还没有提交,所以我可以从checkpointing的sources,state和/或offsets中删除一些东西,以防止spark因为缺少_spark_metadata/19.compact文件而失败吗?
发布于 2018-06-14 06:32:12
问题是您正在将检查点存储到S3。S3中的检查点并不是100%可靠的。要了解S3不可靠的确切原因,请阅读this article。
解决方案1:使用HDFS存储检查点
解决方案2:如果您想使用Amazon Web Services,请使用EFS。The above article详细提供了设置EFS的所有步骤。
解决方案3:使用NFS
https://stackoverflow.com/questions/50180725
复制相似问题