O que é o Amazon Relational Database Service (Amazon RDS)? - Amazon Relational Database Service

O que é o Amazon Relational Database Service (Amazon RDS)?

O Amazon Relational Database Service (Amazon RDS) é um serviço da Web que facilita a configuração, a operação e escalabilidade de um banco de dados relacional na Nuvem AWS. Ele fornece capacidade econômica e redimensionável para um banco de dados relacional padrão do setor e gerencia tarefas comuns de administração de banco de dados.

nota

Este guia abrange mecanismos de banco de dados do Amazon RDS diferentes do Amazon Aurora. Para obter informações sobre o Amazon Aurora, consulte o Guia do usuário do Amazon Aurora.

Caso esteja começando a usar os produtos e serviços AWS, passe a saber mais com os seguintes recursos:

Visão geral do Amazon RDS

Por que você deseja executar um banco de dados relacional no Nuvem AWS? Porque o AWS assume muitas das tarefas de gerenciamento difíceis ou entediantes de um banco de dados relacional.

Amazon EC2 e bancos de dados on-premises

O Amazon Elastic Compute Cloud (Amazon EC2) oferece uma capacidade de computação escalável na Nuvem AWS. O Amazon EC2 dispensa a necessidade de investir em hardware inicialmente e, portanto, você pode desenvolver e implantar aplicações com mais rapidez.

Quando você compra um servidor on-premises, recebe CPU, memória, armazenamento e IOPS, todos no mesmo pacote. Com o Amazon EC2, estes elementos se separaram, para que você possa escalá-los independentemente. Se você precisar de mais CPU, menos IOPS ou mais capacidade de armazenamento, poderá alocá-los facilmente.

Para um banco de dados relacional em um servidor on-premises, você assume total responsabilidade pelo servidor, sistema operacional e software. Para um banco de dados em uma instância do Amazon EC2, a AWS gerencia as camadas abaixo do sistema operacional. Dessa maneira, o Amazon EC2 elimina parte do peso de gerenciar um servidor de banco de dados on-premises.

Na tabela a seguir, é possível encontrar uma comparação dos modelos de gerenciamento para bancos de dados on-premises e o Amazon EC2.

Atributo

Gerenciamento on-premises

Gerenciamento do Amazon EC2

Otimização de aplicações

Cliente

Cliente

Escalabilidade

Cliente

Cliente

Alta disponibilidade

Cliente

Cliente

Backups de banco de dados

Cliente

Cliente

Aplicação de patches de softwares para banco de dados

Cliente

Cliente

Instalação de softwares para banco de dados

Cliente

Cliente

Aplicação de patches de sistema operacional (SO)

Cliente

Cliente

Instalação do sistema operacional

Cliente

Cliente

Manutenção do servidor

Cliente

AWS

Ciclo de vida do hardware

Cliente

AWS

Energia, rede e desaquecimento

Cliente

AWS

O Amazon EC2 não é um serviço totalmente gerenciado. Por isso, ao executar um banco de dados no Amazon EC2, há mais chances de erros de usuários. Por exemplo, quando você atualiza o sistema operacional ou o software do banco de dados manualmente, pode acabar causando acidentalmente tempo de inatividade da aplicação. Você pode perder horas verificando todas as alterações para identificar e corrigir um problema.

Amazon EC2 e Amazon RDS

O Amazon RDS é um serviço de banco de dados gerenciado. Ele é responsável pela maioria das tarefas de gerenciamento. Ao eliminar tarefas manuais tediosas, o Amazon RDS libera você para se concentrar na aplicação e nos usuários. Recomendamos o Amazon RDS no lugar do Amazon EC2 como opção padrão para a maioria das implantações de banco de dados.

Na tabela a seguir, é possível encontrar uma comparação dos modelos de gerenciamento no Amazon EC2 e no Amazon RDS.

Atributo

Gerenciamento do Amazon EC2

Gerenciamento do Amazon RDS

Otimização de aplicações

Cliente

Cliente

Escalabilidade

Cliente

AWS

Alta disponibilidade

Cliente

AWS

Backups de banco de dados

Cliente

AWS

Aplicação de patches de softwares para banco de dados

Cliente

AWS

Instalação de softwares para banco de dados

Cliente

AWS

Aplicação de patches de sistema operacional

Cliente

AWS

Instalação do sistema operacional

Cliente

AWS

Manutenção do servidor

AWS

AWS

Ciclo de vida do hardware

AWS

AWS

Energia, rede e desaquecimento

AWS

AWS

O Amazon RDS fornece as seguintes vantagens específicas em relação às implantações de banco de dados que não são totalmente gerenciadas:

  • É possível usar os produtos de banco de dados que já conhece com: Db2, MariaDB, Microsoft SQL Server, MySQL, Oracle e PostgreSQL.

  • O Amazon RDS gerencia backups, patches de software, detecção automática de falhas e recuperação.

  • Você pode ativar backups automatizados ou pode criar manualmente seus próprios snapshots de backup. Você pode usar esses backups para restaurar um banco de dados. O processo de restauração do Amazon RDS funciona de maneira confiável e eficiente.

  • Você pode obter alta disponibilidade com uma instância primária e uma instância secundária síncrona que pode ser usada para failover em caso de problemas. Também é possível usar réplicas de leitura para aumentar a escalabilidade de leitura.

  • Além da segurança em seu pacote de banco de dados, você pode ajudar a controlar quem pode acessar seus bancos de dados do RDS. Para fazer isso, você pode usar o AWS Identity and Access Management (IAM) para definir usuários e permissões. Você também pode ajudar a proteger seus bancos de dados colocando-os em uma nuvem privada virtual (VPC).

Amazon RDS Custom for Oracle e Microsoft SQL Server

O Amazon RDS Custom é um tipo de gerenciamento do RDS que oferece acesso total ao seu banco de dados e ao sistema operacional.

Você pode utilizar os recursos de controle do RDS Custom para acessar e personalizar o ambiente de banco de dados e o sistema operacional para aplicações de negócios herdadas e empacotadas. Enquanto isso, o Amazon RDS automatiza tarefas e operações de administração do banco de dados.

Nesse modelo de implantação, é possível instalar aplicações e alterar as configurações de acordo com essas aplicações. Ao mesmo tempo, você pode descarregar tarefas de administração de banco de dados, como provisionamento, escalabilidade, upgrade e backup, para a AWS. Os benefícios do gerenciamento de banco de dados do Amazon RDS podem ser aproveitados com mais controle e flexibilidade.

Para o Oracle Database e o Microsoft SQL Server, o RDS Custom combina a automação do Amazon RDS com a flexibilidade do Amazon EC2. Para saber mais sobre o RDS Custom, consulte Trabalhar com o Amazon RDS Custom.

Com o modelo de responsabilidade compartilhada do RDS Custom, você tem mais controle do que no Amazon RDS, mas também mais responsabilidades. Para obter mais informações, consulteModelo de responsabilidade compartilhada no RDS Custom

Amazon RDS em AWS Outposts

O Amazon RDS em AWS Outposts amplia os bancos de dados do RDS for SQL Server, RDS for MySQ e RDS para PostgreSQL para ambientes do AWS Outposts. O AWS Outposts usa o mesmo hardware das Regiões da AWS públicas para levar serviços, infraestrutura e modelos de operação da AWS para o ambiente on-premises. Com o RDS no Outposts, é possível provisionar instâncias de banco de dados gerenciados próximo aos aplicativos de negócios que devem ser executados no local. Para obter mais informações, consulteTrabalhar com Amazon RDS on AWS Outposts

Instâncias de banco de dados

Uma instância de banco de dados é um ambiente isolado de banco de dados na Nuvem AWS. O bloco de construção básico do Amazon RDS é a instância do banco de dados.

Sua instância de banco de dados pode conter um ou mais bancos de dados criados pelo usuário. É possível acessar a instância de banco de dados usando as mesmas ferramentas e os mesmos aplicativos usados com uma instância de banco de dados independente. Crie e modifique uma instância de banco de dados usando a AWS Command Line Interface (AWS CLI), a API do Amazon RDS ou o AWS Management Console.

Mecanismos de banco de dados

Um mecanismo de banco de dados é o software de banco de dados relacional específico que é executado na sua instância de banco de dados. Atualmente, o Amazon RDS oferece suporte aos seguintes mecanismos:

  • Db2

  • MariaDB

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

Cada mecanismo de banco de dados tem seus próprios recursos compatíveis, e cada versão de um mecanismo de banco de dados pode incluir recursos específicos. O suporte para recursos do Amazon RDS varia entre Regiões da AWS e versões específicas de cada mecanismo de banco de dados. Para conferir o suporte a recursos em diferentes versões do mecanismo e regiões, consulte Recursos compatíveis com o Amazon RDS por Região da AWS e com o mecanismo de banco de dados.

Além disso, cada mecanismo de banco de dados tem um conjunto de parâmetros em um grupo de parâmetros de banco de dados que controlam o comportamento dos bancos de dados que ele gerencia.

Classes da instância de banco de dados

A classe de instância de banco de dados determina a capacidade de computação e de memória de uma instância de banco de dados. Uma classe de instância de banco de dados consiste no tipo e no tamanho de instância de banco de dados. Cada tipo de instância oferece diferentes capacidades de computação, memória e armazenamento. Por exemplo, db.m6g é uma classe de instância de banco de dados de uso geral com a tecnologia de processadores Graviton2 da AWS. No tipo de instância db.m6g, db.m6g.2xlarge é uma classe de instância de banco de dados.

Você pode selecionar a instância de banco de dados que melhor atende às suas necessidades. Se as suas necessidades mudarem com o passar do tempo, você poderá alterar as instâncias de bancos de dados. Para obter mais informações, consulte Classes de instância de banco de dados .

nota

Para obter informações sobre a definição de preço de classes de instâncias de banco de dados, consulte a seção Definição de preço da página de produto do Amazon RDS.

Armazenamento da instância de banco de dados

O Amazon EBS fornece volumes de armazenamento em bloco duráveis que podem ser anexados a uma instância em execução. O armazenamento de instâncias de banco de dados é fornecido nos seguintes tipos:

  • Finalidade geral (SSD)

  • IOPS provisionadas (PIOPS)

  • Magnético

Os tipos de armazenamento diferem em características de performance e preços. Você pode adaptar o custo e a sua performance de armazenamento às necessidades do seu banco de dados.

Cada instância de banco de dados tem requisitos mínimos e máximos de armazenamento, de acordo com o tipo de armazenamento e o mecanismo de banco de dados compatíveis. É importante ter armazenamento suficiente para que os bancos de dados tenham espaço para se expandir. Além disso, armazenamento suficiente garante que os recursos do mecanismo de banco de dados tenha espaço para escrever conteúdo ou entradas de log. Para obter mais informações, consulteArmazenamento de instâncias de banco de dados do Amazon RDS

Amazon Virtual Private Cloud (Amazon VPC)

É possível executar uma instância de banco de dados em uma nuvem privada virtual (VPC) usando o serviço Amazon Virtual Private Cloud (Amazon VPC). Ao usar uma VPC, você tem controle sobre o ambiente de rede virtual. É possível escolher seu próprio intervalo de endereços IP, criar sub-redes e configurar o roteamento e listas de controle de acesso. A funcionalidade básica do Amazon RDS é a mesma, não importa se ela está sendo executada ou não em uma VPC. O Amazon RDS gerencia backups, patches de software, detecção automática de falhas e recuperação. Não há custos adicionais para executar a instância de banco de dados em uma VPC. Para obter mais informações sobre como usar a Amazon VPC com o RDS, consulte VPCs da Amazon VPC e Amazon RDS.

O Amazon RDS usa o Network Time Protocol (NTP) para sincronizar o tempo em instâncias de banco de dados.

AWSRegiões e zonas de disponibilidade da

Os recursos de computação em nuvem da Amazon estão alojados em instalações de datacenter altamente disponíveis em diferentes áreas do mundo (por exemplo, América do Norte, Europa ou Ásia). Cada localização de datacenter é chamada de uma região da AWS.

Cada região da AWS contém vários locais distintos, chamados de zonas de disponibilidade, ou AZs. Cada zona de disponibilidade é projetada para ser isolada de falhas em outras zonas de disponibilidade. Cada uma é projetada para fornecer conectividade de rede de baixa latência e custo reduzido para outras zonas de disponibilidade na mesma região da AWS. Ao iniciar as instâncias em Zonas de disponibilidade separadas, você pode proteger seus aplicativos de falha de um único local. Para obter mais informações, consulte Regiões, zonas de disponibilidade e Local Zones.

Você pode executar sua instância de banco de dados em várias zonas de disponibilidade, uma opção chamada de implantação multi-AZ. Quando você escolhe essa opção, a Amazon automaticamente provisiona e mantém uma ou mais instâncias de banco de dados secundárias em espera em uma zona de disponibilidade diferente. A instância de banco de dados primária é replicada ao longo das zonas de disponibilidade em todas as instâncias de banco de dados secundárias. Essa abordagem ajuda a fornecer redundância de dados e suporte a failover, eliminar congelamentos de E/S e minimizar picos de latência durante backups do sistema. Em uma implantação de clusters de banco de dados multi-AZ, as instâncias de banco de dados secundárias também podem disponibilizar tráfego de leitura. Para obter mais informações, consulteConfigurar e gerenciar uma implantação multi-AZ

Segurança

Um grupo de segurança controla o acesso a uma instância de banco de dados. Ele faz isso permitindo acesso aos intervalos de endereços IP ou instâncias do Amazon EC2 que você especificar.

Para obter mais informações sobre grupo de seguranças, consulte Segurança no Amazon RDS.

Monitoramento do Amazon RDS

Existem várias maneiras de controlar a performance e a integridade de uma instância de banco de dados. Você pode usar o serviço gratuito do Amazon CloudWatch para monitorar a performance e a integridade de uma instância. Os gráficos de performance do CloudWatch são exibidos no console do Amazon RDS. Também é possível assinar eventos do Amazon RDS para receber notificações sobre alterações em uma instância de banco de dados, em um snapshot de banco de dados ou em um grupo de parâmetros de banco de dados. Para obter mais informações, consulteMétricas de monitoramento em uma instância do Amazon RDS

Como trabalhar com o Amazon RDS

Existem várias maneiras de interagir com o Amazon RDS.

AWS Management Console

O AWS Management Console é uma interface de usuário simples e baseada na Web. Você pode gerenciar suas instâncias de banco de dados a partir do console sem necessidade de programação. Para acessar o console do Amazon RDS, faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

Interface da linha de comando

Você pode usar a AWS Command Line Interface (AWS CLI) para acessar interativamente a API do Amazon RDS. Para instalar a AWS CLI, consulte Instalação da AWSinterface da linha de comando. Para começar a usar a AWS CLI para o RDS, consulte a referência da AWS Command Line Interface para o Amazon RDS.

APIs do Amazon RDS

Se você for desenvolvedor, poderá acessar o Amazon RDS de forma programática usando APIs. Para obter mais informações, consulteReferência da API do Amazon RDS

Para desenvolvimento de aplicativos, recomendamos usar um dos Kits de desenvolvimento de software (SDKs) da AWS. Os SDKs AWS contêm detalhes de nível baixo, como autenticação, lógica de nova tentativa e gerenciamento de erros, para que você possa se concentrar na lógica da aplicação. AWS Os SDKs estão disponíveis para uma ampla variedade de linguagens. Para obter mais informações, consulte Ferramentas para a Amazon Web Services .

AWSA também fornece bibliotecas, código de exemplo, tutoriais e outros recursos para ajudar você a começar de maneira mais fácil. Para obter mais informações, consulte Código de exemplo e bibliotecas.

Como você é cobrado pelo Amazon RDS

Quando você usa o Amazon RDS, você pode optar por usar instâncias de banco de dados sob demanda ou instâncias de banco de dados reservadas. Para obter mais informações, consulte Faturamento da instância de banco de dados para Amazon RDS.

Para obter informações sobre a definição de preço do Amazon RDS, consulte a página de produto do Amazon RDS.

Próximas etapas

Na seção anterior, você conheceu os componentes de infraestrutura básicos que o RDS oferece. O que você deve fazer em seguida?

Conceitos básicos

Criar uma instância de banco de dados usando as instruções em Conceitos básicos do Amazon RDS.

Tópicos específicos para mecanismos de banco de dados

Você pode rever informações específicas para um determinado mecanismo de banco de dados nas seções a seguir:

Modelo de responsabilidade compartilhada do Amazon RDS

O Amazon RDS é responsável por hospedar os componentes de software e a infraestrutura de instâncias de banco de dados e clusters de banco de dados. Você é responsável pelo ajuste das consultas, que é o processo de ajustar as consultas SQL para melhorar a performance. A performance de consulta é altamente dependente do design do banco de dados, do tamanho dos dados, da distribuição dos dados, da workload da aplicação e dos padrões de consulta, que podem variar muito. Monitoramento e ajuste são processos altamente individualizados que você controla para seus bancos de dados do RDS. É possível usar o recurso Insights de Performance do Amazon RDS e outras ferramentas para identificar consultas problemáticas.