Aquí va un pequeño listado de algunos de los recursos que hemos utilizado para documentarnos en las búsquedas con Solr. Algunos artículos pueden no estar actualizados y probablemente existan muchos más recursos en la red, si ves alguna equivocación o tienes alguna mejora que proponer, háznoslo saber para que podamos actualizar este post.
Resumen del estado de la búsqueda en Drupal y sus tendencias
En Drupal existen varias posibilidades para hacer búsquedas. Por defecto Drupal tiene el módulo search que provee funcionalidad básica de búsqueda, pero hoy en día se utilizan otros "motores" que permiten personalizar casi todo lo que queremos buscar y encontrar. En este post nos vamos a centrar en el uso de Solr como motor de búsqueda y los módulos de Drupal que extienden su funcionalidad. En Drupal, hay dos grandes "tendencias" que hacen posible el uso de Solr como motor de búsqueda:
- Apache solr: Desarrollado en gran medida por Nick Veenhof, y apoyado por Acquia en gran medida.
- Search api + Search API Solr Search: Desarrollado en gran medida por Drunken monkey (Thomas Seidl).
De estas dos grandes tendencias, se ha llegado a la conclusión (al menos en el momento en el que está escrito este post) de que hay que unir esfuerzos para Drupal 8, y elegir uno de los dos grandes módulos. En principio Search API es el candidato a desarrollar, como podemos ver en estos dos posts, Battleplan for Search & Solr in Drupal 8 y Search API - Upgrade to Drupal 8. En un tweet hace unos meses, Nick Veenhof mencionó el uso de Elasticsearch... algo que habrá que tener en cuenta, al menos, para ver cómo funciona. Por otro lado, el seguimiento de cómo van las cosas para el desarrollo de Search API en Drupal 8 lo podemos ver en la web de drunken monkey.
Documentación
Arquitectura básica y módulos relacionados
- Arquitectura básica de Search API e interacción de sus componentes
- Módulos que proveen nuevos backends, plugins y otras extensiones a Search API
Instalación y primeros pasos
- Instalación de Solr (Tomcat7), por Metadrop.
- Instalación de Solr (Tomcat) para usarlo con Drupal, por Lullabot.
- Instalación de Solr en Ubuntu con jetty.
- Conceptos básicos, por www.solrtutorial.com/
- Si usas el módulo de apache solr en vez de search api, aquí tienes una relación de módulos que te pueden ayudar.
- Vídeo (antiguo) de conceptos básicos para el Search Api, por Drunken Monkey
- Pequeña introducción de cómo funciona la búsqueda en solr
Funcionalidad avanzada
- Autocomplete flexible con Solr, por www.cominvent.com. También tiene repositorio en github
- Auto suggestions, por http://blog.trifork.com
- Multi-faceted responsive search, autocomplete, feeds engine and logging, este vídeo es de los más interesantes que he visto, por Remi Mikalsen del "The Norwegian Centre For ICT in Education".
- Creando un sistema de "Recomendaciones" con solr. Buen vídeo para estructurar un sistema de recomendaciones en tiempo real con Solr
- Faceting. Para entender cómo funcionan los facet.
- Pequeña introducción a la relevancia en solr (boost)
- Comparación de métodos de boost en solr
- Comenzando con dismax
- The Extended DisMax Query Parser
- Ajax y Solr, repositorio en github con demo site, por evolvingweb
Por último recomiendo leer los archivos de schema.xml y solrconfig.xml que vienen en el módulo de Search Api Solr, son de gran ayuda.