2017-02-21 9 views
0

私は、Elasticsearchに多くのデータを書き込むためにSparkを使用します。しかし、それらのうちのいくつか(たいていの場合)は、このコンテキストで同じIDを持つ重複したドキュメントです。 ESにデータを書き込むには時間がかかるので、ドキュメントのIDがすでにESに存在する場合、インデックス作成をスキップする方法を知りたいですか?このようなドキュメントが存在する場合、インデックス作成ドキュメントをスキップする方法はありますか?

のような:

if doc.id in ES: 
    continue 
else 
    doc.index(ES) 

答えて

0

私はスパーク作品とどのように接続を知らないが、ESでは、あなたはoperation typeを設定することができます。

PUT twitter/tweet/1?op_type=create 
{ 
    "user" : "kimchy", 
    "post_date" : "2009-11-15T14:12:12", 
    "message" : "trying out Elasticsearch" 
} 

しかし、唯一の問題

When create is used, the index operation will fail if a document by that id already exists in the index. 
+1

「唯一の問題は、」私にとって本当に大きな問題であり、どうもありがとうございました。例外を抑制する方法を知っていますか? – Mazz

+0

@Mazz私は、ESが特定のjson本体を返すだけなので、クライアント上のエラーをどのように抑制するかを見ていきます。 –

関連する問題