サーチ…


前書き

Kibanaはelasticsearch用のフロントエンドデータ視覚化ツールです。キバナをインストールするには、キバナのドキュメントを参照してください。 localhostでkibanaを実行するには、 https:// localhost:5601に行き、kibana consoleに移動します。

木場を使ってあなたのクラスターを探索する

コマンドの構文は次のようになります。

<REST Verb> /<Index>/<Type>/<ID>

次のコマンドを実行し、Kibana Consoleを介してelasticsearchクラスタを探索します。

  • クラスタの正常性を確認するには
GET /_cat/health?v
  • すべてのインデックスを一覧表示する
GET /_cat/indices?v
  • 車名で索引を作成する場合
 PUT /car?pretty
  • id 1を使用して、外部型の名前carで文書を索引付けする場合
PUT /car/external/1?pretty
{
  "name": "Tata Nexon"
}

上記のクエリの応答は次のようになります。

{
  "_index": "car",
  "_type": "external",
  "_id": "1",
  "_version": 1,
  "result": "created",
  "_shards": {
    "total": 2,
    "successful": 1,
    "failed": 0
  },
  "created": true
}
  • 上記のドキュメントを取得するには、次のコマンドを使用します。
GET /car/external/1?pretty
  • インデックスを削除する場合
DELETE /car?pretty

elasticsearchデータを変更する

Elasticsearchは、ほぼリアルタイムでデータ操作とデータ検索機能を提供します。この例では、更新、削除、およびバッチ処理操作があります。

  • 同じ文書を更新しています。すでに/ car / external / 1に文書を索引付けしているとします。その後、データを索引付けするコマンドを実行すると、前の文書が置き換えられます。
PUT /car/external/1?pretty
{
  "name": "Tata Nexa"
}

"Tata Nexon"という名前のid 1の以前の車のドキュメントは新しい名前 "Tata Nexa"で更新されます

  • 明示的なIDでデータを索引付けする
POST /car/external?pretty
{
  "name": "Jane Doe"
}

IDなしで文書を索引付けするために、 PUT動詞の代わりにPOST動詞を使用します。 IDを指定しないと、elasticsearchはランダムなIDを生成し、それを使ってドキュメントのインデックスを作成します。

  • Idで部分的に前の文書を更新する。
POST /car/external/1/_update?pretty
{
  "doc": { "name": "Tata Nex" }
}
  • 追加情報でドキュメントを更新する
POST /car/external/1/_update?pretty
{
  "doc": { "name": "Tata Nexon", "price": 1000000 }
}
  • 簡単なスクリプトを使用してドキュメントを更新します。
POST /car/external/1/_update?pretty
{
  "script" : "ctx._source.price += 50000"
}

ctx._sourceは、更新しようとしている現在のソース文書を参照します。上記のスクリプトは、同時に更新されるスクリプトを1つだけ提供します。

  • ドキュメントの削除
DELETE /car/external/1?pretty

注:クエリAPIによる削除を使用してすべてのドキュメントを削除するよりも、インデックス全体を削除するほうが効率的です

バッチ処理

elasticsearchは、ドキュメントの更新と削除のインデックス作成とは別に、 _bulk APIを使用して上記の操作をバッチで実行する機能も提供します。

  • _bulk APIを使用して複数のドキュメントを更新する
POST /car/external/_bulk?pretty
{"index":{"_id":"1"}}
{"name": "Tata Nexon" }
{"index":{"_id":"2"}}
{"name": "Tata Nano" }
  • _bulk APIを使用してドキュメントを更新および削除する
POST /car/external/_bulk?pretty
{"update":{"_id":"1"}}
{"doc": { "name": "Tata Nano" } }
{"delete":{"_id":"2"}}

操作が失敗すると、バルクAPIは停止しません。すべての操作を実行し、最終的にすべての操作のレポートを返します。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow