Planificación de DR para bases de datos

Puede utilizar Oracle GoldenGate, Active Data Guard y Autonomous Data Guard para implantar la recuperación ante desastres para las bases de datos desplegadas en Oracle Cloud.

  • Active Data Guard proporciona una protección de datos completa, alta disponibilidad y recuperación ante desastres para Oracle Database de una manera sencilla y económica manteniendo una réplica física sincronizada (en espera) de una base de datos de producción en una ubicación remota. La base de datos en espera está abierta en modo de solo lectura durante la transferencia de redo, la validación y la recuperación.

    A diferencia de los métodos de replicación de almacenamiento típicos, Active Data Guard replica sólo los redo logs en memoria y valida la replicación para evitar cualquier posibilidad de corrupción.

  • Oracle GoldenGate es un producto de replicación lógica avanzada que admite la replicación de varios maestros, el despliegue de hub y radio y la transformación de datos. GoldenGate proporciona a los clientes opciones flexibles para abordar toda la gama de requisitos de replicación, incluidas plataformas de hardware heterogéneas.
  • Autonomous Data Guard proporciona protección de datos y recuperación ante desastres para sus instancias de base de datos autónoma en Oracle Cloud. Al activar Autonomous Data Guard para una instancia de base de datos autónoma, se crea una base de datos en espera en la misma región. En regiones con más de un dominio de disponibilidad, la instancia en espera se asigna en un dominio de disponibilidad diferente al de la base de datos principal. En regiones con un único dominio de disponibilidad, la instancia en espera se asigna a una máquina física diferente a la de la base de datos principal. Autonomous Data Guard supervisa la instancia primaria y realiza un failover automático a la base de datos en espera si la base de datos primaria deja de estar disponible.

Acerca de Oracle Maximum Availability Architecture

Oracle Maximum Availability Architecture (MAA) es un conjunto de planes detallados de mejores prácticas para el uso integrado de las tecnologías de alta disponibilidad de Oracle. Las mejores prácticas de MAA describen arquitecturas estándar diseñadas para lograr diferentes objetivos de nivel de servicio para los requisitos de alta disponibilidad y protección de datos. Los niveles de arquitectura MAA Bronze, Silver, Gold y Platinum están diseñados para lograr diferentes objetivos de nivel de servicio y proporcionarle opciones para alta disponibilidad, protección de datos y recuperación ante desastres.

Cada uno de los siguientes niveles de MAA utiliza un conjunto óptimo de capacidades de Oracle que, cuando se despliegan juntas, logran de forma fiable los niveles de servicio de destino para interrupciones no planificadas y eventos de mantenimiento planificados:

  • Bronce

    El nivel Bronze proporciona un servicio de base de datos básico al menor costo posible. Se acepta un nivel reducido de alta disponibilidad y protección de datos a cambio de una menor complejidad de implantación y costo. Esta arquitectura puede ser adecuada para bases de datos utilizadas para pruebas, desarrollo y aplicaciones y bases de datos de producción menos críticas.

    La arquitectura utiliza las capacidades de alta disponibilidad incluidas en Oracle Enterprise Edition. Bronce se define por defecto en la arquitectura de instancia única o multi-inquilino de Oracle Database. Las capacidades de alta disponibilidad de Oracle Restart u Oracle Clusterware se utilizan para reiniciar una instancia fallida, un servidor de base de datos o cualquier servicio gestionado relevante. Para corrupciones lógicas como el error humano, puede utilizar operaciones de flashback para "reconectar" la base de datos a un punto en el tiempo específico. En el peor de los casos de una interrupción completa del sitio, se necesita más tiempo para restaurar y recuperar el sistema y la base de datos a partir de copias de seguridad, lo que puede provocar horas o días de tiempo de inactividad.

    Siempre se recomienda realizar una copia de seguridad local en el mismo centro de datos para obtener la recuperación más rápida. Oracle también recomienda mantener una segunda copia de seguridad en un centro de datos remoto para protegerse contra interrupciones del sitio y desastres. Puede utilizar Oracle Database Backup Cloud Service para mantener una copia de seguridad basada en la nube de las bases de datos locales.

  • Silver

    El nivel Silver está diseñado para bases de datos que no pueden permitirse esperar un reinicio en frío o una restauración a partir de una copia de seguridad, en caso de que haya una instancia de base de datos irrecuperable o un fallo del servidor. Esta arquitectura puede ser adecuada para aplicaciones de producción que son esenciales para el negocio y necesitan reducir el tiempo de inactividad de los fallos locales y las actividades de mantenimiento planificadas más comunes.

    La arquitectura Silver se basa en la arquitectura Bronze y agrega clusters activos-activos de Oracle Real Application Clusters (Oracle RAC) para un tiempo de inactividad mínimo o nulo en caso de fallo de la instancia de base de datos o del servidor, así como tiempo de inactividad cero de la base de datos para los eventos de mantenimiento planificados más comunes.

    Al igual que en la arquitectura Bronze, Recovery Manager (RMAN) proporciona copias de seguridad optimizadas para la base de datos para restaurar la disponibilidad en caso de que haya una interrupción completa del cluster o un desastre.

  • Oro

    El nivel Gold está diseñado para requisitos de nivel de servicio que no pueden tolerar largos períodos de tiempo de inactividad y pérdida de datos. Este conjunto de patrones de arquitectura proporciona alta disponibilidad y protección de datos completa para todos los tipos de interrupciones no planificadas, incluidas las corrupciones de datos, los fallos de la base de datos y las interrupciones del sitio. Las aplicaciones de producción esenciales que requieren un tiempo de recuperación rápido y una pérdida de datos cero o mínima para todas las interrupciones de la base de datos y del sistema, así como las actividades de mantenimiento planificadas, se beneficiarán de las capacidades incluidas en la arquitectura de referencia Gold.

    La arquitectura de referencia Gold, basada en la arquitectura de referencia Silver, proporciona cuatro patrones de arquitectura mediante Oracle Active Data Guard. Los patrones varían de una única base de datos activa remota con failover de inicio rápido y observador de alta disponibilidad, a varias configuraciones de base de datos en espera, incluidas las granjas de lectura en espera, y finalmente una configuración en espera de pérdida de datos cero de sincronización (entre regiones).

  • Platino

    El nivel Platinum tiene el potencial de proporcionar un tiempo de inactividad cero para las interrupciones y las actividades de mantenimiento planificadas que no se pueden conseguir con la arquitectura Gold. La arquitectura Platinum se basa en la arquitectura Gold mediante la adición de la replicación de Oracle GoldenGate para eliminar el tiempo de inactividad de las migraciones, las actualizaciones de aplicaciones y las actualizaciones de la base de datos. Cada base de datos Oracle GoldenGate está protegida por una base de datos en espera para que no se pierdan datos en caso de fallo de base de datos, cluster o sitio.

    A diferencia de otras arquitecturas MAA, se necesitan consideraciones de la aplicación para integrar Oracle GoldenGate en la arquitectura, a fin de garantizar que la detección y resolución de conflictos se realicen correctamente. Los servicios de datos globales o la gestión de servicios de aplicaciones personalizados también pueden ser necesarios para lograr un tiempo de inactividad de las aplicaciones cero en actividades como la migración y las actualizaciones de bases de datos.

Utilizar Active Data Guard

Data Guard proporciona un juego completo de servicios que crean, mantienen, gestionan y controlan una o más bases de datos en espera para permitir a las bases de datos Oracle de producción sobrevivir a desastres y corrupciones de datos. Data Guard mantiene estas bases de datos en espera como copias transaccionalmente consistentes de la base de datos de producción. La mayoría de las mejores prácticas de Active Data Guard se definen, prueban y validan como parte de las arquitecturas de referencia en el nivel MAA Gold.
Si la base de datos de producción deja de estar disponible debido a una interrupción planificada o no planificada, Data Guard puede cambiar cualquier base de datos en espera al rol de producción, minimizando el tiempo de inactividad asociado a la interrupción. Data Guard se puede utilizar con técnicas tradicionales de copia de seguridad, restauración y cluster para proporcionar un alto nivel de protección de datos y disponibilidad de datos.

Ventajas de Active Data Guard

Active Data Guard proporciona varias ventajas.

  • Replicación física segura.

    La base de datos en espera está abierta en modo de solo lectura, por lo que se garantiza la consistencia de los datos.

    Tenga en cuenta que a partir de Oracle Database 19c, puede emitir actualizaciones ocasionales e insertar instrucciones en la base de datos en espera, que redirige las instrucciones a la base de datos primaria.

  • Replicación sencilla, rápida y unidireccional de una Oracle Database completa.

    La configuración por defecto maneja la mayoría de las cargas de trabajo para que haya poca sobrecarga administrativa.

  • Sin restricciones.

    Oracle Data Guard Redo Apply soporta todas las funciones de Oracle y replica de forma transparente todos los tipos de datos y almacenamiento, paquetes PL/SQL y DDL sin consideraciones especiales.

  • Mejor protección de datos.

    La replicación directa desde la memoria aísla la base de datos en espera de daños de E/S que se pueden producir en la base de datos primaria. Detecta daños silenciosos de escritura perdida que se pueden producir de forma independiente en la base de datos primaria o en espera. Detecta y repara automáticamente la corrupción de bloques físicos que se puede producir de forma independiente en la base de datos primaria o en espera.

  • Opción síncrona sin pérdida de datos o asíncrona con protección de pérdida de datos casi cero.
  • RoI mejorado.

    Puede descargar cargas de trabajo de solo lectura, como aplicaciones de informes, consultas ad hoc y extracciones de datos, en una base de datos física en espera sincronizada.

  • Un único comando convierte una base de datos física en espera como un sistema de prueba de lectura/escritura abierta. Un segundo comando lo convierte de nuevo en una base de datos física en espera y lo vuelve a sincronizar con la base de datos primaria. Los datos principales siempre están protegidos.
  • Gestión integrada de una configuración completa con la línea de comandos de Oracle Data Guard Broker y failover automático de la base de datos.
  • Se admite para la configuración de base de datos de nodo único o de base de datos de varios nodos (Real Application Cluster).
  • Continuidad de la aplicación, para la protección en curso de las transacciones.

    Active Data Guard enmascara las interrupciones de la base de datos de los usuarios finales y las aplicaciones mediante la recuperación del trabajo en curso para las sesiones de base de datos afectadas.

Modos de Configuración

  • Máxima Protección
    Este modo de protección proporciona cero pérdida de datos si falla la base de datos primaria. Para garantizar que no se puede producir ninguna pérdida de datos, la base de datos primaria se cierra si un fallo impide que escriba su flujo de redo en el redo log en espera de al menos una base de datos en espera.

    Nota:

    Este modo no está disponible para bases de datos autónomas. Para Exadata Cloud Service y Exadata Cloud@Customer, puede configurar este modo manualmente, pero el plano de control de la nube no lo reflejará.
  • Máxima Disponibilidad

    Este modo de protección proporciona el máximo nivel de protección de datos posible sin poner en riesgo la disponibilidad de la base de datos principal. Al igual que con el modo de máxima protección, una transacción se confirma sólo después de que el redo necesario para recuperar esa transacción se escriba en el redo log en línea local y en el redo log en espera de al menos una base de datos en espera transaccionalmente consistente. A diferencia del modo de máxima protección, la base de datos primaria no se cierra si un fallo impide que escriba su flujo de redo log remoto en espera. En su lugar, la base de datos primaria y la configuración de Data Guard se degradan al estado UNSYNCHRONIZED. Cuando al menos una base de datos en espera pasa a estar disponible, la base de datos en espera se vuelve a sincronizar automáticamente.

  • Máximo Rendimiento

    Este modo de protección (valor por defecto) proporciona el mayor nivel de protección de datos posible sin afectar al rendimiento de la base de datos principal. Esto se consigue permitiendo que una transacción se confirme cuando los datos redo necesarios para recuperar esa transacción se escriban de forma asíncrona en el redo log en línea local. Si se utilizan enlaces de red con suficiente ancho de banda, este modo proporciona un nivel de protección de datos que se aproxima al del modo de máxima disponibilidad con un mínimo impacto en el rendimiento de la base de datos primaria.

Consideraciones sobre la colocación de la base de datos

Para mejorar la disponibilidad y la recuperación ante desastres, coloque el sistema de base de datos de la base de datos en espera en un dominio de disponibilidad diferente del sistema de base de datos de la base de datos principal.

Si activa Data Guard para una base de datos y la base de datos en espera está en el mismo dominio de disponibilidad que la base de datos principal (por elección o porque la región tiene un solo dominio de disponibilidad), coloque la base de datos en espera en un dominio de errores diferente al de la base de datos principal.

Si las bases de datos primaria y en espera son sistemas de base de datos de máquina virtual RAC de 2 nodos y ambas se encuentran en el mismo dominio de disponibilidad, recomendamos distribuir los cuatro nodos (dos para principal y dos para en espera) en los tres dominios de errores del dominio de disponibilidad. Esta configuración garantiza la mayor disponibilidad posible, aprovechando los tres dominios de errores. En este caso, sólo uno de los dos nodos de la base de datos en espera puede estar en un dominio de errores que no incluya ningún otro nodo de la base de datos principal o en espera.

Para garantizar una transición óptima de roles entre la base de datos primaria y la base de datos en espera, Oracle recomienda ajustar el tamaño y configurar las dos bases de datos de forma simétrica.

Mejores prácticas de configuración

Consulte "Mejores prácticas de Oracle Data Guard" en Oracle Database High Availability Overview and Best Practices.

Uso de Oracle GoldenGate

Oracle GoldenGate es un paquete de software completo para la integración y replicación de datos en tiempo real en entornos de TI heterogéneos. El conjunto de productos permite soluciones de alta disponibilidad, integración de datos en tiempo real, captura de datos de cambios transaccionales, replicación de datos, transformaciones y verificación entre sistemas empresariales operativos y analíticos. La mayoría de las mejores prácticas de Oracle GoldenGate se definen, prueban y validan como parte de las arquitecturas de referencia en el nivel MAA Platinum.
Utilice Oracle GoldenGate cuando una base de datos de réplica deba estar abierta como de lectura/escritura mientras la replicación esté activa, incluso en los siguientes escenarios:
  • Requisitos avanzados de replicación, como replicación multimaestro y bidireccional, replicación de subjuegos, replicación de varios a uno, replicación entre varios elementos y transformaciones de datos
  • Mantenimiento y migraciones que requieren un tiempo de inactividad cero mediante replicación bidireccional
  • Migración entre plataformas no soportada por Data Guard (por ejemplo, migración entre plataformas).
  • Soporte para sistemas distribuidos de versiones entre bases de datos (por ejemplo, la réplica 1 está en la versión 12.2 y la réplica 2 está en la versión 19c)
  • Soporte para plataformas de bases de datos cruzadas (por ejemplo, la réplica 1 está en Oracle y la réplica 2 está en plataformas que no son de Oracle DB).

Modos de Configuración

Utilice la arquitectura de microservicios de Oracle GoldenGate, que proporciona una plataforma de replicación segura, completa y ampliable en la nube. Para minimizar la sobrecarga en los servidores de base de datos, Oracle recomienda desplegar GoldenGate en la configuración de hub.

GoldenGate soporta varias topologías, como se muestra en el siguiente diagrama. Elija un modo que se adapte a su caso de uso.



Mejores prácticas de configuración

Dado que Oracle GoldenGate replica los datos en el nivel transaccional, recomendamos implantar la detección y resolución de conflictos (CDR) para lograr la consistencia de los datos entre dos sitios. Los conflictos se identifican inmediatamente y se gestionan con scripts automatizados.

Si utiliza GoldenGate principalmente para la recuperación ante desastres y la replicación es solo una forma, recomendamos agregar Data Guard entre dos regiones. Esto proporciona una solución sin pérdida de datos con una fuerte consistencia de datos entre la instancia primaria y de Data Guard. Esta configuración también reduce la sobrecarga de ejecutar la extracción GoldenGate de la base de datos primaria.

A continuación se muestra la descripción de db-dg-gg.png
Descripción de la ilustración db-dg-gg.png

Nota:

La arquitectura muestra varios dominios de disponibilidad (AD). Para una región con un solo dominio de disponibilidad, ajuste la arquitectura para distribuir los recursos entre los dominios de errores del dominio de disponibilidad.

Despliegue Oracle GoldenGate también en una configuración de alta disponibilidad. Puede utilizar la replicación de Oracle ASM Cluster File System (ACFS) para archivos GoldenGate críticos.

Utilizar Active Data Guard y GoldenGate

Oracle GoldenGate y Active Data Guard no se excluyen mutuamente. Puede utilizarlos juntos para lograr un objetivo de punto de recuperación (RPO) de cero (es decir, sin riesgo de pérdida de datos), porque GoldenGate es de naturaleza asíncrona, mientras que Active Data Guard puede proporcionar replicación síncrona junto con otras funciones clave, como la validación de bloques de datos, la reparación automática de bloques y la continuidad de la aplicación.

A continuación se muestran algunos escenarios que aprovechan Oracle GoldenGate y Active Data Guard:
  • Utilice una base de datos de Active Data Guard en espera para la protección ante desastres y las actualizaciones sucesivas de bases de datos para una base de datos OLTP esencial. Utilice GoldenGate para extraer datos de la base de datos primaria de Data Guard (o de la base de datos en espera mediante el modo ALO GoldenGate) para la actualización de ETL de un almacén de datos de empresa.
  • Utilice la replicación de subjuego GoldenGate para extraer, transformar y agregar datos de numerosos orígenes de datos a un almacén de datos operativo (ODS) central. ODS admite sistemas de aplicaciones esenciales que generan ingresos significativos para la compañía. Utilice una base de datos en espera de Active Data Guard para proteger ODS y proporcionar una protección y disponibilidad de datos óptimas.
  • Utilice la replicación de varios maestros GoldenGate para sincronizar varias bases de datos, cada una de ellas ubicada en diferentes zonas geográficas. Cada copia GoldenGate tiene su propia base de datos en espera de Data Guard síncrona local que permite el failover sin pérdida de datos si se produce una interrupción.

Nota:

Para implementar la arquitectura de máxima disponibilidad de nivel Platinum, utilice Oracle Real Application Clusters (Oracle RAC), Active Data Guard y Oracle GoldenGate.