2011-07-26 46 views
0

我们将Solr 3.3与Solr.NET一起使用,我们在文档上放置了一个动态的“location_p”位置类型字段,现在我们需要执行空间搜索的功能。如何在Solr中进行多边形空间搜索?

我已经得到了半径搜索(距离给定点的距离)这样工作;

{!geofilt sfield=location_p pt=33.882518712472255,-84.05531775646972 d=1.7} 

现在我们需要做一个多边形squery得到的所有文件与“location_p”场“内部”一组给定的点(沿的ElasticSearch多边形搜索功能东西线)的能力。

这与BBox查询过滤器非常不同,因为Polygon的点不是对称的,基于用户的“点击”点更随机。

任何意见或建议,将不胜感激。

回答

2

据我所知,Solr目前没有实现多边形空间搜索。

有几个努力实现这个(SOLR-2155,SOLR-2268)。尝试应用其中一个补丁,测试它,为项目做出贡献。

还有Spatial Solr plugin,它实现了多边形搜索,但只与Solr 1.4兼容。

又见http://wiki.apache.org/incubator/SpatialProposal

+1

我们刚搬到ElasticSearch其使用Lucene作为其索引引擎以及支持GeoPolygons。 – CmdrTallen

+0

您也可以将Spatial Solr插件2.0与Solr 3.x一起使用。您可以从[here](http://www.searchworkings.org/ssp)下载的jar与Solr 3.x一起使用。您也可以轻松地从1.0升级到2.0版本,而无需重新编制索引。尽管Solr提供了空间支持,但我们仍在使用它。 – javanna

相关问题