ども、cloudpack の かっぱ(@inokara)です。
はじめに
取り急ぎのメモです。
検索系
インデックスのレコード数確認
curl -XGET 'http://${HOST}:9200/_cat/count/${INDEX_NAME}'
インデックス内から任意のフィールドの値のみを取得
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "fields": [ "f1","f2","f3"] }'
ちなみにネストされているレコードも以下のように取得出来る。
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "fields": [ "f1.n1","f2.n2","f3.n3"] }'
件数を指定して値を取得する
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "from": 0, "size": 5000, "fields": [ "f1","f2","f3"] }'
指定したフィールド内を検索して該当するレコードのみを取得する
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "fields": [ "f1","f2","f3"], "query" : { "simple_query_string" : { "fields": ["f1"], "query": "strings" } } }'
フィールド f1
内を strings
で検索してマッチしたレコードのうち f1
と f2
と f3
のみを出力する。
f1 フィールドに “kappa is aho” を含むレコードを取得したい
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "fields": [ "f1","f2","f3"], "query" : { "simple_query_string" : { "fields": ["f1"], "query": "kappa+is+aho" } } }'
ちなみに…
curl -XGET 'http://${HOST}:9200/${INDEX_NAME}/_search?pretty' -d ' { "fields": [ "f1","f2","f3"], "query" : { "simple_query_string" : { "fields": ["f1"], "query": "kappa is aho" } } }'
で検索すると…kappa was ikemen
も fukuyama masaharu is cool
も含まれてしまう(はず)。
引続き…
めもります。
元記事はこちらです。
「Elasticsearch 各クエリのメモ」