Está en la página 1de 2

Configurando SOLR

Empecemos con una definicin de la pgina del proyecto Apache SOLR (traducida
rpidamente)
SOLR es una plataforma de bsqueda de cdigo abierto, evolucin del proyecto
Apache Lucene. Sus principales caractersticas incluyen la bsqueda de texto completo,
bsqueda facetada, indexacin en casi- tiempo real, la agrupacin dinmica, la
integracin de bases de datos, documentos ricos (por ejemplo, Word, PDF) y la
bsqueda geoespacial. SOLR es fiable, escalable y tolerante a fallos, proporcionando
indexacin distribuida, replicacin y consultas en configuraciones con equilibrio de
carga, failover automatizado y recuperacin, configuracin centralizada etc..
SOLR est presente en las caractersticas de bsqueda y navegacin caractersticas de
muchas de las mayores webs existentes (Resumiendo: es una evolucin de Lucene y es
extremadamente potente)
SOLR y Dspace
SOLR se usa en Dspace para lograr dos funcionalidades: estadsticas y bsquedas.
Como nada es perfecto, el uso de SOLR se mezcla con antiguas capas de cdigo pre-
existente Lucene. As tenemos que en Dspace version 1.7, 1.8 y 3, conviven las
estadsticas del sistema a partir del procesado de los logs del sistema Y las
estadsticas de uso y descarga, obtenidas a partir /solr/statistics. En el -ambito de la
bsqueda, la situacin es que con Discovery activado, la bsqueda se har sobre el
motor SOLR y sus ndices, pero la navegacin por ndices se hace sobre Lucene
(desconcierto garantizado). Est planificado simplificar esta situacin en la versin 4,
eliminando Lucene veremos..
Configurando las bsquedas SOLR
Hoy veremos el segundo bloque funcional, las bsquedas. La buena noticia es que
SOLR se configura mediante ficheros XML, la mala es que esta configuracin es
sustancialmente ms compleja que la configuracin Lucene. Rompamos una lanza:
SOLR tiene una potencia espectacular aunque resulte difcil de comprender su
funcionamiento. Pero quien entiende el comportamiento de Google? y quin lo
usa? a que no podramos vivir sin l? Pues comprender el funcionamiento de SOLR
es complejo y su potencial es enorme, aunque quiz podamos conformarnos con
realizar una serie de adaptaciones.
Como ejemplo de lo anterior, y ya que tenamos pendiente hablar sobre las
configuraciones de diacrticos, pues vamos a comentar como lograr lo mismo que
hacamos en Lucene en este post.
Bsicamente el proceso de construccin del ndice Solr es la aplicacin de una serie de
transformaciones a nuestros campos (fields). Las transformaciones son del mimo tipo
que las que aplicbamos en Lucene. En general se mantienen los nombres de las clases
transformadoras y se les aade el prefijo solr, refirindose as a las clases java del
paquete org.apache.solr.analysis.
Hay que especificarlas relacionndolas con el tipo de campo que queramos
transformar, y esta relacin se especifica dentro del fichero principal de
configuracin ../solr/search/conf/schema.xml.
En este fichero tenemos que localizar el <fieldType name=text > que es el que
corresponde con los campos de tipo textual. Hay datos de mltiples tipos: numricos,
string, numricos con ordenacin textual, fechas, booleanos, hasta 39 diferentes
contamos en schema.xml pues bien dentro de esa etiqueta fielType, localizar
<filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt">
y cambiarla, aadiendo..
<filter class="solr.ASCIIFoldingFilterFactory"></filter>
<filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt">

Lo ponemos antes del Porter-Stemmer por las mismas razones que explicamos
cuando configuramos el ndice Lucene. Ya de paso, y contestando una pregunta que
nos hicsteis, aprovechamos para revisar en ese mismo fichero el operador lgico
usado en las queries:
<!-- SolrQueryParser configuration: defaultOperator="AND|OR" -->
<solrQueryParser defaultOperator="AND"/>
Ahora nos queda reindexar SOLR. Nos parece que es ms adecuado proceder a una
reconstruccin completa del ndice y por eso, la opcin de borrado del ndice.
..\bin\dspace update-discovery-index -b

Y ya debiera estar. Suerte.

También podría gustarte