pyspark Autoloader -文件通知和backfillInterval

vsmadaxz  于 2024-01-06  发布在  Spark
关注(0)|答案(1)|浏览(150)

文档说文件事件通知系统不能保证100%交付所有文件,它建议使用回填来保证所有文件最终得到处理。
但是不清楚如何使用它以及在代码中在哪里使用它。它应该是spark.readStream还是writeStream的一部分。
如果有更多关于它的文件,将不胜感激。

xzlaal3s

xzlaal3s1#

你可以这样使用cloudFiles.backfillInterval

df = spark.readStream.format("cloudFiles") \
.options(**autoloader_config) \
.options("cloudFiles.backfillInterval", "1 day") \
.load("/mnt/data_path/")

字符串
根据文档,它异步检查未处理的文件并处理它们。
通过设置间隔,可以控制系统检查未处理文件的频率。
输出量:


的数据
如果你看到检查站的位置。
%fs head dbfs:/checkpointLocation2/offsets/0



这里,基于lastBackfillStartTimeMslastBackfillFinishTimeMs,触发发生。
你还可以观察到偏移量内有5个文件,这意味着它检查旧文件处理5次。这是当我为1 day设置间隔时,它将每天触发一次。

相关问题