ok, soy totalmente nuevo en SOLR y Lucene, pero tengo a Solr corriendo de la caja bajo Tomcat 6.x y acabo de repasar algunas de las entradas básicas de Wiki.¿Cuál es el mejor enfoque para usar SOLR con proyectos web?
Tengo algunas preguntas, y también necesito algunas sugerencias.
Solr puede indexar datos en archivos (XML, CSV) y también puede indexar bases de datos. ¿También puede apuntarlo a un URI/dominio y hacer que indexe un sitio web de la manera en que google lo haría?
Si tengo un sitio web con datos de "Páginas", "Nombre de página", "Contenido de página", etc. y "Datos de productos", "Nombre de producto", "SKU", etc., necesito dos ¿Archivos Schema.xml? y si es así, ¿eso significa dos instancias diferentes de Solr?
Por último, si usted tiene un proyecto con una gran base de datos relacional y normalizada, ¿cuál diría que es el mejor enfoque de las 3 opciones siguientes ?:
tener un servicio que se ejecuta en el middleware el fondo, que extrae la base de datos y crea manualmente los archivos XML relevantes para luego enviarlos a SOLR
Haga que SOLR indexe la base de datos directamente. En este caso, ¿sería mejor simplemente señalar SOLR a las vistas, que abstraería todas las relaciones de la tabla?
¿Alguna otra opción que desconozco?
Contexto: Nos estamos quedando en un entorno Windows 2003, .NET 3.5, SQL Server 2005/2008
saludos!
+1 Gracias Mauricio, esto es realmente útil. Me pregunto si podrías ampliar un poco en un punto, posiblemente dos. En términos de datos nuevos y obsoletos, ¿qué fuente de datos utilizo no importa? solo la frecuencia con la que confirmo los cambios ... suponiendo que todas las confirmaciones (agregar/actualizar/eliminar) deben hacerse manualmente ¿no? En cuanto a SolrNet, ¿no necesito preocuparme por la comunicación manualmente con SOLR? gracias de nuevo – andy
sobre la frescura de los datos: depende del * usuario * (consumidor) de los datos. Si el consumidor necesita * siempre * ver datos actualizados que descartarían los métodos de indexación fuera de línea/en segundo plano y tendría que ir con algo más reactivo, como desencadenantes o intercepción ORM. Por supuesto, al indexar páginas web no obtiene ningún "activador", su única opción es un rastreador. Sí, SolrNet maneja .Net <-> comunicación Solr. –
@mauricio: gracias hombre. Usamos un CMS personalizado para construir nuestro sitio. Entonces, ¿sería una decisión inteligente pensar si solo se comprometen las actualizaciones/eliminaciones en Solr a través de XML cada vez que las páginas/productos se editan en el CMS? Además, no usamos NHybernate, así que supongo que no hay beneficios para SolrNet. gracias de nuevo, esto es realmente útil – andy