Configuración de Solr para SRP

Solr para AEM Platform

Se puede compartir una instalación de Apache Solr entre el almacén de nodos (Oak) y el almacén común (SRP) utilizando diferentes colecciones.

Si las colecciones Oak y SRP se utilizan intensamente, puede instalarse un segundo Solr por motivos de rendimiento.

Para los entornos de producción, SolrCloud mode proporciona un rendimiento mejorado sobre el modo independiente (una única configuración local de Solr).

Requisitos

Descargue e instale Apache Solr:

Modo SolrCloud

🔗 Se recomienda SolrCloudmode para entornos de producción. Cuando se ejecuta en modo SolrCloud, SolrCloud debe estar instalado y configurado antes de instalar la búsqueda multilingüe (MLS).

La recomendación es seguir las instrucciones de SolrCloud para instalar:

  • 3 nodos de SolrCloud en el mismo servidor
  • Un Apache ZooKeeper externo

También se recomienda configurar JVM para ajustar el uso de memoria y la colección de residuos.

Ejemplo de configuración de JVM

JVM_OPTS="-server -Xmx2048m -XX:MaxPermSize=768M -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Xloggc:../logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Djava.awt.headless=true"  

Comandos de configuración de SolrCloud

Cuando se ejecuta en modo SolrCloud, antes de la instalación de MLS, es necesario utilizar y conocer los siguientes comandos de configuración de SolrCloud.

1. Cargar una configuración a ZooKeeper

Referencia:
https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities

Uso:
sh ./scripts/cloud-scripts/zkcli.sh \
-cmd upconfig \
-zkhost servidor:puerto \
-confname *myconfig-name *\
-solrhome solr-home path \
-confidir config-dir

2. Crear una colección

Referencia:
https://cwiki.apache.org/confluence/display/solr/Solr+Start+Script+Reference#SolrStartScriptReference-Create

Uso:
./bin/solr crear \
-c mycollection-name\
-d config-dir \
-n myconfig-name \
-p puerto\
-s número de partes \
-rf número de réplicas

Vincule una colección a una configuración ya cargada a ZooKeeper.

Referencia:
https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities

Uso:
sh ./scripts/cloud-scripts/zkcli.sh \
-cmd linkconfig \
-zkhost servidor:puerto \
-collection mycollection-name \
-confname myconfig-name

Comparación de MLS estándar y avanzado

La búsqueda multilingüe (MLS) para AEM Communities se ha creado para la plataforma Solr con el fin de proporcionar una búsqueda mejorada en todos los idiomas compatibles, incluido el inglés.

MLS para comunidades AEM está disponible como MLS estándar o MLS avanzado. MLS estándar solo incluye los ajustes de configuración de Solr y excluye los complementos o archivos de recursos. Advanced MLS es la solución más completa e incluye configuraciones de Solr, así como complementos y recursos relacionados

MLS estándar incluye mejoras para la búsqueda de contenido en los siguientes idiomas:

  • Inglés: se ha mejorado el lemmer para intentar hacer coincidir derivaciones de palabras
  • Japonés: se ha mejorado la tokenización japonesa para caracteres de ancho medio

MLS avanzado incluye mejoras para la búsqueda de contenido en los siguientes idiomas:

  • Inglés: se ha sustituido el tallo por un lemmatizer
  • Alemán: descomponedor añadido
  • Francés: tratamiento de elisiones agregado
  • Chino (simplificado): se agregó un tokenizer más inteligente
  • Varios idiomas: se ha añadido un contenedor, una lista de palabras de parada y un normalizador.

En total, los siguientes 33 idiomas son compatibles con Advanced MLS.

Árabe Alemán Noruego
Búlgaro Griego Polaco
Chino (simplificado) Criollo haitiano Portugués
Chino (tradicional) Hebreo Rumano
Checo Húngaro Ruso
Danés Indonesio Eslovaco
Holandés Italiano Esloveno
Inglés Japonés Español
Estonio Coreano Sueco
Finés Letón Thai
Francés Lituano Turco

Comparación de AEM búsqueda de Solr 6.1, MLS estándar y MLS avanzado

Nota: AEM 6.1 se refiere a AEM 6.1 Comunidades FP3 y anteriores.

chlimage_1-283

Instalación de MLS estándar

Para la colección SRP (MSRP o DSRP), para admitir la búsqueda multilingüe estándar (MLS) es necesario modificar dos de los archivos de configuración de Solr:

  • schema.xml
  • solrconfig.xml

Archivos MLS estándar (schema.xml, solrconfig.xml) para Solr 4.10

Archivos MLS estándar (schema.xml, solrconfig.xml) para Solr 5

Los archivos MLS estándar se almacenan en el repositorio de AEM.

Nota: Aunque los archivos Solr se almacenan en la carpeta msrp/ , también son para DSRP (no es necesario realizar cambios).

Instrucciones de descarga: sustituir solrX por solr4 o solr5 según corresponda

  1. Usando CRXDE|Lite, busque

    • /libs/social/config/datastore/msrp/solrX/schema.xml
    • /libs/social/config/datastore/msrp/solrX/solrconfig.xml
  2. Descargar al servidor local en el que se implementa Solr

    • Busque la propiedad jcr:content del nodo jcr:data
    • Seleccione view para iniciar la descarga
    • Asegúrese de que los archivos se guardan con los nombres y la codificación adecuados (UTF8)
  3. Siga las instrucciones de instalación del modo independiente o de SolrCloud

Modo SolrCloud: MLS estándar

  1. Instalar y configurar Solr en el modo SolrCloud

  2. Prepare una nueva configuración:

    1. Crear new-config-dir como solr-install-dir/myconfig/

    2. Copie el contenido del directorio de configuración de Solr existente en new-config-dir

      • Para Solr4: copiar solr-install-dir/example/solr/collection1/conf/*
      • Para Solr5: copiar solr-install-dir/server/solr/configsets/data_managed_schema_configs/*
    3. Copie el schema.xml descargado y solrconfig.xml en new-config-dir para sobrescribir los archivos existentes

  3. Cargar la nueva configuración a ZooKeeper

  4. Cree una colección que especifique los parámetros necesarios, como el número de elementos compartidos, el número de réplicas y el nombre de configuración.

  5. Si el nombre de configuración *no se proporcionó durante la creación de la colección, vincule esta colección recién creada con la configuración cargada a ZooKeeper

  6. Para MSRP, ejecute MSRP Reindex Tool, a menos que se trate de una nueva instalación

Modo independiente: MLS estándar

  1. Instalar Solr en modo independiente

  2. Si ejecuta Solr5, cree una colección1 (similar a Solr4):

    • ./bin/solr start
    • ./bin/solr create_core -c collection1 -d sample_techproducts_configs
  3. Copia de seguridad schema.xml y solrconfig.xml en el directorio de configuración de Solr, como:

    • Para Solr4: solr-install-dir/example/solr/collection1/conf/
    • Creado para Solr5: solr-install-dir/server/solr/collection1/conf/
  4. Copie el schema.xml descargado y solrconfig.xml en el mismo directorio

  5. Reiniciar Solr

  6. Para MSRP, ejecute MSRP Reindex Tool, a menos que se trate de una nueva instalación

Instalación de MLS avanzados

Para que la colección SRP (MSRP o DSRP) admita MLS avanzados, se requieren nuevos complementos Solr, además de un esquema personalizado y una configuración Solr. Todos los elementos necesarios se empaquetan en un archivo zip descargable. Además, se incluye un script de instalación para su uso cuando se implementa Solr en modo independiente.

Para obtener el paquete MLS avanzado, consulte AEM Advanced MLS en la sección de implementación de la documentación.

Para comenzar con la instalación para SolrCloud o el modo independiente:

  • Descargue el archivo zip AEM-SOLR-MLS en el servidor que hospeda Solr
  • Desempaquete el archivo

Modo SolrCloud: MLS avanzado

Instrucciones de instalación: tenga en cuenta las pocas diferencias entre Solr4 y Solr5:

  1. Instalar y configurar Solr en el modo SolrCloud

  2. Extraiga el contenido del paquete Advanced MLS al disco. El contenido debe incluir:

    • schema.xml
    • solrconfig.xml
    • palabras clave/ carpeta
    • perfiles/ carpeta
    • extra-libs/ folder
  3. Prepare una nueva configuración:

    1. Crear un new-config-dir

      • Como solr-install-dir/myconfig/
      • Crear subcarpetas con palabras clave/ y lang/
    2. Copie el contenido del directorio de configuración de Solr existente en new-config-dir

      • Para Solr4: Copiar solr-install-dir/example/solr/collection1/conf/*
      • Para Solr5: Copiar solr-install-dir/server/solr/configsets/data_managed_schema_configs/*
    3. Copie el schema.xml extraído y solrconfig.xml en new-config-dir para sobrescribir los archivos existentes

    4. Para Solr5: Copiar solr_install_dir/server/solr/configsets/sample_techproducts_configs/conf/lang/*.txt" a new-config-dir/lang/

    5. Copie la carpeta stopwords/ extraída a new-config-dir que resulta en new-config-dir/stopwords/*.txt

  4. Cargar la nueva configuración a ZooKeeper

  5. Copie la nueva carpeta profiles/

    • Para Solr4: Copiar a los recursos/carpeta de cada nodo
    • Para Solr5: Copie en cada carpeta server/resources/ de la instalación de Solr. Si todos los nodos están en el mismo directorio de instalación de Solr, este paso se realiza solo una vez.
  6. Cree una carpeta lib/ en el directorio solr-home (contiene solr.xml) de cada nodo en SolrCloud. Copie jars de las siguientes ubicaciones a la nueva carpeta lib/ en cada nodo:

    • extra-libs/ extraído del paquete MLS avanzado
    • solr-install-dir/contrib/extraction/lib/.jar
    • solr-install-dir/dist/solr-cell.jar
    • solr-install-dir/contrib/clustering/lib/.jar
    • solr-install-dir/dist/solr-clustering.jar
    • solr-install-dir/contrib/langid/lib/.jar
    • solr-install-dir/dist/solr-langid.jar
    • solr-install-dir/contrib/velocity/lib/.jar
    • solr-install-dir/dist/solr-velocity.jar
    • solr-install-dir/contrib/analysis-extras/lib/.jar
    • solr-install-dir/contrib/analysis-extras/lucene-libs/.jar
  7. Cree una colección que especifique los parámetros necesarios, como el número de elementos compartidos, el número de réplicas y el nombre de configuración.

  8. Si el nombre de configuración fue not proporcionado durante la creación de la colección, vincule esta colección recién creada con la configuración cargada a ZooKeeper

  9. Para MSRP, ejecute MSRP Reindex Tool, a menos que se trate de una nueva instalación

Modo independiente: MLS avanzado

Se incluye un script de instalación en el paquete MLS avanzado.

Una vez extraído el contenido del paquete en el servidor que aloja el servidor independiente Solr, simplemente ejecute el script de instalación para instalar los recursos y archivos de configuración necesarios.

  • Instalar Solr en modo independiente

  • Si ejecuta Solr5, cree una colección1 (similar a Solr4):

    • ./bin/solr start
    • ./bin/solr create_core -c collection1 -d sample_techproducts_configs
  • Ejecute el script de instalación: Instalar [-v 4|5] [-d solrhome] [-c ruta de recopilación]
    donde:

    • -d solrhome

      Directorio de instalación de Solr

    • -c ruta de recopilación

      Ruta de recopilación en solr

    • –ayuda

      Imprimir opciones de línea de comandos

    • -v [4|5]

      Configurar versión para solr

  • Ejemplo para Solr 4.10.4:

    • Install.bat -v 4 -d c:/solr-4.10.4 -c:/solr-4.10.4/example/solr/collection1
  • Ejemplo para Solr 5.4.0:

    • Install.sh -v 5 -d /tmp/solr-5.4.0 -c /tmp/solr-5.4.0/server/solr/collection1

Nota:

  • El script de instalación hará una copia de seguridad de schema.xml y solrconfig.xml antes de instalar nuevas versiones añadiendo ".orig"

Acerca de solrconfig.xml

El archivo solrconfig.xml controla el intervalo de autoconfirmación y la visibilidad de la búsqueda y requerirá pruebas y ajustes.

<autocommit>: De forma predeterminada, el intervalo de confirmación automática, que es una confirmación sólida para el almacenamiento estable, se establece en 15 segundos. La visibilidad de la búsqueda usa de forma predeterminada el índice de preconfirmación.

Para cambiar la búsqueda y utilizar un índice actualizado para reflejar los cambios debidos a la confirmación, cambie el <openSearcher> contenido a true.

<autosoftcommit>: Una confirmación "suave" garantiza que los cambios sean visibles (el índice se actualiza), pero no garantiza que los cambios se sincronicen con el almacenamiento estable (confirmación dura). El resultado es una mejora en el rendimiento. De forma predeterminada, <autoSoftCommit> está desactivado con el <maxTime> contenido establecido en -1.

En esta página