我遇到的问题与Spark structured steaming from kafka - last message processed again after resume from checkpoint中描述的情况相同。当我在失败后重新启动我的火花作业时,再次处理最后一条消息。其中一个答案表明接收器必须是幂等的。我不确定我是否理解这一点。
现在我写入ES接收器,3种方法实现如下:
我想知道如何使ES接收器具有幂等性,以及如何在open方法中使用2参数partitionId和version,如果数据已被处理,则返回false。
提前致谢。