2016-08-09 82 views
1

Ich versuche Eckpunkte mit Punkteigenschaften an der Unterseite des von der Dokumentation Using search indexes Abschnitt basierend auf Abstand, ähnlich dem Beispiel zu filtern:DSE Graph räumliche Indizes - Suche mit km?

Eine Abfrage aller Sensoren, die die Anforderung des Seins innerhalb erfüllen finden das beschriebene Polygon Distance, das als ein Kreis mit einem Mittelpunkt bei (-110, 30) und einem Radius von 20 Einheiten mit der Methode Geo.inside() bezeichnet wird.

Die "Einheiten" für den Radius sind tatsächlich Grad. Ich möchte die Punkte in einem bestimmten Radius in Kilometern finden.

Dies wird anscheinend von Solr unterstützt, (siehe distanceUnitshere) und ist sogar der Standard in der Upstream-Distribution. Ich habe versucht, schema.xml zu ändern distanceUnits=kilometers in der Konfiguration für RPT zu setzen, aber dann warf der solr Kern die folgende Ausnahme auf reload:

org.apache.solr.common.SolrException: Must specify units="degrees" on field types with class SpatialRecursivePrefixTreeFieldType

Antwort

2

In DSE5 wir solr 4.10.3.2.1133 here die einzig gültige laufen Typ für Einheiten in dieser Version ist Grad, wie wir aus der code sehen können. Einheiten war der Vorgänger von distanceUnits. In der Zwischenzeit können Sie this hilfreich finden.