《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.3.Search通过Kibana(18) https://developer.aliyun.com/article/1231051
Wildcard 查询
返回包含与通配符模式匹配的术语的文档:
GET /my_goods/_search { "query": { "wildcard": { "shopCode": { "value": "sc*1", "boost": 1.0, "rewrite": "constant_score" } } } }
Geo 查询
Elasticsearch 支持两种 geo 数据:geo_point 经纬度 和 geo_shape 点、线、圆、多边形等复杂图形
Geo_point
用于查找距离另一个坐标范围内的所有坐标点,或者计算亮点之间的距离用于排序、打分、聚合等操作。
Geo-shapes
常用于过滤,比如判断两个地理形状是否有重叠或者某个地形是否包含了其他的地理形状
查询分为 4 种类型:
l geo_bounding_box:查找具有落入指定矩形的地理位置的坐标点
l geo_distance:查找地理点在中心点指定距离内的坐标点
l geo_polygon:查找具有指定多边形内的地理点的坐标点
l geo_shape:查找具有以下内容的坐标点:
○ geo-shapes 与指定的几何形状相交,包含于其中或不与指定的几何形状相交的坐标点
○ geo-points 与指定的地理形状相交的坐标点
过滤器将所有文档载入内存,然后每个过滤器执行计算,判断坐标点是否落在指定区域。可见坐标过滤器的代价较昂贵。
最优的做法是先用简单的过滤器尽可能多的过滤掉文档,然后再交给地理坐标过滤器来处理数据。
《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.3.Search通过Kibana(20) https://developer.aliyun.com/article/1231048