在Spark结构化流中从中间读取现有的多级分区文件数据时出现问题

时间:2019-10-14 13:22:23

标签: apache-spark spark-structured-streaming

我正在使用现有的多层分区实木复合地板文件作为源来进行结构化火花流传输。使用时出现以下问题。

启动Spark Streaming作业以从特定分区读取数据,而不是从头开始。

假设我们观察到分区年= 2018 /月= 10 /小时= 10中存在数据质量问题。现在,假设我已经通过替换正确的文件来更正了该数据。

现在,问题是如何从今天开始而不是从头开始重新处理数据?因为在结构化流中,可以说我使用文件流作为源来加载所有文件,所以我想忽略一些文件。在这里,我还需要删除我的检查点目录,因为它直到现在都有偏移。

1 个答案:

答案 0 :(得分:0)

  

假设我们观察到分区年= 2018 /月= 10 /小时= 10中存在数据质量问题。那么如何从今天开始而不是从头开始重新处理数据?

我认为在Spark结构化流媒体中这是不可能的(希望我会误会)。

由于我们正在谈论流查询,因此您必须倒带“流”。实现它的唯一方法(我可以想到)是重新上传数据(不知道如何做)或简单地处理将“删除”分区year=2018/month=10/hour=10的先前版本然后上传的数据新的更正版本。

问题是如何通知镶木地板数据源,应该从结果中“剔除”已经处理过的任何东西(可能已经发送到外部资源以进行进一步处理)。