Google AppEngine Search API距离搜索,准确性不正确

时间:2014-01-31 12:33:52

标签: google-app-engine

使用Google AppEngine Search API并进行距离搜索时,我有一个奇怪的准确性问题。

运行此查询时:

distance(pos, geopoint(55.7, 13.4)) < 2000

我收到了这两份文件:

ScoredDocument(documentId=5649050225344512_DistanceSearch_1391166416282, fields=Field(name=pos, value=GeoPoint(latitude=55.709999, longitude=13.410000), type=GEO_POINT)], rank=97326421, scores=[-1697.2195690708354]) 

ScoredDocument(documentId=6270652252160000_DistanceSearch_1391166416282, fields= Field(name=pos, value=GeoPoint(latitude=55.715000, longitude=13.419000), type=GEO_POINT)], rank=97326418, scores=[0.0])

如果我们查看从55.7,13.4到文档位置的实际距离,我将它们测量为

55.709999,13.41000至55.7,13.4 = 1276米

55.715000,13.419000至55.7,13.3 = 2049米

在我的查询中,我说过&lt; 2000米,只期待一个答案(1276米),但我得到了两个。

奇怪的是,如果我将距离搜索降低到717米,我仍然会得到两者。如果我然后降低到716米或更低,我得不到答案。

我做错了什么?我在生产应用引擎实例v1.8.8上运行它,而不是devserver。

0 个答案:

没有答案