| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン |
| elasticsearch [2021/05/21 06:18] – nullpon | elasticsearch [2021/09/29 10:15] (現在) – [valueの最大値を取得] nullpon |
|---|
| curl 'http://localhost:9200/<インデックス名>/_doc/<_id>?pretty' | curl 'http://localhost:9200/<インデックス名>/_doc/<_id>?pretty' |
| |
| ===== 日本語形態素解析エンジンkuromoriを使う ===== | ==== valueの最大値を取得 ==== |
| | |
| | curl -XPOST -H 'Content-type: application/json' -d '{ "aggs": { "max_value": { "max": { "field": "value" } } } }' 'http://localhost:9200/<インデックス名>/_search?size=0' |
| | |
| | |
| | ==== フィールドの存在有無検索 ==== |
| | |
| | |
| | curl -XPOST -H 'Content-type: application/json' -d '{ "query": { "exists": { "field": "field_name" } } }' 'http://localhost:9200/<インデックス名>/_search?pretty&size=1' |
| | |
| | ==== 範囲検索 ==== |
| | |
| | curl -XPOST -H 'Content-type: application/json' -d '{ "query": { "range": { "date": { "gt": "2020-01-01T00:00:00+09:00" } } } }' 'http://localhost:9200/<インデックス名>/_search?pretty&size=1' |
| | |
| | |
| | ==== and条件検索 ==== |
| | |
| | <code> |
| | curl -XPOST -H 'Content-type: application/json' -d '{ |
| | "query": { |
| | "bool": { |
| | "must": [ |
| | { "range": { "date": { "gt": "2020-01-01T00:00:00+09:00" } } }, |
| | { "exists": { "field": "field_bame" } } |
| | ] |
| | } |
| | } |
| | }' 'http://localhost:9200/<インデックス名>/_search?pretty&size=1' |
| | </code> |
| | ===== 日本語形態素解析エンジンkuromojiを使う ===== |
| |
| 日本語のような分かち書きされない言語を全文検索するには、ngramや形態素解析での前処理が必要。 | 日本語のような分かち書きされない言語を全文検索するには、ngramや形態素解析での前処理が必要。 |
| } | } |
| </code> | </code> |
| | |
| | ===== エイリアス ===== |
| | |
| | インデックスに別名を付ける機能、インデックス名の代わりにエイリアス名を指定して検索ができる |
| | |
| | 一覧 |
| | |
| | <code> |
| | $ curl http://localhost:9200/_cat/aliases?v |
| | </code> |
| | |
| | |
| | エイリアス作成 |
| | |
| | <code> |
| | $ curl -X POST -H 'Content-Type: application/json' -d '{ "actions" : [ { "remove" : { "index" : "hoge_old", "alias" : "hoge" } },{ "add" : { "index" : "hoge_new", "alias" : "hoge" } } ] }' http://localhost:9200/_aliases |
| | </code> |
| | |
| | エイリアス削除 |
| | <code> |
| | curl -X POST -H 'Content-Type: application/json' -d '{ "actions" : [ { "remove" : { "index" : "hoge_old", "alias" : "hoge" } } } ] }' http://localhost:9200/_aliases |
| | </code> |
| | |
| | 別のインデックスに変更 |
| | <code> |
| | curl -X POST -H 'Content-Type: application/json' -d '{ "actions" : [ { "remove" : { "index" : "hoge_old", "alias" : "hoge" } },{ "add" : { "index" : "hoge_new", "alias" : "hoge" } } ] }' http://localhost:9200/_aliases |
| | </code> |
| | |
| |