这是查询,lat lon是传递给方法的双精度(十进制度坐标):
String query = "http://myserver:8983/solr/mycore/select?&q=*:*&fq={!geofilt}&sfield=pointGeom_rpt&pt=" + lat + "," + lon + "&d=" + distance + "&wt=json&indent=true&geo=true&rows=" + rows;
字段类型是RPT,我使用的是SOLR 4.10.0 我也尝试过geo = false,但它没有改变。我的目标是获得一个漂亮的圆形缓冲区(或合理的圆形)
我有一种感觉,我需要在索引时做一些不同的事情......但是找不到符合我情况的任何信息。 这是我的字段定义
<field name="pointGeom_rpt" type="location_rpt" indexed="true" stored="true" multiValued="false"/>
和类型定义
<fieldType name="location_rpt" class="solr.SpatialRecursivePrefixTreeFieldType"
geo="true" distErrPct="0.025" maxDistErr="0.000009" units="degrees" />
我的回报是这个
这个索引相当大(2.5亿条目),所以我还没有在类型定义上尝试geo = true然后重新编制索引....希望有人可以给我一些关于如何实现循环缓冲区的指示我和# 39;在大量重新索引之前第一次做对。