我有一个使用 foreachBatch 并将检查点保存在数据湖中的流,但是如果我取消该流,则恰好最后一次写入未完全提交。然后下次我启动流时我会得到重复,因为它从最后提交的 batchId 开始。
我使用 delta 但我不想使用合并,因为我有很多数据而且它似乎没有我想要的性能(即使使用分区)。
如何使用 batchId 来处理重复项?还是有其他方法?
我有一个使用 foreachBatch 并将检查点保存在数据湖中的流,但是如果我取消该流,则恰好最后一次写入未完全提交。然后下次我启动流时我会得到重复,因为它从最后提交的 batchId 开始。
我使用 delta 但我不想使用合并,因为我有很多数据而且它似乎没有我想要的性能(即使使用分区)。
如何使用 batchId 来处理重复项?还是有其他方法?