In che modo l'accento può essere più accurato con BF e query con Solr
Domanda
Lavoro con Solr, non riesco a risolvere il mio problema dell'accuratezza del risultato (Q vs BF tenendo conto degli accenti)
Ho un indice SOLR con 2 campi indicizzati (questo è semplificato):
town, population
Félines, 100
Ferrand, 10000
Quando ho chiesto: q=Fé&qf=town town_ascii&bf=population^2&defType=dismax
Vorrei questo ordine sui miei risultati: Félines > Ferrand
.
Quando ho chiesto: q=Fe&qf=town town_ascii&bf=population^2&defType=dismax
Vorrei questo ordine sui miei risultati: Ferrand > Félines
Il problema è che Ferrand batte ogni volta che féline perché la sua popolazione è più grande, come posso risolverlo? Non ho trovato come usare il punteggio della query e usarlo bf
per bilanciare la popolazione
Soluzione
Non hai postato il tuo schema.xml
Ma suppongo che tu stia usando il ASCIIFoldingFilterFactory
per il town_ascii
campo. Significa che se stai indicizzando la parola féline, i seguenti sono i termini indicizzati:
town: Félines
town_ascii: Felines
Pertanto, stai dicendo che una corrispondenza per il town
Il campo è più importante di una partita per town_ascii
. Dovresti cambiare il qf
parametro a qualcosa di simile qf=town^3 town_ascii
per dare più peso al town
campo. Quindi puoi regolare il peso a seconda di ciò che è il peso desiderato town
rispetto a population
.