ElasticSearch多索引多类型检索

前几节我们一直在介绍单个索引的检索情况,如果想在一个或多个特殊的索引并且在一个或者多个特殊的类型中进行搜索呢?我们可以通过在URL中指定特殊的索引和类型达到这种效果,如下所示:

  • /_search

    在所有的索引中搜索所有的类型

  • /gb/_search

    gb 索引中搜索所有的类型

  • /gb,us/_search

    gbus 索引中搜索所有的文档

  • /g*,u*/_search

    在任何以 g 或者 u 开头的索引中搜索所有的类型

  • /gb/user/_search

    gb 索引中搜索 user 类型

  • /gb,us/user,tweet/_search

    gbus 索引中搜索 usertweet 类型

  • /_all/user,tweet/_search

    在所有的索引中搜索 usertweet 类型

当在单一的索引下进行搜索的时候,Elasticsearch 转发请求到索引的每个分片中,可以是主分片也可以是副本分片,然后从每个分片中收集结果。多索引搜索恰好也是用相同的方式工作的—只是会涉及到更多的分片。

搜索一个索引有五个主分片和搜索五个索引各有一个分片准确来所说是等价的。

接下来,你将明白这种简单的方式如何灵活的根据需求的变化让扩容变得简单。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容