问题标签 [elasticsearch-spark]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
33 浏览

apache-spark - 创建不存在的文档,跳过其他文档

当 Spark 作业构建的索引可能会从作业本身和其他来源接收相同文档 ID 的更新时,我正在并发环境中工作。假设来自其他来源的更新更新鲜,Spark 作业需要默默地忽略已经存在的文档,创建所有其他文档。这非常接近于使用 op_type: create 进行索引,但后者会引发未传递给我的错误处理程序的异常。以下代码块:

错误处理程序在几个变化中幸存下来,但目前是:

(我显然是首先在 getException().getCause() 中检查 org.elasticsearch.index.engine.VersionConflictEngineException ,但它没有用)

在日志中发出这个:

(我假设我的错误处理程序根本没有被调用)

并终止了我的整个 Spark 工作。达到我想要的结果的正确方法是什么?