Получить расстояние от геохэш-поля в Solr 3,6
Можно ли получить расстояние, возвращаемое из фильтра geodist(), для поля геохэш, которое имеет несколько значений?
Геосорт и фильтр геодистов работают нормально, но я пытаюсь определить расстояние между точкой запроса и местоположением, которое было возвращено в результате.
Я пробовал http://wiki.apache.org/solr/SpatialSearch Второй метод: //localhost:8983/solr/select?indent=true&fl=name,store&sfield=store&pt=45.15,-93.85&sort= оценка%20asc& д ={!} FUNC geodist()
Но он возвращает странные результаты, протестированный в 2 местах, он возвращает балл 9979.032, где в действительности ~33 000 км между двумя точками?
Какая единица измерения используется для возврата расстояния в поле оценки? Я предполагал км, но это не имеет смысла, или результат является поддельным, я не знаю
Любая помощь будет оценена, спасибо
1 ответ
Solr 3 не поддерживает многозначные геопространственные поля. И, в частности, вы должны игнорировать тип поля "GeoHash"; кстати, он был удален из примера схемы в Solr 4. Чтобы получить многозначные геопространственные поля (включая сортировку) в Solr 3, вам нужно использовать плагин SOLR-2155, который я разработал. Solr 4 имеет пространственное поле, основанное на этой технологии.