前幾節我們一直在介紹單個索引的檢索情況,如果想在一個或多個特殊的索引並且在一個或者多個特殊的類型中進行搜索呢?我們可以通過在URL中指定特殊的索引和類型達到這種效果,如下所示:
-
/_search
在所有的索引中搜索所有的類型
-
/gb/_search
在
gb
索引中搜索所有的類型 -
/gb,us/_search
在
gb
和us
索引中搜索所有的文檔 -
/g*,u*/_search
在任何以
g
或者u
開頭的索引中搜索所有的類型 -
/gb/user/_search
在
gb
索引中搜索user
類型 -
/gb,us/user,tweet/_search
在
gb
和us
索引中搜索user
和tweet
類型 -
/_all/user,tweet/_search
在所有的索引中搜索
user
和tweet
類型
當在單一的索引下進行搜索的時候,Elasticsearch 轉發請求到索引的每個分片中,可以是主分片也可以是副本分片,然後從每個分片中收集結果。多索引搜索恰好也是用相同的方式工作的—只是會涉及到更多的分片。
搜索一個索引有五個主分片和搜索五個索引各有一個分片準確來所說是等價的。
接下來,你將明白這種簡單的方式如何靈活的根據需求的變化讓擴容變得簡單。