lucene – 位置感知搜索

我正在尝试使用空间示例进行位置感知搜索

http://www.ibm.com/developerworks/java/library/j-spatial/#indexing.approaches.

schema.xml具有geohash字段,但此字段不存在于用于索引的任何.osm文件(存在于数据文件夹中)中.我无法理解如何为其分配值,因此当我提供此查询时

http://localhost:8983/solr/select/?q=_val_:"recip (ghhsin(geohash(44.79, -93), geohash, 3963.205), 1, 1, 0)"^100

结果集已检索到geohash值.怎么回事?请帮我.

最佳答案 Solr wiki有一个关于如何使用solr 1.5完成空间搜索的非常好的页面.

总而言之,您的架构定义了’geohash’类型字段:

<fieldtype name="geohash" class="solr.GeoHashField"/>
<field name="destination" type="geohash" indexed="true" stored="true"/>

数据馈送器传入地理坐标坐标:

<field name="destination">cbj1pb56p4b</field> <!-- 45.17614 -93.87341 -->

您可能应该回到使用简单的纬度和经度坐标开始.有更好的文档.

点赞