Ich fange an zu denken, dass was ich tun möchte, ist nicht möglich, aber dachte, ich würde dies versuchen.Solr erhalten berechnete Entfernung bei der Verwendung von Dismax
Ich laufe Solr 3.5.
Ich habe derzeit zwei Arten von Such:
- Eine grundlegende räumliche Abfrage, die zwischen zwei Punkten in der Partitur Feld calulated Entfernung zurückgibt.
Beispielabfrage aus meinen Solr Protokollen:
?fl=*,score&sort=score+asc&start=0&q={!func}geodist()&sfield=coordinates&pt=59.2363514,18.092783&version=2
- A dismax Abfrage, die Textabfragen auf einer Reihe von Bereichen ermöglicht.
Beispielabfrage von Solr log:
mm=1&d=100.0&sfield=coordinates&qf=field1^5.0+fields2^3.0&defType=edismax&version=2&fl=*,score&start=1&q=monkeyhopper&pt=59.2363514,18.0927830000&fq={!geofilt}}
Ich möchte, dass meine erste Abfrage mit der dismax Abfrage ersetzen, aber ich brauche wirklich den berechneten Abstand in der Antwort zu bekommen. Ja, ich kann die Entfernung programmatisch berechnen, aber ich würde es vorziehen, dies nicht zu tun, da Solr es schon für mich getan hat.
Ich möchte immer noch in der Lage sein, meine Dismax-Abfrage "nach Relevanz", Entfernung oder einem anderen Feld zu sortieren, so dass die von meinen Boosts angegebene Punktzahl interessant sein könnte, aber ich brauche sie nicht zurückgegeben.
Danke, da Solr 4 jetzt stabil ist, werde ich das als Lösung akzeptieren :) – polythene