2017-01-27 4 views
1

Ist es möglich, Dismax-Abfrage ohne Rechenergebnis ausführen? Ich brauche das nur, um einige Tests zu machen - was ist der Einfluss von Score-Computing in der Solr-Suchleistung.Solr Abfrage ohne Berechnung Punktzahl

Für jetzt habe ich Dismax Abfrage wie folgt: Gibt es einige einfache Möglichkeit zu erreichen, was ich will? Vielleicht sollte ich Filterabfrage verwenden, aber wie kann ich Operatoren angeben und Abfragephase vom Benutzer verwenden, wie es ohne Verarbeitung in fq ist?

Antwort

0

Sie können introduce different query parser through localparams, so etwas wie:

q=*:*&fq={!type=dismax qf='${fields}'}${query} 

.. sollte funktionieren. Wenn es sich nicht um lokale Variablen handelt, die Sie selbst erweitern, kann die Syntax geringfügig abweichen.

+0

Ich bin mir nicht sicher, wie das mir helfen soll. Meine Abfrage funktioniert gut, alles, was ich brauche, ist die gleiche Abfrage, aber ohne Score Computing - einfach einige erste/zufällige Ergebnisse zurückgeben, die meiner Anfrage entsprechen. Diese Variablen in meiner Abfrage sind JMeter-Variablen. – jgr

+0

Eine 'fq'-Klausel würde keinen Einfluss auf die Punktezahl haben - und die Hauptabfrage würde alle Dokumente zusammenbringen und keinen Punktestand (' *: * ') liefern, was dazu führen würde, dass die Dokumente standardmäßig in Lucene-Indexreihenfolge zurückgegeben werden. Wenn Sie die Ergebnisse in zufälliger Reihenfolge ausgeben möchten, können Sie [nach einem zufälligen Feld sortieren] (http://stackoverflow.com/questions/25234102/solr-return-random-results-sort-by-random). Sie können auch nach einer konstanten Bewertungsfunktionsabfrage als Hack-around-Bewertung sortieren (d. H. "Abs (0)" oder etwas Ähnliches). – MatsLindh

+0

@jgr hast du einen Leistungsschub bekommen, indem du das Scoring deaktiviert hast? – jagguli