セクション7から続く
5.ドキュメントとインデックスを削除します
タイプを削除 | メソッドまたはパスパラメータ |
---|---|
ドキュメントを削除する | 顧客/外部/ 1を削除 |
インデックスを削除する | 顧客を削除 |
5.1、ドキュメントを削除する
deleteメソッドを使用して、http://192.168.56.10:9200/customer/external/1
リクエストで郵便配達員を送信します。結果を確認でき、削除されたドキュメントを確認できます。成功:
再送信要求404はnot_found
、結果のステータスを返す:
削除したばかりのドキュメントをクエリすると、"found": false
404ステータスの結果が返されます。
5.2、インデックスを削除します
deleteメソッドを使用して、http://192.168.56.10:9200/customer
リクエストで郵便配達員を送信します。結果を確認し、インデックスが正常に削除されたことを確認できます。
再送信要求404はindex_not_found_exception
、結果のステータスを返す:
削除したばかりのインデックスをクエリすると、no such index [customer]
404ステータスの結果が返されます。
問題は、
文档
合計を削除索引
できるので、削除できる类型
かということです。ESでは、インデックスの下に多くのタイプがありますが、ESはタイプを削除する方法を提供していません。インデックスが削除されると、すべてのタイプが削除されます。
6.バルクAPI
オペレーティング | パラメータ |
---|---|
POST 顧客/外部/ _bulk |
{“ index” {"_id":“ 1”} {“ name”:“ John Nash”} {“ index”: "_ id" 2 "} {“ name”:“ Jane Nash”} |
文法形式 | {アクション:{メタデータ}} \ n {リクエスト本文} \ n {アクション:{メタデータ}} \ n {リクエスト本文} \ n |
複雑なインスタンス POST / _bulk |
{"delete":{"_ index": "website"、 "_ type": "blog"、 "_ id": "123"}} {"create":{"_ index": "website"、 "_ type": " blog”、 "_ id":“ 123”}} {“ title”:“私の最初のブログ投稿”} {“ index”:{"_ index":“ website”、 "_ type":“ blog”}} {“ title ”:“ 2番目のブログ投稿”} {“ update”:{"_ index":“ website”、 "_ type":“ blog”、 "_ id":“ 123”}} {“ doc”:{“ title”: 「更新されたブログ投稿」}} |
バルクAPIを使用するには、kibanaで操作を実行する必要があります。postmanでエラーをリクエストすると、エラーが報告されます。
まず、リクエスト本文のデータがjson形式ではなくなりました。テキスト形式を使用し、次のエラーを報告します。 :
jsonに変更して再試行しましょう:
上記のjson形式が間違っているので、変更して再試行してください。postman
で一括操作を完了できないことがわかります。以前にインストールした、kibanaで操作する必要があります。
キバナのコンソールを開き、以下を選択しますDevTools
。
DevTools
データインターフェイスの後にクリックします。私たちはデータ操作を実行するためにここにいます:
DevTools
バッチ操作の実行に使用します。次の結果を参照してください。
複雑なバッチ操作を実行します。
POST /_bulk
{"delete":{"_index":"website","_type":"blog","_id":"123"}}
{"create":{"_index":"website","_type":"blog","_id":"123"}}
{"title":"My first blog post"}
{"index":{"_index":"website","_type":"blog"}}
{"title":"My second blog post"}
{"update":{"_index":"website","_type":"blog","_id":"123"}}
{"doc":{"title":"My updated blog post"}}
/_bulk
特定のインデックスを指定せずに真上で使用すると、ESでグローバルに実行されることを意味します。結果は次のとおりです。
バルクAPIは、すべてaction
(アクション)をこの順序で実行します。
何らかの理由で単一のアクションが失敗した場合、その後も残りのアクションを処理し続けます。
バルクAPIが返されると、各アクションのステータス(送信されたのと同じ順序)が提供されるため、指定されたアクションが失敗したかどうかを確認できます。
7.サンプルテストデータ
顧客の銀行口座情報の架空のJSONドキュメントのサンプルを用意しました。各ドキュメントには、次のスキーマ(モード)があります。
スキーマ |
---|
{ 「account_number」:1、「balance」:39225、「firstname」:「Amber」、「lastname」:「Duke」、「age」:32、「gender」:「M」、「address」:「880Holmes Lane」、「employer」:「Pyrami」、「email」:「[email protected]」、「city」:「Brogan」、「state」:「IL」}
|
上記のデータは、githubのES公式ドキュメントから傍受されています。次のアドレスにアクセスできます。
account.jsonインポートテストデータ
ESでテストデータを実行します
POST bank/account/_bulk
。
githubでデータをコピーするのが難しい場合は、ダウンロードしたデータを使用できます:accounts.json、またはgitee-accounts.jsonにアクセスします
作成後、これを使用http://192.168.56.10:9200/_cat/indices
してESの現在のインデックスを確認できます。バンクのあるインデックスには1000個のデータがあることがわかります。
参照: