Configuración de Solr para SRP

Solr para plataforma AEM

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, se puede instalar un segundo Solr por motivos de rendimiento.

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

Requisitos

Descargar e instalar Apache Solr:

Modo SolrCloud

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

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

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

También se recomienda configurar JVM para ajustar el uso de la memoria y la recolección de elementos no utilizados.

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 en 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 create
-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 avanzados

La búsqueda multilingüe (MLS) para AEM Communities está diseñada para la plataforma Solr a fin de proporcionar una búsqueda mejorada en todos los idiomas admitidos, incluido el inglés.

MLS para comunidades AEM está disponible como MLS estándar o MLS avanzado. MLS estándar solo incluye la configuración de Solr y excluye los complementos o archivos de recursos. Advanced MLS es una solución más completa que incluye la configuración 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 sistema para intentar hacer coincidir derivaciones de palabras.
  • Japonés: Se ha mejorado la tokens en japonés para caracteres de ancho medio.

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

  • Inglés: Se reemplazó el tallo por un lemmatizador.
  • Alemán: Descomponedor añadido.
  • Francés: Se añadió el manejo de la elisión.
  • Chino (simplificado): Añadió un tokenizador más inteligente.
  • Varios idiomas: Añadió un sistema, una lista de palabras de detención 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 avanzados

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

compare-solr-mls

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:

  • esquema.xml
  • solrconfig.xml

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

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

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

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

Instrucciones de descarga: Sustitúyalo solrX por solr4 o solr5 según corresponda.

  1. Con CRXDE|Lite, busque:

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

    • Busque la propiedad jcr:content del nodo jcr:data.
    • Seleccione view para inicio de 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 para el modo independiente o de SolrCloud.

Modo SolrCloud: MLS estándar

  1. Instale y configure Solr en modo SolrCloud.

  2. Preparar una nueva configuración:

    1. Cree un nuevo directorio-config* como solr-install-dir*/myconfig/

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

      • Para Solr4: copy solr-install-dir/example/solr/collection1/conf/
      • Para Solr5: copy solr-install-dir/server/solr/configsets/data_driven_schema_configs/
    3. Copie los archivos esquema.xml y solrconfig.xml descargados en new-config-dir para sobrescribir los archivos existentes.

  3. Cargue la nueva configuración en ZooKeeper.

  4. Cree una colección que especifique los parámetros necesarios, como el número de partes compartidas, 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. Instale 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. Haga una copia de seguridad esquema.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 los archivos esquema.xml y solrconfig.xml descargados en ese mismo directorio.

  5. Reinicie 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 necesitan nuevos complementos Solr además de una configuración personalizada de esquema y Solr. Todos los elementos necesarios se empaquetan en un archivo zip descargable. Además, se incluye una secuencia de comandos 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 modo independiente:

  • Descargue el archivo zip AEM-SOLR-MLS en el servidor que aloja Solr.
  • Desempaquetar el archivo.

Modo SolrCloud: MLS avanzado

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

  1. Instale y configure Solr en modo SolrCloud.

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

    • esquema.xml
    • solrconfig.xml
    • palabras clave/ carpeta
    • perfiles/ carpeta
    • extra-libs/ carpeta
  3. Preparar una nueva configuración:

    1. Crear un nuevo-config-dir

      • Tal como solr-install-dir/myconfig/
      • Crear subcarpetas stopwords/ 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_driven_schema_configs/
    3. Copie los archivos esquema.xml y solrconfig.xml extraídos a 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 en new-config-dir que resulta en new-config-dir/stopwords/*.txt

  4. Cargar la nueva configuración en ZooKeeper

  5. Copie la nueva carpeta perfiles/

    • Para Solr4: Copiar en los recursos/carpetas 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 una sola vez.
  6. Cree una carpeta lib/ en el directorio solr-home (contiene solr.xml) de cada nodo de SolrCloud. Copie los tarros de las siguientes ubicaciones en la nueva carpeta lib/ de cada nodo:

    • extra-libs/ extraído del paquete MLS avanzado
    • solr-install-dir/contrib/extracción/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/análisis-extras/lib/.jar
    • solr-install-dir/contrib/análisis-extras/lucene-libs/.jar
  7. Cree una colección que especifique los parámetros necesarios, como el número de partes compartidas, el número de réplicas y el nombre de configuración.

  8. 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 en ZooKeeper.

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

Modo independiente: MLS avanzado

Se incluye una secuencia de comandos de instalación en el paquete MLS avanzado.

Después de extraer el contenido del paquete en el servidor que aloja el servidor independiente de Solr, simplemente ejecute la secuencia de comandos de instalación para instalar los recursos y archivos de configuración necesarios.

  • Instale 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 la secuencia de comandos de instalación: Instalar [-v 4|5] [-d directorio raíz] [-c ruta de recopilación]
    donde:

    • -d inicio único

      Directorio de instalación de Solr

    • -c ruta de recopilación

      Ruta de recopilación en sollo

    • –ayuda

      Imprimir opciones de línea de comandos

    • -v [4|5]

      Configurar versión para solr

  • Ejemplo de Solr 4.10.4:

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

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

Nota:

  • La secuencia de comandos de instalación realizará una copia de seguridad de esquema.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 búsqueda y requerirá pruebas y ajustes.

<autoCommit>:: De forma predeterminada, el intervalo de autoconfirmación, que es una confirmación dura del almacenamiento estable, se establece en 15 segundos. La visibilidad de búsqueda utiliza 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 contenido openSearcher a true.

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

En esta página