Visualize e altere o modo de replicação de dados de uma instância ApsaraDB RDS for PostgreSQL para otimizar o desempenho ou a disponibilidade do banco de dados.
Pré-requisitos
A instância utiliza a High-availability Edition com discos em nuvem.
Para alterar o Data Replication Mode para Semi-synchronous, a versão secundária do mecanismo deve ser 20220228 ou posterior. Atualize a versão secundária do mecanismo.
Modos de replicação de dados
As instâncias da High-availability Edition (disco em nuvem) do ApsaraDB RDS for PostgreSQL oferecem suporte a três modos de replicação de dados, cada um com diferentes compensações entre desempenho e durabilidade dos dados.
A tabela a seguir descreve cada modo.
|
Modo de replicação de dados |
Nível de proteção |
Descrição |
|
Modo assíncrono (padrão) |
Maior desempenho |
Tempo de resposta mais rápido. Ideal quando a durabilidade dos dados não é uma prioridade elevada. |
|
Modo síncrono |
Proteção máxima |
Maior durabilidade dos dados, porém com tempos de resposta mais lentos. Recomendado para requisitos rigorosos de consistência de dados. |
|
Modo semissíncrono |
Maior disponibilidade |
Equilibra durabilidade dos dados e tempo de resposta. |
Visualizar o modo de replicação de dados
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Service Availability.
-
Visualize o modo de replicação de dados na seção Availability Information.
Por exemplo, o valor pode exibir Asynchronous.
Alterar o modo de replicação de dados
Console
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Service Availability.
-
Clique em Change Data Replication Mode.
Este link encontra-se no canto superior direito da seção Instance Availability.
-
Selecione o Data Replication Mode.
Na caixa de diálogo de confirmação, selecione Synchronous, Semi-synchronous ou Asynchronous e clique em OK.
ImportantePara alterar o Data Replication Mode para Semi-synchronous, a versão secundária do mecanismo deve ser 20220228 ou posterior. Atualize a versão secundária do mecanismo.
Clique em OK.
Parameters
Defina o modo de replicação de dados modificando os parâmetros synchronous_commit, rds_sync_replication_timeout e synchronous_standby_names.
Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em ID da instância.
No painel de navegação à esquerda, clique em Parameters.
Na aba Editable Parameters, localize os parâmetros synchronous_commit, rds_sync_replication_timeout e synchronous_standby_names.
-
Clique em
para modificar o valor do parâmetro e clique em OK.A tabela a seguir lista as configurações de parâmetros para cada modo.
Modo de replicação de dados
Configurações de parâmetros
Modo assíncrono
synchronous_commit = off
NotaSe synchronous_commit estiver definido como off, rds_sync_replication_timeout não terá efeito.
Modo síncrono
-
synchronous_commit = remote_write
-
rds_sync_replication_timeout = 0
-
synchronous_standby_names = 'standby1'
ImportanteCaso possua uma instância standby autogerenciada, não a nomeie como standby1, pois o valor padrão de synchronous_standby_names é standby1. Se um conflito de nomes fizer com que a replicação síncrona ou semissíncrona selecione a instância incorreta, o RDS não poderá garantir perda zero de dados durante o failover entre primária e standby.
Modo semissíncrono
NotaPara modificar o Data Replication Mode para Semi-synchronous, a versão secundária do mecanismo deve ser 20220228 ou posterior. Atualize a versão secundária do mecanismo.
-
synchronous_commit = remote_write
-
rds_sync_replication_timeout > 0
NotaO valor de rds_sync_replication_timeout especifica o tempo limite de sincronização em milissegundos. Intervalo: 0–300.000. Recomendado: 500. Ao atingir o tempo limite, o sistema degrada para o modo assíncrono e retorna ao modo semissíncrono após a conclusão da sincronização.
-
synchronous_standby_names = 'standby1'
ImportanteCaso possua um banco de dados standby autogerenciado, não o nomeie como standby1, pois o valor padrão de synchronous_standby_names é standby1. Um conflito de nomes pode fazer com que a replicação selecione a instância incorreta, impedindo que o RDS garanta perda zero de dados durante o failover entre primária e standby.
-
Clique em Apply Changes.