ドキュメントのインデックスとクエリ
edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.
ドキュメントのインデックスとクエリ
editcustomerインデックスにインデキシングしてみましょう。ドキュメントにインデックスを付けるためには、インデックス内のどのタイプにするかをElasticsearchに指定する必要があったことを思い出してください。
次のように、「external」タイプでIDが1のcustomerインデックスにシンプルなcustomerドキュメントをインデキシングします。
PUT /customer/external/1?pretty
{
"name": "John Doe"
}
次のような応答が返ります。
{
"_index" : "customer",
"_type" : "external",
"_id" : "1",
"_version" : 1,
"result" : "created",
"_shards" : {
"total" : 2,
"successful" : 1,
"failed" : 0
},
"created" : true
}
上記の応答から、新しいcustomerドキュメントがcustomerインデックスとexternalタイプ内に正常に作成されたことがわかります。さらに、ドキュメントの内部IDが、インデキシングの際に指定した1になっています。
Elasticsearchでは、ドキュメントをインデキシングする前に、インデックスを明示的に作成する必要はありません。前の例では、customerインデックスがあらかじめ存在していない場合、Elasticsearchがcustomerインデックスを自動的に作成します。
次のように、インデキシングをしたドキュメントを取得します。
GET /customer/external/1?pretty
次のような応答が返ります。
{
"_index" : "customer",
"_type" : "external",
"_id" : "1",
"_version" : 1,
"found" : true,
"_source" : { "name": "John Doe" }
}
要求されたIDが1のドキュメントが見つかったことを示すフィールド`found`と、直前のステップでインデキシングした完全なJSONドキュメントを返すもう1つのフィールド`_source`以外に特に変わりありません。