【发布时间】:2014-01-24 21:24:49
【问题描述】:
在 GeoDistance 弹性搜索查询中,我使用“geo_point”创建了一个映射以映射到一个索引。当我以纬度为 x 、经度为 y 、半径为 z 进行查询时,我得到了一些行(例如 a、b、c)。当我再次查询具有与 x 相同的纬度、与 y 相同的经度和与 (z+100) 相同的半径的同一索引时,我得到不同的行(例如 d、e、f)
这怎么可能,如果 z 中出现了一些行,那么 z+100 中必须出现相同的行以及其他行(如果可用)?
我的映射是:
'{
"type_name": {
"properties": {
"pin": {
"properties": {
"location": {
"type": "geo_point"
}
}
}
}
}
}’
我使用 java API 的查询是
GeoDistanceFilterBuilder fil = FilterBuilders
.geoDistanceFilter("pin.location")
.point(lat, lng)
.distance(radius, DistanceUnit.KILOMETERS)
.optimizeBbox("memory")
.geoDistance(GeoDistance.ARC).cache(true);
当使用终端“curl”cmd 查询相同时,我得到了。
谁能帮帮我,我在这里做错了什么?
提前致谢。
【问题讨论】: