最終的にはコードで書くことになるんだけれど、開発中はどうしても動作確認的にRESTでアクセスしたりするのだけれど忘れやすいので軽くメモ
日本語対応
kuromojiを入れる
$ sudo bin/elasticsearch-plugin install analysis-kuromoji
xxxのマッピング追加
mappings.json
{
"aliases": {},
"mappings": {
"doc": {
"_source": { "enabled": true },
"properties": {
"name": { "type": "text" },
"age": { "type": "long" }
}
}
},
"settings": {}
}
PUT /xxx mappings.json
エイリアス定義
aliases.json
{
"actions": [
{ "add": {
"index": "xxx",
"alias": "xxx_admin",
"filter": {
"term": { "name": "admin" }
}
}}
]
}
POST /_aliases aliases.json
クエリ検索
GET /xxx/_search?q=name:test
DSL検索
BODYでJSON指定するのでクライアントによってはGETが使えない場合はPOSTでもいける
GET /xxx/_search {
// クエリ
"query": {
"match": {"name": "test"}
}
}
// 返却フィールド指定
"stored_fields": ["name", "age"]
// ページング
"from": "0", "size": "2"
}