2009-08-27 12 views
8

Se me ha sugerido que use Field.Set OmitNorms (true); al crear los documentos para Lucenesearch para ordenar el resultado de acuerdo con el número de visitas, pero no estoy seguro de lo que hace y es seguro.¿Cuál es el uso de Field.Set OmitNorms (true); en lucene

ordena el resultado de acuerdo con el número de visitas significa que el documento en el que se encuentra el texto de búsqueda número máximo de veces debe aparecer en la parte superior seguido de las que tienen menos coincidencia para el texto de búsqueda.

Sé que es tonto, pero quiero saber antes de implementar esto por favor ayuda.

Respuesta

10

Consulte this article for a good paragraph descripción de lo que omite las normas en términos de optimización. Básicamente es como tener un índice mini lucene para los términos dentro de un campo, por lo que realmente solo es útil para los campos que tienen mucho texto dentro de ellos.

+4

El documento se ha movido pero se puede encontrar en el archivo de Internet en http://web.archive.org/web/20101111232408/http://www.lucidimagination.com/Community/Hear-from-the-Experts/Articles/Scaling-Lucene-and-Solr –

5

De forma predeterminada, un campo se indexa con su norm, producto del impulso del documento, el impulso del campo y el factor de normalización de la longitud del campo (consulte Similarity scoring). Esto agrega un byte al almacenamiento y al consumo de memoria de cada campo, que se puede omitir para los campos o tipos de campo seleccionados usando omitNorms.

Los aumentos se especifican durante la indexación, mientras que lengthNorm se calcula de modo que si dos documentos coinciden con un término de consulta f veces, el documento más largo obtendrá una puntuación más baja.

Si desea que sus documentos se califiquen en función del número exacto de términos coincidentes, en lugar del número de términos en proporción a la longitud del documento, use omitNorms (y obtenga los beneficios de consumo de memoria gratis).

Cuestiones relacionadas