Facettierung mit Solr mit "string" -Feldern, "text" -Feldern und "copy" -Feldern

8

Ich habe ein Problem mit Solr und Facetting und frage mich, ob jemand von der Lösung weiß. Ich habe eine Arbeit dafür in der Minute, aber ich möchte wirklich herausfinden, warum meine Abfrage nicht funktioniert.

Hier ist mein Schema, vereinfacht um es einfacher zu machen:

%Vor%

Wie Sie sehen können, habe ich ein case-insensitives Feld namens recordtype und es wird in einen frecordtyp für die Groß- / Kleinschreibung geschrieben, der den Text nicht in Tokens behandelt. Dies liegt daran, dass solr den indizierten Wert und nicht den gespeicherten Wert in den Facettierergebnissen zurückgibt.

Wenn ich die folgende Abfrage versuche:

%Vor%

Ich bekomme keine Ergebnisse, aber die Fakten zeigen immer noch, dass es 1 Datensatz gibt.

%Vor%

Wenn ich jedoch die Fitler-Abfrage (nur Zeile 7) so ändere, dass sie auf dem "recordtype" von frecordtype steht:

%Vor%

Ich bekomme das 1 Ergebnis zurück, das ich will.

%Vor%

Also meine Frage ist, gibt es etwas, was ich tun muss, um die erste Version der Abfrage die Ergebnisse zurückzugeben, die ich will? Vielleicht hat es etwas mit URL-Codierung oder etwas zu tun? Irgendwelche Hinweise von irgendeinem Guru oder sonst wären sehr dankbar.

HINWEIS: Dies ist keine Facettierungsfrage, da die Facettierung tatsächlich funktioniert. Es handelt sich eher um eine Abfragefrage, da ich keine Abfrage für ein "Zeichenfolge" -Feld durchführen kann, obwohl die Groß- / Kleinschreibung und der Abstand genau der indexierten Version entsprechen.

BEARBEITEN: Für weitere Informationen zum Facettieren können Sie diese Blog-Posts auf der Seite ansehen:

Danke

Dave

    
CraftyFella 29.12.2009, 13:35
quelle

1 Antwort

10

Sie benötigen Anführungszeichen um die Werte

z. B.

frecordtype: "Großer Datensatz"

funktioniert

frecordtype: Großer Datensatz

Dies wird nach Large im frecordtype suchen, was nichts zurückbringt. Dann Record über das Standardfeld in solr.

    
CraftyFella 29.12.2009, 14:00
quelle

Tags und Links