私はelasticsearchを初めて使用し、巨大なデータ(mysqlテーブルに16kを超える巨大な行)があります。このデータをelasticsearchにプッシュする必要があり、インデックスに登録する際に問題が発生しています。データのインデックス作成を高速化する方法はありますか?巨大なデータを処理する方法は?
質問する
10900 次
3 に答える
3
Bulk APIの拡張
に POST リクエストを送信します。/_bulk
ペイロードは次の形式に従い\n
ます。 は改行文字です。
action_and_meta_data\n
optional_source\n
action_and_meta_data\n
optional_source\n
...
あなたのjsonがきれいに印刷されていないことを確認してください
利用可能なアクションは、、、index
およびです。create
update
delete
一括読み込みの例
質問に答えるには、データをインデックスに一括読み込みするだけの場合。
{ "create" : { "_index" : "test", "_type" : "type1", "_id" : "3" } }
{ "field1" : "value3" }
最初の行には、アクションとメタデータが含まれています。この場合、 を呼び出してcreate
います。タイプのドキュメントを、 (elasticsearch が自動生成する代わりに) のID を手動で割り当てたtype1
名前のインデックスに挿入します。test
3
2 行目には、マッピングのすべてのフィールドが含まれています。この例ではfield1
、値がvalue3
.
インデックスに挿入したい数だけこれらを連結するだけです。
于 2014-05-29T20:25:06.327 に答える
1
于 2012-05-24T08:44:12.503 に答える