Sense 経由で JSON ファイルをローカル ES インスタンスに読み込もうとしていますが、コードがわかりません。ES に Bulk API と Index API があることは知っていますが、コードをまとめることができないようです。Sense を使用してローカル ES インスタンスに JSON ファイルをアップロード/インデックス化するにはどうすればよいですか? ありがとうございました!
質問する
520 次
1 に答える
2
はい、ES には JSON ファイルを ES クラスターにアップロードする一括 API があります。Senseの場合はブラウザーのJavascriptであるため、APIが低レベル言語で公開されているとは思いません。高レベルのクライアントは Java または C# で利用でき、ES クラスターをより詳細に制御できます。Chrome ブラウザーがこのコマンドの実行をサポートするとは思わない。
一括 API を使用して JSON ファイルをエラスティックにアップロードするには。
1) このコマンドは、JSON ファイルから JSON ドキュメントをアップロードします。
curl -s -XPOST localhost:9200/_bulk --data-binary @path_to_file;
2) JSON ファイルは次のようにフォーマットする必要があります。
{ "index" : { "_index" : "test", "_type" : "type1", "_id" : "1" } }
{ "field1" : "value1" }
{ "index" : { "_index" : "test", "_type" : "type1", "_id" : "1" } }
{ "field1" : "value3" }
{ "index" : { "_index" : "test", "_type" : "type1", "_id" : "1" } }
{ "doc" : {"field2" : "value2"} }
ここで、JSON オブジェクトdoc
は各 JSON オブジェクト データを表し、対応するインデックス JSON オブジェクトは、ドキュメント ID、インデックスの入力、インデックス名などの特定の JSON ドキュメントのメタデータを表します。
また、私の以前の回答を参照することができます
于 2016-08-01T10:18:56.590 に答える