Réplicas de lectura de Amazon RDS

Las réplicas de lectura de Amazon RDS ofrecen mayor rendimiento y durabilidad para instancias de base de datos (DB) de Amazon RDS. Las réplicas facilitan la capacidad para escalar horizontalmente más allá de las limitaciones de capacidad de una única instancia de base de datos para cargas de trabajo de base de datos con uso intensivo de las lecturas. Puede crear una o varias réplicas de una instancia de base de datos de origen determinada y abastecer el alto volumen de tráfico de lectura de la aplicación desde distintas copias de sus datos, lo que aumenta el rendimiento de lectura total. Las réplicas de lectura también se pueden convertir cuando sea necesario para que se transformen en instancias de base de datos independientes. Las réplicas de lectura están disponibles en Amazon RDS para MySQL, Amazon RDS para MariaDB, Amazon RDS para PostgreSQL, Amazon RDS para Oracle y Amazon RDS para SQL Server, así como en Amazon Aurora.

Para los motores de bases de datos MySQL, MariaDB, PostgreSQL, Oracle y SQL Server, Amazon RDS crea una segunda instancia de base de datos mediante una instantánea de la instancia de base de datos original. A continuación, utiliza la replicación asíncrona nativa de los motores para actualizar la réplica de lectura cuando se realizan modificaciones en la instancia de base de datos original. La réplica de lectura opera como una instancia de base de datos que solo permite conexiones de solo lectura; las aplicaciones pueden conectar con una réplica de lectura como harían con cualquier instancia de base de datos. Amazon RDS replica todas las bases de datos en la instancia de base de datos de origen.

Amazon Aurora amplía los beneficios de las réplicas de lectura al emplear una capa de almacenamiento virtualizada respaldada mediante SSD y diseñada específicamente para cargas de trabajo de bases de datos. Las réplicas de Amazon Aurora comparten el mismo almacenamiento subyacente que la instancia de origen, con lo que se reducen costos y se evita la necesidad de copiar datos en nodos de réplicas. Para obtener más información sobre la replicación con Amazon Aurora, consulte la documentación en línea.

Escalado de lectura y recuperación de desastres

Beneficios de las réplicas de lectura de Amazon RDS

Puede reducir la carga sobre la instancia de base de datos de origen enrutando las consultas de lectura de sus aplicaciones a la réplica de lectura. Las réplicas de lectura ofrecen la capacidad de escalar horizontalmente más allá de los límites de capacidad de una única instancia de base de datos para cargas de trabajo de base de datos que realizan un uso intensivo de las lecturas. Dado que es posible convertir las réplicas de lectura a principales, son útiles como parte de una implementación de particiones. Para maximizar aún más el rendimiento de lectura, Amazon RDS para MySQL permite agregar índices de tabla directamente a las réplicas de lectura, aunque esos índices no estén presentes en el principal.
Las réplicas de lectura de Amazon RDS para MySQL, MariaDB, PostgreSQL, Oracle y SQL Server proporcionan un mecanismo complementario de disponibilidad para los despliegues de Amazon RDS Multi-AZ. Puede convertir una réplica de lectura si se produce un error en la instancia de base de datos de origen. También puede configurar una réplica de lectura con su propia instancia en espera en una zona de disponibilidad diferente. Esta funcionalidad complementa la replicación sincrónica, la detección automática de errores y la conmutación por error provistos con implementaciones Multi-AZ.
Cuando crea una réplica de lectura para Amazon RDS para MySQL, MariaDB, PostgreSQL, Oracle y SQL Server, Amazon RDS configura un canal de comunicación seguro mediante un cifrado de clave pública entre la instancia de base de datos de origen y la réplica de lectura, incluso cuando la replicación tiene lugar entre regiones. Amazon RDS establece cualquier configuración de seguridad de AWS (como la incorporación de entradas del grupo de seguridad) necesaria para habilitar el canal seguro. También puede crear réplicas de lectura para las instancias de bases de datos de Amazon RDS para MySQL, MariaDB, PostgreSQL, Oracle y SQL Server cifradas en reposo con AWS Key Management Service (KMS).

Configuración

Mediante la consola de administración de AWS puede agregar fácilmente réplicas de lectura a instancias de base de datos existentes. Utilice la opción “Create Read Replica” (Crear réplica de lectura) correspondiente a su instancia de base de datos en la consola de administración de AWS. Amazon RDS para MySQL, Amazon RDS para PostgreSQL, Amazon RDS para MariaDB y Amazon RDS para SQL Server permiten agregar hasta 15 réplicas de lectura a cada instancia de base de datos. Amazon RDS para Oracle le permite agregar hasta 5 réplicas de lectura a cada instancia de base de datos.

Amazon RDS para MySQL, Amazon RDS para PostgreSQL, Amazon RDS para MariaDB y Amazon RDS para Oracle ofrecen dos opciones basadas en SSD para el almacén de datos: de uso general y para E/S por segundo aprovisionadas. No es necesario que las réplicas de lectura para estos motores utilicen el mismo tipo de almacenamiento que sus instancias de base de datos principales. Es posible que pueda optimizar el rendimiento o los gastos mediante la selección de un tipo de almacenamiento alternativo para las réplicas de lectura. Para obtener más información, consulte la documentación sobre las réplicas de lectura de Amazon RDS para MySQL, Amazon RDS para MariaDB, Amazon RDS para PostgreSQL, Amazon RDS para Oracle y Amazon RDS para SQL Server, así como para Amazon Aurora.

Réplicas de lectura, despliegues Multi-AZ y despliegues en varias regiones

Las réplicas de lectura de Amazon RDS complementan las implementaciones Multi-AZ. Si bien ambas características mantienen una segunda copia de sus datos, hay diferencias entre ellas:

Implementaciones Multi-AZ

Implementaciones en varias regiones

Réplicas de lectura

El objetivo principal es una alta disponibilidad

El objetivo principal es la recuperación ante desastres y el rendimiento local

El objetivo principal es la escalabilidad

Sin Aurora: replicación síncrona; Aurora: replicación síncrona

Replicación asíncrona

Replicación asíncrona

Sin Aurora: solo la instancia principal está activa; Aurora: todas las instancias están activas

Todas las regiones son accesibles y se pueden utilizar para la lectura

Todas las réplicas de lectura son accesibles y se pueden utilizar para la escalabilidad de lectura

Sin Aurora: las copias de seguridad automáticas se hacen a partir de la instancia en espera; Aurora: las copias de seguridad automáticas se hacen a partir de la capa de almacenamiento compartida

Las copias de seguridad automáticas se pueden realizar en cada región

No hay copias de seguridad configuradas de manera predeterminada

Siempre abarca al menos dos zonas de disponibilidad dentro de una sola región

Cada región puede contar con una implementación Multi-AZ

Puede estar dentro de una zona de disponibilidad, entre zonas distintas o entre regiones distintas

Sin Aurora: las actualizaciones de la versión del motor de base de datos ocurren en la instancia principal; Aurora: todas las instancias se actualizan juntas

Sin Aurora: las actualizaciones de la versión del motor de base de datos se ejecutan de forma independiente en cada región; Aurora: todas las instancias se actualizan juntas

Sin Aurora: la actualización de la versión del motor de base de datos es independiente de la instancia de origen; Aurora: todas las instancias se actualizan juntas

Conmutación por error automática al modo de espera (sin Aurora) o réplica de lectura (Aurora) cuando se detecta un problema

Aurora permite ascender una región secundaria para convertirla en la principal

Se puede promocionar manualmente a una instancia de base de datos independiente (sin Aurora) o a una instancia principal (Aurora)

Puede combinar las réplicas de lectura con otras características de Amazon RDS para disfrutar de los beneficios de todas. Por ejemplo, puede configurar una base de datos de origen como Multi-AZ para la alta disponibilidad y crear una réplica de lectura (en Single-AZ) para la escalabilidad de lectura. O puede utilizar Aurora Global Database para replicar datos de su despliegue Multi-AZ de Aurora en regiones adicionales.

Con RDS para MySQL, RDS para MariaDB, RDS para PostgreSQL y RDS para Oracle también puede establecer la réplica de lectura como Multi-AZ, lo que permite utilizarla como objetivo de recuperación de desastres. Cuando ascienda la réplica de lectura para convertirla en una base de datos independiente, ya estará habilitada para Multi-AZ.