ElasticSearch轻量查询

ES提供了一种轻量级的检索方式来检索文档,和前几篇介绍的json形式查询不同,他是采用query_string形式检索。下面通过实例来讲解吧

GET /user/introduce/_search?q=name:lucy

user索引的introduce类型中查询name值为lucy的文档

GET /_search?q=mary

这个简单搜索返回包含 mary 的所有文档,无论是key或者value只要包含mary就会返回

更复杂的查询

下面的查询针对tweents类型,并使用以下的条件:

  • name 字段中包含 mary 或者 john
  • date 值大于 2014-09-10
  • _all 字段包含 aggregations 或者 geo
+name:(mary john) +date:>2014-09-10 +(aggregations geo)

这种 轻量 的查询字符串搜索效果还是挺让人惊喜的,很方便。但是,查询字符串搜索允许任何用户在索引的任意字段上执行可能较慢且重量级的查询,这可能会暴露隐私信息。所以就需要将query_string进行urlencode加密,但是这回使得阅读起来晦涩难懂。正因如此,我们经常在生产环境中更多地使用功能全面的 request body 查询API。

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

推荐阅读更多精彩内容

  • Elasticsearch轻量查询 Elasticsearch有两种查询方式: URI带有查询条件(轻量查询) 请...
    syhc006阅读 1,293评论 0 0
  • 转 # https://www.cnblogs.com/easypass/archive/2010/12/ 08/...
    吕品㗊阅读 9,831评论 0 44
  • 第3章 映射 映射是定义存储和索引的文档类型以及字段的过程。索引中的每一个文档都有一个类型,每种类型都有它自己的映...
    MR_ChanHwang阅读 2,321评论 0 1
  • 搜索机制 搜索的流程图如下: 1,文档写入ES的时候,ES中会存储两份数据。一份是文档的原始数据,即_source...
    吃火龙果吐芝麻阅读 2,371评论 0 2
  • 有一种爱,明明是深爱,却说不出来; 有一种爱,明明是想放弃,却无法释怀; 有一种爱,明明是煎熬,却躲不开; 有一种...
    e2d4cf36afa7阅读 197评论 0 5