Uso de réplicas de lectura en cascada con RDS para PostgreSQL
A partir de la versión 14.1, RDS para PostgreSQL admite réplicas de lectura en cascada. Con réplicas de lectura en cascada, puede escalar las lecturas sin agregar sobrecarga a su instancia de base de datos de RDS para PostgreSQL de origen. La instancia de base de datos de origen no envía las actualizaciones del registro WAL a cada réplica de lectura. En cambio, cada réplica de lectura de una serie en cascada envía actualizaciones de registro WAL a la siguiente réplica de lectura de la serie. Esto reduce la carga de la instancia de base de datos de origen.
Con réplicas de lectura en cascada, la instancia de base de datos de RDS para PostgreSQL envía datos WAL a la primera réplica de lectura de la cadena. Esa réplica de lectura envía datos WAL a la segunda réplica de la cadena, etc. El resultado final es que todas las réplicas de lectura de la cadena tienen los cambios de la instancia de base de datos de RDS para PostgreSQL, pero sin la sobrecarga únicamente en la instancia de base de datos de origen.
Puede crear una serie de hasta tres réplicas de lectura en cadena a partir de una instancia de base de datos RDS para PostgreSQL de origen. Por ejemplo, suponga que tiene una instancia de base de datos de RDS para PostgreSQL 14.1, rpg-db-main. Puede hacer lo siguiente:
-
A partir de
rpg-db-main, cree la primera réplica de lectura de la cadena,read-replica-1. -
A continuación, a partir de
read-replica-1, cree la siguiente réplica de lectura de la cadena,read-replica-2. -
Por último, a partir de
read-replica-2, cree la tercera réplica de lectura de la cadena,read-replica-3.
No se puede crear otra réplica de lectura más allá de esta tercera réplica de lectura en cascada de la serie para rpg-db-main. Una serie completa de instancias desde una instancia de base de datos de origen de RDS para PostgreSQL hasta el final de una serie de réplicas de lectura en cascada puede constar de cuatro instancias de base de datos como máximo.
Para que las réplicas de lectura en cascada funcionen, active las copias de seguridad automáticas en su RDS para PostgreSQL. Cree primero la réplica de lectura y, a continuación, active las copias de seguridad automáticas en la instancia de base de datos de RDS para PostgreSQL. El proceso es el mismo que para otros motores de base de datos de Amazon RDS. Para obtener más información, consulte Creación de una réplica de lectura.
Al igual que con cualquier réplica de lectura, puede promocionar una réplica de lectura que forma parte de una cascada. La promoción de una réplica de lectura desde dentro de una cadena de réplicas de lectura elimina esa réplica de la cadena. Por ejemplo, suponga que desea quitar parte de la carga de trabajo de su Instancia de base de datos de rpg-db-main a una nueva instancia para que la utilice únicamente el departamento de contabilidad. Tomando la cadena de tres réplicas de lectura del ejemplo, decide promocionar read-replica-2. La cadena se ve afectada de la siguiente manera:
-
Promover
read-replica-2la elimina de la cadena de replicación.-
Ahora es una instancia de base de datos de lectura o escritura completa.
-
Continúa replicando en
read-replica-3, tal como hacía antes de la promoción.
-
-
Su
rpg-db-mainsigue replicándose enread-replica-1.
Para obtener más información acerca de la promoción de réplicas de lectura, consulte Promoción de una réplica de lectura para convertirla en una instancia de base de datos independiente.
nota
-
RDS para PostgreSQL no admite actualizaciones de versiones principales para réplicas en cascada. Antes de realizar una actualización de versión principal, debe eliminar las réplicas en cascada. Puede volver a crearlas después de completar la actualización en la instancia de base de datos de origen y en las réplicas de primer nivel.
-
Para las réplicas de lectura en cascada, RDS para PostgreSQL admite 15 réplicas de lectura para cada instancia de base de datos de origen en el primer nivel de replicación y 5 réplicas de lectura para cada instancia de base de datos de origen en el segundo y tercer nivel de replicación.