わたしの Elasticsearch query cheetsheet

Posted: August 04, 2017


DML

Search: 検索

/_search

全indexを対象に検索

/,,<idx…>/_search

複数のindexを対象に検索

curl localhost:9200/<idx1>,<idx2>,<idx...>/_search

# => SELECT * FROM <idx1>
# => UNION SELECT * FROM <idx2>
# => UNION SELECT * FROM <idx...>

///_search

単一のインデックス・タイプを元に検索

///<_id>

単一のインデックス・タイプから単一のドキュメントを取得

curl localhost:9200/<idx>/<type>/<_id>

# => SELECT * FROM <index> WHERE _id = <id>

Update: 更新

PUT ///<_id>/_update

  • 完全更新

POST ///<_id>/_update

  • 部分更新
  • '{"doc": {/* 更新したい属性 */} }'

DDL

Alias エイリアス

/_aliases エイリアス作成

curl "http://localhost:9200/_aliases" -XPOST  -d '{
    "actions" : [{
        "add" : {
            "alias": "prodcuts_food",
            "index": "all_products"
        }
    }]
}'

Template テンプレート

/_template テンプレート

curl "http://localhost:9200/_aliases" -XPOST  -d '{
    "actions" : [{
        "add" : {
            "alias": "prodcuts_food",
            "index": "all_products"
        }
    }]
}'