Trabajar con archivos de registro de versiones de base de datos de Oracle

Durante la captura de datos de cambios, Datastream lee los archivos de registro de rehacer de Oracle para monitorizar los cambios en las bases de datos de origen y replicarlos en la instancia de destino. Cada base de datos de Oracle tiene un conjunto de archivos de registro de rehacer online. Todos los registros de transacciones de la base de datos se registran en los archivos. Cuando se rota (o se cambia) el archivo de registro de rehacer actual, el proceso de archivado copia este archivo en un almacenamiento de archivos. Mientras tanto, la base de datos promueve otro archivo para que actúe como archivo actual.

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

Acceder a los archivos de registro de rehacer

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

  • Oracle LogMiner: una utilidad lista para usar incluida en las bases de datos de Oracle. Si configura Datastream para que use la API Oracle LogMiner, Datastream solo podrá trabajar con archivos de registro de rehacer archivados. Los archivos de registro de rehacer online no se admiten. El método de la API LogMiner es de un solo hilo y está sujeto a una latencia más alta y a un rendimiento más bajo cuando se trabaja con bases de datos de origen con un gran número de transacciones. LogMiner admite la mayoría de los tipos de datos y las funciones de la base de datos Oracle.

  • Lector binario (Vista previa): una utilidad especializada de alto rendimiento que funciona con archivos de registro de rehacer online y archivados. El lector binario puede acceder a los archivos de registro mediante la gestión automática del almacenamiento (ASM) o leyendo los archivos directamente con objetos de directorio de la base de datos. El lector binario es multiproceso y admite CDC de baja latencia. Además, tiene 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 CDC del lector binario tiene una compatibilidad limitada con determinados tipos de datos o funciones. Para obtener más información, consulta Limitaciones conocidas.

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

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

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

  • Tamaño: los archivos de registro de rehacer online tienen un tamaño mínimo de 4 MB y el tamaño predeterminado depende de tu sistema operativo. Puedes modificar el tamaño de los archivos de registro creando nuevos archivos de registro online y eliminando los más antiguos.

    Para consultar el tamaño de los archivos de registro de rehacer online, 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 la duración (en segundos) del registro actual de la base de datos principal.

    No es la hora exacta del cambio de registro, ya que tiene en cuenta el tiempo que se tardará en archivar el registro. El valor predeterminado es 0 (sin límite superior), pero se recomienda usar un valor razonable de 1800 (30 minutos) o menos.

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

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

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

Siguientes pasos