我们在Solr.NET中使用Solr 3.3,我们在文档中放置了一个动态“location_p”位置类型字段,现在我们需要能够进行空间搜索。
我得到半径搜索(距离给定点的距离),就像这样;
{!geofilt sfield=location_p pt=33.882518712472255,-84.05531775646972 d=1.7}
现在我们需要能够执行一个Polygon squery来获取所有文档,其中“location_p”字段'在'内部'给定一组点内(类似于ElasticSearch的多边形搜索功能)。< / p>
这与BBox查询过滤器完全不同,因为多边形的点不对称,基于用户“点击”点更随机。
任何想法或建议都将受到赞赏。
答案 0 :(得分:2)
据我所知,Solr目前没有实现多边形空间搜索。
要实现这一目标需要付出一些努力(SOLR-2155,SOLR-2268)。尝试应用其中一个补丁,测试它,为项目做出贡献。
还有Spatial Solr plugin,它实现了多边形搜索,但只与Solr 1.4兼容。