10. Search 接口
大多数搜索API都是多索引、多类型,但 Explain 接口端点除外。
路由
当执行搜时,它将广播给所有的索引(在复制品之间循环)。哪些碎片可以被搜索是由提供的routing
参数控制的,比如,下面的路由值就是直接使用用户的名字:
POST /search/tweet?routing=kimchy
{
"user" : "kimchy",
"postDate" : "2009-11-15T14:12:12",
"message" : "trying out Elasticsearch"
}
搜索时,如果想在tweet类型上搜索特定的用户,可以将该用户指定为路由,从而搜索仅命中相关的分片:
POST /search/_search?routing=kimchy
{
"query": {
"bool" : {
"must" : {
"query_string" : {
"query" : "some query string here"
}
},
"filter" : {
"term"