Recuperación de un índice de búsqueda corrupto después de una anomalía inesperada

Puede recuperar un índice de búsqueda corrupto, erróneo, dañado o inaccesible si se produce una anomalía de hardware o software inesperada.

El índice de búsqueda puede dañarse a raíz de los escenarios de ejemplo siguientes:
  • Se ha interrumpido una tarea de indexación, haciendo que un índice parcialmente creado se replicase en producción.
  • Una pérdida de conectividad de red durante la réplica de índice, haciendo que uno o más de los archivos de segmentos de datos de índice se corrompa.
  • Se que quedado sin descriptores de archivo o capacidad de almacenamiento durante la indexación o la réplica, haciendo que se elimine el índice entero.

Para determinar de qué se debe realizar copia de seguridad y restauración en un caso de corrupción de índice, debe comprender qué componentes están involucrados y cómo fluyen los datos a través de cada componente. Normalmente se utiliza un repetidor en un entorno de producción para realizar la indexación, donde los datos de catálogo se leen directamente de la base de datos de producción. Cuando el repetidor ha terminado la indexación, los miembros del clúster de servidor subordinado de búsqueda extraen los cambios del repetidor y replican localmente la actualización en cada servidor subordinado. Existe una copia local del índice en cada servidor subordinado en la ubicación solrhome. El inicio de Solr contiene todos los archivos relacionados con el servidor de búsqueda. Por lo tanto, es importante que la estrategia de copia de seguridad copie todo bajo el inicio de Solr del repetidor. Es decir, la copia maestra del índice en producción.

Si se produce algún problema de índice en el sistema de producción, el índice corrupto puede restaurarse a partir de una copia de seguridad o reconstruirse. Se recomienda configurar una tarea recurrente para copiar los índices en una ubicación de almacenamiento alternativa a un rango de tiempo regular o justo antes de que se produzca cada reindexación. Esta práctica reduce drásticamente el tiempo de restauración de índice. Por ejemplo, si un índice se corrompe, puede restaurar la versión de trabajo conocida más reciente del índice de búsqueda en el repetidor y establecerlo como el índice actual. Los servidores subordinados podrán sincronizarse automáticamente con la versión de índice restaurado.

En general, se recomienda encarecidamente mantener al menos una copia del índice de búsqueda de trabajo más reciente. Esta copia de seguridad debe mantenerse actualizada y renovarse cada vez que se realiza un cambio en el índice de búsqueda. A continuación, en caso de un error o corrupción de índice, la restauración de la copia de seguridad reciente es rápida y eficaz para que el sitio vuelva a estar activo y en ejecución. Una copia de seguridad de índice es simplemente una copia de los archivos de datos de índice en el sistema de archivos. El mejor momento para crear una copia de seguridad es justo después de que la indexación final se haya completado y de que se haya realiza una prueba rápida de sanidad e integridad. Es opcional pero beneficioso mantener varias copias de seguridad sucesivas, para tener más flexibilidad al retrotraer a una versión anterior del índice de búsqueda.

Para restaurar el índice de búsqueda a una versión anterior, realice la tarea siguiente: . Copia de seguridad del índice de HCL Commerce Search. Aunque los datos indexados a partir de la copia de seguridad seleccionada pueden ser ligeramente anticuados, el sitio puede activarse de nuevo con un tiempo de inactividad mínimo. Mientras el sitio está activo y en ejecución de nuevo en la copia de seguridad restaurada, puede investigar la causa raíz y realizar planes de recuperación adicionales, como por ejemplo volver a intentar crear el índice de búsqueda corrupto en el mismo servidor de indexación o en otro.

Procedimiento

  • Realice una copia de seguridad del inicio de Solr, para poder capturar un entorno de búsqueda de trabajo, incluidos los índices de búsqueda.

    Determine las ubicaciones del inicio de Solr de las que desea realizar copia de seguridad, en función del entorno:

    OpciónDescripción
    Entorno de transición
    • Al indexar con la propagación de transición, los usuarios de empresa aplican cambios en un área de transición, que posteriormente se propaga al entorno de producción por los administradores de TI. Se utiliza un repetidor de índice para capturar el contenido del índice desplegado más reciente, mientras que también sirve como copia de seguridad.

    Realice copia de seguridad del directorio de inicio del índice Solr.

    Determine la planificación de copia de seguridad basándose en cuándo los usuarios de empresa no están haciendo cambios completos que se deben propagar en producción.

  • Compruebe si hay índices de búsqueda con problemas ejecutando la herramienta CheckIndex.

    CheckIndex es una herramienta disponible en la biblioteca de Lucene. Comprueba los archivos y crea nuevos segmentos que no contienen entradas problemático. Opcionalmente, la herramienta CheckIndex es capaz de reparar un índice interrumpido con poca pérdida de datos, para que no tenga que restaurar el índice de una copia de seguridad o realizar una indexación completa de todos los documentos que se almacenan en Solr.

    1. Vaya al directorio que contiene los archivos de biblioteca de Lucene.
    2. Ejecute el mandato siguiente:
      
      java -cp .\lucene-core-5.5.4.jar org.apache.jar org.apache.lucene.index.CheckIndex lucene_indexdir
      
      Donde lucene_indexdir es la vía de acceso completa al directorio de datos de índice de Lucene.
  • Si puede identificar un índice de búsqueda problemático, puede realizar una copia de seguridad de los índices de búsqueda y retrotraerlos basándose en instantáneas.
  • En casos de índices de búsqueda problemáticos, restaure la copia de seguridad del directorio de inicio de Solr en el área del problema.