2011-07-26 53 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

相關問題