ElasticSearch(十二)-结构化搜索

结构化不关心文档的相关性或分数,只是简单的包含或排除。
1.查找准确值
  1)过滤器查找匹配文档
2)创建字节集[1,0,0,0] 
3)字节集存在内存中,我们能跳过12,能提升性能。
 
2.组合过滤
 Mustmust_notshould
 
3.查询多个准确值
  Terms格式如:  
{
     "terms" : {
         "price" : [20, 30]
      }
}
 
4.包含,而不是相等
  理解term是包含而不是相等。
  
5.范围
  Range范围
  • gt: > 大于
  • lt: < 小于
  • gte: >= 大于或等于
  • lte: <= 小于或等于

范围实例  

 GET /my_store/products/_search
        {
            "query" : {
                "filtered" : {
                    "filter" : {
                        "range" : {
                            "price" : {
                                "gte" : 20,
                                "lt"  : 40
                            }
                        }
                    }
                }
            }
        }

最近一个小时的实例:

"range": {
    "timestamp" : {
        "gt" : "now-1h"
    }
}
"range": {
    "timestamp" : {
        "gt" : "2014-01-0100:00:00",
        "lt" : "2014-01-0100:00:00||+1M" <1>
    }
}

6.处理null
  Exists过滤器和missing过滤器
  区分一个是否有值,映射数据时,可以设置一个null_value来处理明确的null值。
 
7.缓存??
  每个过滤器都是被独立计算和缓存的。

8.过滤顺序
  过滤器的顺序对性能有很大影响。

本文出处:http://blog.csdn.net/shan1369678/article/details/51455540
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值