2011-09-28 12 views
5

Estoy intentando usar Solr para faceted-seaarch en un sitio web.¿Cómo recupero todos los campos de facetas aplicables para una búsqueda de Solr?

Cuando un usuario desata una consulta de búsqueda, consulto a Solr y recupero los resultados de búsqueda que luego pueden mostrarse.

Mi pregunta es: ¿cómo puedo averiguar qué campos y términos de faceta son aplicables a los resultados de búsqueda?

Para ser claros: las diferentes categorías de productos tienen campos de facetas diferentes y quiero encontrar una manera de recuperar los campos de facetas más relevantes para los resultados de búsqueda que se han devuelto. No quiero tener que especificar los campos; me gustaría que Solr identifique los más relevantes para mí.

¡Gracias de antemano!

+0

Ha pasado mucho tiempo desde que hizo esta consulta. ¿Encontró alguna buena manera de apoyar esto, en comparación con las respuestas a continuación? Estoy enfrentando el mismo problema, así que pensé si puedes compartir tus hallazgos. – Ethan

Respuesta

1

Recomendaría consultar todo el Simple Facet Parameters en Solr Wiki, especialmente los ejemplos en la parte inferior, ya que le mostrarán todas las formas posibles en que puede configurar los resultados del diseño de sus consultas.

Si entiendo su pregunta correctamente ... por defecto, la faceta solo traerá facetas/recuentos basados ​​en los documentos en el conjunto de resultados. Sin embargo, para hacer que estos sean más relevantes para la búsqueda, debe establecer el facet.mincount en un valor diferente de 0. eg. &facet.mincount=1. Pero, nuevamente, consulte la documentación sobre cómo funciona esto y cómo puede aplicarse a su escenario.

+0

Gracias Paige - Leí ese enlace antes. Mi problema es que incluso cuando estableces facet.mincount, aún tienes que especificar uno o más campos de facetas: Eg select? Q = ipod & rows = 0 & facet = true & facet.limit = -1 & facet.field = cat & facet.mincount = 1 & facet.field = inStock (donde estaría especificando los campos "cat" y "inStock") Me gustaría saber cómo puedo hacer una consulta, pero * no * especifique los campos. Me gustaría que todos los campos con conteos positivos sean devueltos. –

+2

No puede obtener facetas sin especificar campos para facetar. Lo siento, así es como funciona la aplicación. Puede activar faceting para todos los campos en los que * podría * interesarse y luego realizar un preprocesamiento de los resultados para mostrar solo los que sean relevantes en función de los resultados devueltos ... –

+0

ah, bien - gracias de nuevo . Es una pena: una vez que realizo una búsqueda, no puedo estar seguro de qué campos de faceta se aplicarán a los resultados de búsqueda devueltos. En toda mi gama de productos hay muchos productos diversos y, como resultado, muchos campos de facetas ... Parece que tendré que gestionar una jerarquía de campos de facetas por separado para que sepa en qué campos trabajar. Parece que estaban considerando una sintaxis de comodín, pero luego pensaron que no era una idea. Https://issues.apache.org/jira/browse/SOLR-247 –

1

Estoy teniendo el mismo problema.

Lo que finalmente hice fue consultar Solr para obtener los 50 resultados principales para una consulta determinada y luego recopilar los nombres de las propiedades establecidas en esos productos. Luego hago otra consulta con los campos de faceta configurados para las propiedades del producto que encontré por primera vez.

Cuestiones relacionadas