Amazon RDS - Recursos do PostgreSQL
PostgreSQL é um poderoso sistema de banco de dados relacional de objeto de código aberto que conquistou uma forte reputação por confiabilidade, robustez de recursos e desempenho. O AWS RDS executa várias versões do PostgreSQL. Ele suporta restauração e backups point-in-time, criação de snapshots de banco de dados e execução em um ambiente multi-AZ.
As versões 9.3 a 10.4 são as principais versões com suporte na plataforma RDS. Se nenhuma versão for mencionada durante a criação do banco de dados, o padrão será a versão mais recente naquele momento. Abaixo está um exemplo de como obter todas as versões do DB Engine com suporte usando a API AWS em um programa SDK python.
import boto3
client = boto3.client('rds')
response = client.describe_db_engine_versions(
DBParameterGroupFamily='',
DefaultOnly=True,
Engine='postgres',
EngineVersion='',
ListSupportedCharacterSets=False, #True,
)
print(response)
Quando executamos o programa acima, obtemos a seguinte saída -
{
"ResponseMetadata": {
"RetryAttempts": 0,
"HTTPStatusCode": 200,
"RequestId": "c85cd49f-2c16-44b4-9890-cb233651f962",
"HTTPHeaders": {
"x-amzn-requestid": "c85cd49f-2c16-44b4-9890-cb233651f962",
"date": "Fri, 14 Sep 2018 07:31:34 GMT",
"content-length": "995",
"content-type": "text/xml"
}
},
"u'DBEngineVersions'": [
{
"u'Engine'": "postgres",
"u'DBParameterGroupFamily'": "postgres10",
"u'SupportsLogExportsToCloudwatchLogs'": false,
"u'SupportsReadReplica'": true,
"u'DBEngineDescription'": "PostgreSQL",
"u'EngineVersion'": "10.4",
"u'DBEngineVersionDescription'": "PostgreSQL 10.4-R1",
"u'ValidUpgradeTarget'": []
}
]
}
A comunidade PostgreSQL lança novas versões e novas extensões continuamente. Você pode experimentar novas versões e extensões do PostgreSQL antes de serem totalmente compatíveis com o Aws RDS. Para fazer isso, você pode criar uma nova instância de banco de dados no ambiente de visualização do banco de dados.
As instâncias de banco de dados no Database Preview Environment são semelhantes às instâncias de banco de dados em um ambiente de produção. No entanto, tenha em mente vários fatores importantes:
Todas as instâncias de banco de dados são excluídas 60 dias após sua criação, junto com quaisquer backups e instantâneos.
Você só pode criar uma instância de banco de dados em uma nuvem privada virtual (VPC) com base no serviço Amazon VPC.
Você só pode criar tipos de instância M4, T2 e R4. Para obter mais informações sobre classes de instância RDS,
Você não pode obter ajuda do AWS Support com instâncias de banco de dados. Você pode postar suas perguntas no Fórum do ambiente de visualização do banco de dados RDS.
Você só pode usar SSD de uso geral e armazenamento SSD IOPS provisionado.
Você não pode copiar um instantâneo de uma instância de banco de dados para um ambiente de produção.
Alguns recursos do Amazon RDS não estão disponíveis no ambiente de visualização, conforme descrito a seguir.
A replicação lógica é um método de replicação de objetos de dados e suas alterações, com base em sua identidade de replicação (geralmente uma chave primária). A replicação lógica usa um modelo de publicação e assinatura com um ou mais assinantes assinando uma ou mais publicações em um nó do editor. Os assinantes obtêm dados das publicações que assinam e podem publicar novamente os dados para permitir a replicação em cascata ou configurações mais complexas. Ele é usado para as ações abaixo.
Envio de alterações incrementais em um único banco de dados ou subconjunto de um banco de dados aos assinantes à medida que ocorrem.
Consolidar vários bancos de dados em um único (por exemplo, para fins analíticos).
Replicando entre diferentes versões principais do PostgreSQL.
Replicação entre instâncias PostgreSQL em plataformas diferentes (por exemplo, Linux para Windows)
Dar acesso a dados replicados para diferentes grupos de usuários.
Compartilhando um subconjunto do banco de dados entre vários bancos de dados.
Para habilitar a replicação lógica para uma instância de banco de dados Amazon RDS para PostgreSQL
A conta do usuário AWS requer a função rds_superuser para executar a replicação lógica para o banco de dados PostgreSQL no Amazon RDS.
Defina o parâmetro rds.logical_replication como 1.
Modifique as regras de entrada do grupo de segurança para a instância do publicador (produção) para permitir que a instância do assinante (réplica) se conecte. Isso geralmente é feito incluindo o endereço IP do assinante no grupo de segurança.