Trabajar con archivos de registro de rehacer de la base de datos de Oracle

Durante la captura de datos modificados, Datastream lee los archivos de registro de rehacer de Oracle para supervisar las bases de datos de origen en busca de cambios y replicarlos en la instancia de destino. Cada base de datos de Oracle tiene un conjunto de archivos de registro de rehacer en línea. Todos los registros de transacciones de la base de datos se registran en los archivos. Cuando se rota (o cambia) el archivo de registro de reintento actual, el proceso de archivo copia este archivo en un almacenamiento de archivo. Mientras tanto, la base de datos promueve otro archivo para que funcione como el archivo actual.

El conector de Oracle de Datastream extrae eventos de captura de datos modificados (CDC) de los archivos de registro de rehacer de Oracle archivados.

Accede a los archivos de registro de rehacer

Datastream puede usar la API de Oracle LogMiner o el método de lector binario para acceder a los archivos de registro de rehacer:

  • Oracle LogMiner: Es una utilidad lista para usar que se incluye en las bases de datos de Oracle. Si configuras Datastream para usar la API de Oracle LogMiner, solo puede trabajar con archivos de registro de rehacer archivados, no se admiten archivos de registro de rehacer en línea. El método de la API de LogMiner es de un solo subproceso y está sujeto a una latencia más alta y una menor capacidad de procesamiento cuando se trabaja con bases de datos de fuentes de números de transacciones grandes. LogMiner admite la mayoría de los tipos de datos y las funciones de la base de datos de Oracle.

  • Lector binario (Versión preliminar): Una utilidad especializada y de alto rendimiento que funciona con archivos de registro de reintentos en línea y archivados. El lector binario puede acceder a los archivos de registro con la administración automática de almacenamiento (ASM) o leyendo los archivos directamente con objetos de directorio de base de datos. El lector binario es multiproceso y admite CDC de baja latencia. También crea un impacto bajo en la base de datos de origen, ya que los registros de rehacer se analizan fuera de las operaciones de la base de datos. El método de CDC del lector binario tiene compatibilidad limitada con ciertos tipos de datos o funciones. Para obtener más información, consulta Limitaciones conocidas.

Establece parámetros de configuración para los archivos de registro de rehacer de Oracle

Este diseño tiene implicaciones considerables en la posible latencia de Datastream. Si los archivos de registro de rehacer de Oracle se cambian con frecuencia o se mantienen en un tamaño menor (por ejemplo, menos de 256 MB), Datastream puede replicar los cambios más rápido.

Existen parámetros de configuración que puedes establecer para controlar la frecuencia de rotación de los archivos de registro:

  • Tamaño: Los archivos de registro de rehacer en línea tienen un tamaño mínimo de 4 MB, y el tamaño predeterminado depende del sistema operativo. Para modificar el tamaño de los archivos de registro, crea archivos de registro en línea nuevos y descarta los más antiguos.

    Para encontrar el tamaño de los archivos de registro de rehacer en línea, ejecuta la siguiente consulta:

    SELECT GROUP#, STATUS, BYTES/1024/1024 MB FROM V$LOG
  • Tiempo: El parámetro ARCHIVE_LAG_TARGET proporciona un límite superior de tiempo (en segundos) para el intervalo del registro actual de la base de datos principal.

    Este no es el tiempo exacto de cambio de registro, ya que tiene en cuenta cuánto tiempo tardará en archivarse. El valor predeterminado es 0 (sin límite superior) y se sugiere un valor razonable de 1800 (o 30 minutos) o menos.

    Puedes usar los siguientes comandos para establecer el parámetro ARCHIVE_LAG_TARGET, ya sea durante la inicialización o mientras la base de datos está activa:

    • SHOW PARAMETER ARCHIVE_LAG_TARGET; Este comando muestra cuántos segundos durará el intervalo del registro actual.
    • ALTER SYSTEM SET ARCHIVE_LAG_TARGET = number-of-seconds; Usa este comando para cambiar el límite superior.

      Por ejemplo, para establecer el límite superior en 10 minutos (o 600 segundos), ingresa ALTER SYSTEM SET ARCHIVE_LAG_TARGET = 600;.

¿Qué sigue?