As réplicas de leitura do Amazon RDS proporcionam desempenho e durabilidade melhores para instâncias de banco de dados. Esse recurso facilita o aumento da escala horizontal de maneira elástica além das restrições de capacidade de uma única instância de banco de dados para cargas de trabalho de banco de dados com uso intenso de leitura. Você pode criar uma ou mais réplicas de uma determinada instância de banco de dados de origem e atender ao alto volume de tráfego de leitura de aplicativos usando várias cópias dos dados, aumentando dessa forma o throughput de leitura agregado. Quando necessário, as réplicas de leitura também podem ser promovidas para instâncias de banco de dados autônomas. As réplicas de leitura estão disponíveis no Amazon RDS for MySQL, MariaDB e PostgreSQL, bem como para o Amazon Aurora.

Para os mecanismos de banco de dados MySQL, MariaDB e PostgreSQL, o Amazon RDS cria uma segunda instância de banco de dados usando um snapshot da instância de banco de dados de origem. Em seguida, o Amazon RDS usa a replicação assíncrona nativa dos mecanismos para atualizar a réplica de leitura sempre que a instância de banco de dados de origem é alterada. A réplica de leitura opera como uma instância de banco de dados que permite somente conexões para leitura. Os aplicativos podem conectar-se a uma réplica de leitura da mesma forma como fariam com qualquer outra instância de BD. O Amazon RDS replica todos os bancos de dados na instância de banco de dados de origem.

O Amazon Aurora usa uma camada de armazenamento virtualizado com SSD criada especificamente para cargas de trabalho de banco de dados. As réplicas do Amazon Aurora compartilham o mesmo armazenamento subjacente da instância de origem, reduzindo custos e evitando a necessidade de copiar dados para os nós de réplica. Para obter mais informações sobre replicação com o Amazon Aurora, consulte a documentação online.

Comece a usar a AWS gratuitamente

Crie uma conta gratuita

O nível gratuito da AWS inclui 750 horas de microinstância de banco de dados por mês durante um ano, 20 GB de armazenamento e 20 GB para backups com o Amazon Relational Database Service (RDS).

Consulte os detalhes do nível gratuito da AWS »

Você pode reduzir a carga de uma instância de banco de dados de origem roteando consultas de leitura dos aplicativos para a réplica de leitura. As réplicas de leitura permitem que você aumente a escala horizontal de forma elástica além das restrições de capacidade de uma única instância de banco de dados para cargas de trabalho de banco de dados com uso elevado da leitura.

Para maximizar o desempenho de leitura, o Amazon RDS for MySQL permite que você adicione índices de tabela diretamente às réplicas de leitura, sem que esses índices estejam presentes no principal.

Como as réplicas de leitura podem ascender ao status de principal, elas são úteis como parte de uma implementação de estilhaço. Para estilhaçar seu banco de dados, adicione uma réplica de leitura e promova-a ao status de principal. Em seguida, por meio de cada instância de banco de dados resultante, exclua os dados pertencentes ao outro estilhaço.

Como o mecanismo do Amazon RDS for MySQL também permite que você execute ações em toda a tabela, como adicionar índices ou novas colunas a réplicas de leitura, é possível usar o recurso de promoção de réplica para minimizar o impacto dessas ações. Direcione o DDL da ação para a réplica de leitura, promova essa réplica de leitura ao status de principal e redirecione o tráfego do banco de dados para o novo principal.

As réplicas de leitura no Amazon RDS for MySQL, MariaDB e PostgreSQL oferecem um mecanismo de disponibilidade complementar para implantações Multi-AZ do Amazon RDS. É possível promover uma réplica de leitura, no caso de falha da instância de banco de dados. Também é possível replicar instâncias de banco de dados entre regiões da AWS como parte da estratégia de recuperação de desastres. Esta funcionalidade complementa a replicação síncrona, a detecção automática de falhas e o failover disponibilizado com implantações Multi-AZ.

Ao criar uma réplica de leitura do Amazon RDS for MySQL, MariaDB e PostgreSQL, o Amazon RDS configura um canal de comunicação seguro usando a criptografia de chave pública entre a instância de banco de dados de origem e a réplica de leitura, mesmo durante a replicação entre regiões. O Amazon RDS estabelece qualquer configuração de segurança da AWS, como a adição de entradas de security group, necessária para ativar o canal seguro.

Também é possível criar réplicas de leitura dentro de uma região ou entre regiões para instâncias de banco de dados do Amazon RDS for MySQL, MariaDB e PostgreSQL criptografadas em repouso usando o AWS Key Management Service (KMS).

As réplicas de leitura são cobradas com as mesmas taxas das instâncias de banco de dados padrão, e as reservas de instância de banco de dados padrão (instâncias reservadas do RDS) da mesma classe e região da instância de banco de dados podem ser aplicadas às réplicas de leitura. Para obter detalhes, consulte a página de definição de preço do Amazon RDS.

Ao usar o Console de Gerenciamento da AWS, você pode adicionar facilmente réplicas de leitura a instâncias de banco de dados atuais. Use a opção "Create Read Replica" correspondente à sua instância de banco de dados no Console de Gerenciamento da AWS. O Amazon RDS for MySQL, MariaDB e PostgreSQL permite adicionar até cinco réplicas de leitura a cada instância de banco de dados.

O Amazon RDS for MySQL, MariaDB e PostgreSQL oferece duas opções baseadas em SSD para armazenamento de banco de dados: uso geral e IOPS provisionadas. As réplicas de leitura desses mecanismos não devem usar o mesmo tipo de armazenamento que suas instâncias de banco de dados principais. Você poderá otimizar seu desempenho ou seus gastos ao selecionar um tipo de armazenamento alternativo para réplicas de leitura.

As réplicas de leitura do Amazon RDS complementam as implantações Multi-AZ. Embora ambos os recursos mantenham uma segunda cópia dos dados, há diferenças entre os dois:

Implantações Multi-AZ Réplicas de leitura
Replicação síncrona – altamente resiliente Replicação assíncrona – altamente escalável
Somente o mecanismo de banco de dados da instância primária está ativo Todas as réplicas de leitura podem ser acessadas e usadas para escalabilidade de leitura
Backups automáticos são realizados usando a espera Nenhum backup configurado por padrão
Abrange sempre duas zonas de disponibilidade em uma única região Pode estar em uma zona de disponibilidade, em várias zonas de disponibilidade ou em várias regiões
Os upgrades de versão do mecanismo de banco de dados ocorrem no primário O upgrade de versão do mecanismo de banco de dados é independente da instância de origem
Failover automático para a espera quando um problema é detectado Pode ser promovido manualmente para uma instância de banco de dados autônoma

É possível combinar implantações Multi-AZ e réplicas de leitura para aproveitar os benefícios dos dois recursos. Por exemplo, você pode configurar um banco de dados de origem como Multi-AZ para alta disponibilidade e criar uma réplica de leitura (em Single-AZ) para escalabilidade de leitura.

Com o RDS for MySQL e MariaDB, também é possível definir a réplica de leitura como Multi-AZ, o que permite usar a réplica de leitura como um destino de recuperação de desastres. Quando você promover a réplica de leitura para um banco de dados autônomo, ele já será habilitado para Multi-AZ. Note que o RDS for PostgreSQL ainda não oferece suporte para esse recurso.