2017-10-05 8 views
0

私はElasticSearchのNEST再インデックス、編集名フィールド

"_index": "originindex", 
"_source": { 
"message": "", 
"environment": "", 
"nestedObj": { 
"field1": "field1", 
"field2": 1 }, 
"anotherfield": 1} 

のようなネストされたオブジェクトの何かでインデックスを持っていると私は、この私のすべてに新しい

"_index": "newindex", 
"_source": { 
"message": "", 
"nestedObj-field1":"field1", 
"nestedObj-field2": 1 , 
"anotherfield": 1} 

I'amのようなものにreindexitしたいです.Net V4.5でNestを使用すると、ReindexAPIが提案されますが、この目的のために使用する方法を知りません。 ありがとうございました!

答えて

0
POST _reindex 
{ 
"source": { 
    "index": "originindex" 
}, 
"dest": { 
    "index": "newindex" 
}, 
"script":{ 
    "source":"ctx._source.nestedObj-field1 = ctx._source.remove(\"field1\");ctx._source.nestedObj-field2 = ctx._source.remove(\"field2\");" 
} 

これを実行する前に、マッピングがdestインデックス上にあることを確認してください。

+0

実際に私はPOST _reindexを使ってそれを行う方法を知っていますが、Nestでコード化することが可能かどうかを調べています! Thakn you – Neal

+0

@Neal私はそれを得ることができると思うが、(モデルからマッピングを作成していると仮定して)使用する2つの関連する型を提供するために質問を編集できますか? – Miek

+0

特定のモデルではなく、辞書を挿入します。私の辞書にオブジェクトが含まれているのは初めてですが、なぜ私はドキュメント内にオブジェクトを入れ子にしていましたが、今は単純なデータ型を挿入するだけです。 – Neal

関連する問題