O Amazon DynamoDB é um serviço de banco de dados NoSQL sem servidor que aceita modelos de dados de chave/valor e documentos. Os desenvolvedores podem usá-lo para criar aplicações modernas menores sem servidor e, depois, ajustar a escala delas em nível mundial. Ele é escalável e aceita tabelas de quase todos os tamanhos, com escalabilidade horizontal automatizada.

O serviço processa mais de 10 trilhões de solicitações por dia de maneira consistente. A disponibilidade, a durabilidade e a tolerância a falhas são integradas, e não é possível desativá-las, o que elimina a necessidade de arquitetar as aplicações para esses recursos.

O Amazon DynamoDB foi criado para executar aplicações de alta performance e na escala da Internet que sobrecarregariam bancos de dados relacionais tradicionais. Com mais de 10 anos de investimento pioneiro em inovação, o serviço oferece escalabilidade ilimitada com performance consistente de até 9 ms e disponibilidade de até 99,999%.

Para saber mais sobre novos atributos e recursos, confira os anúncios das novidades do Amazon DynamoDB.

O que é o Amazon DynamoDB?

Performance de tecnologia sem servidor com escalabilidade ilimitada

Modelos de dados de documentos e chave/valor

O Amazon DynamoDB é compatível com modelos de dados de documentos e chave/valor. Como um banco de dados NoSQL, o serviço tem um esquema flexível para que cada item possa ter muitos atributos diferentes. Esse esquema permite se adaptar facilmente às mudanças nos requisitos comerciais, sem o problema de ter que redefinir o esquema de tabelas, como acontece em bancos de dados relacionais.

Tecnologia sem servidor que pode ser escalada para zero

Com esse serviço, você não precisa provisionar, corrigir nem gerenciar servidores, muito menos instalar, reparar ou operar softwares. Ele não tem versões (principais, secundárias ou de patch) nem janelas de manutenção e permite fazer manutenções sem tempo de inatividade. O Amazon DynamoDB oferece um modelo de preços sob demanda conforme o uso, escala para zero e adapta automaticamente as tabelas para ajustar a capacidade e manter a performance sem administração.

Transações ACID

O Amazon DynamoDB foi criado para workloads essenciais à missão, com suporte para transações de atomicidade, consistência, isolamento e durabilidade (ACID) para aplicações que exigem uma lógica comercial complexa. Ele oferece suporte nativo no lado do servidor para transações, simplificando a experiência do desenvolvedor ao fazer alterações de tudo ou nada em vários itens dentro e entre tabelas.

Agora, o serviço oferece suporte a 100 ações por transação, melhorando a produtividade do desenvolvedor. Com o suporte para transações, os desenvolvedores podem estender a escala, a performance e os benefícios empresariais do Amazon DynamoDB, um conjunto mais amplo de workloads de missão crítica.

Replicação ativa/ativa com tabelas globais

As tabelas globais do Amazon DynamoDB permitem replicação ativa/ativa dos dados em todas as regiões da AWS de sua escolha com disponibilidade de 99,999%. As tabelas globais são multiativas, o que significa que você pode gravar e ler de qualquer réplica e que as aplicações distribuídas globalmente podem acessar dados localmente nas regiões selecionadas para obter performance de leitura e de gravação inferior a 10 ms.

Além disso, as tabelas globais escalam automaticamente a capacidade para acomodar workloads multirregionais. As tabelas globais melhoram a resiliência multirregional da aplicação e devem ser consideradas parte da estratégia de continuidade de negócios da sua organização.

Amazon DynamoDB Streams como parte de uma arquitetura orientada por eventos

Esse recurso captura dados em mudança. Sempre que uma aplicação cria, atualiza ou exclui itens em uma tabela, o Amazon DynamoDB Streams registra uma sequência cronológica de cada alteração no item quase em tempo real, tornando-o ideal para que aplicações de arquitetura orientadas a eventos consumam e apliquem as mudanças. Todas as mudanças passam por desduplicação e são armazenadas por 24 horas.

As aplicações também podem acessar esse registro e visualizar os itens de dados como eles apareciam antes e depois de serem modificados em tempo quase real. O Amazon DynamoDB Streams garante que cada registro da transmissão apareça exatamente uma vez na transmissão e, para cada item modificado, os registros da transmissão aparecem na mesma sequência das modificações reais do item.

Índices secundários

Semelhante a todos os outros sistemas de banco de dados, você começa criando uma tabela que é uma coleção de itens. Com o Amazon DynamoDB, cada item na tabela tem sua própria chave primária. Muitas aplicações também podem se beneficiar de uma ou mais chaves secundárias para pesquisar dados com mais eficiência usando outros atributos. O serviço oferece a opção de criar índices secundários globais e locais, o que permite consultar os dados na tabela usando uma chave secundária ou alternativa.

Os índices secundários globais também são conhecidos como índices esparsos. Além de oferecer a máxima flexibilidade no acesso a seus dados, você pode provisionar menor throughput de gravação com excelente performance a um custo menor.

Segurança e confiabilidade

O Amazon DynamoDB ajuda a proteger seus dados com criptografia e faz backup contínuo dos dados para proteção.

Controle de acesso detalhado

Com o Amazon DynamoDB, não há nomes de usuário nem senhas. O Amazon DynamoDB usa o gerenciamento de identidade e acesso (IAM) da AWS para autenticar, criar e acessar recursos. Você pode especificar as políticas do IAM, políticas baseadas em recursos e condições que permitem acesso detalhado, restringindo o acesso de leitura ou de gravação a itens e atributos específicos em uma tabela com base na identidade do usuário. Isso permite aos clientes aplicar políticas de segurança no nível do código.

Criptografia de dados em repouso

O Amazon DynamoDB criptografa todos os dados em repouso do cliente por padrão. A criptografia em repouso aumenta a segurança dos dados usando chaves de criptografia armazenadas no AWS Key Management Service (AWS KMS). Com a adição do SDK de criptografia de banco de dados da AWS, é possível realizar criptografia em nível de atributo para reforçar ainda mais o controle de acesso granular aos dados em sua tabela. Com o Amazon DynamoDB, você pode criar aplicações sigilosas que atendam a requisitos rigorosos de conformidade e regulamentação de criptografia.

As chaves de criptografia fornecem uma camada adicional de proteção de dados ao proteger os dados contra o acesso não autorizado ao armazenamento subjacente. Você pode especificar se o Amazon DynamoDB deve usar uma chave de propriedade da AWS (tipo de criptografia padrão), uma chave gerenciada pela AWS ou uma chave gerenciada pelo cliente para criptografar os dados do usuário. A criptografia padrão que usa chaves do KMS de propriedade da AWS é fornecida sem custo adicional.

Recuperação para um ponto no tempo

A recuperação para um ponto no tempo (PITR) ajuda a proteger as tabelas do Amazon DynamoDB contra operações acidentais de gravação ou exclusão. A PITR oferece backups contínuos dos dados de suas tabelas, e você pode recuperá-las para qualquer momento durante os 35 dias anteriores.

A PITR não usa capacidade provisionada e não tem impacto na performance ou na disponibilidade de suas aplicações. Para habilitar a PITR ou iniciar operações de backup e restauração, basta um único clique no Console de Gerenciamento da AWS ou uma única chamada de API.

Backup e restauração sob demanda

O backup e a restauração sob demanda permitem criar backups completos dos dados das tabelas do Amazon DynamoDB para arquivamento de dados, ajudando a cumprir requisitos normativos corporativos e governamentais. Você pode fazer backup de tabelas de alguns megabytes a centenas de terabytes de dados, sem afetar a performance ou a disponibilidade das aplicações de produção. Com a integração do AWS Backup, você também pode copiar backups sob demanda entre contas e regiões, etiquetar a alocação de custos para backups e fazer a transição de backups para armazenamento de baixa atividade.

Conectividade de rede privada

O Amazon DynamoDB oferece suporte a endpoints de gateway da nuvem privada virtual (VPC) e endpoints da VPC de interface para conexões dentro de uma VPC ou de data centers on-premises. É possível configurar a conectividade de rede privada de suas aplicações on-premises com o DynamoDB por meio de endpoints da VPC de interface habilitados com o AWS PrivateLink. Isso permite que os clientes simplifiquem a conectividade privada com o DynamoDB e mantenham a conformidade.

Relação custo-benefício

Modos de capacidade de leitura/gravação

O Amazon DynamoDB oferece dois modos de capacidade para cada tabela: sob demanda e provisionada.

  •  Para workloads menos previsíveis para as quais você não tem certeza se terá alta utilização, o modo de capacidade sob demanda lida com o gerenciamento da capacidade, e você paga somente pelo que consome.
  • As tabelas que usam o modo de capacidade provisionada exigem que você defina a capacidade de leitura e gravação. O modo de capacidade provisionada é mais econômico quando você tem certeza de que terá uma utilização razoável da capacidade provisionada que você especificar. 

Modo sob demanda

Para tabelas que usam o modo de capacidade sob demanda, o Amazon DynamoDB acomoda instantaneamente as workloads à medida que se expandem ou reduzem para qualquer nível de tráfego atingido anteriormente. Se o nível de tráfego de uma workload atingir um novo pico, o serviço fará adaptações rapidamente para acomodá-la. Você pode usar o modo de capacidade sob demanda para tabelas novas e existentes e continuar usando as APIs do Amazon DynamoDB sem alterar códigos.

Classe de tabela Standard Infrequent Access (Standard-IA)

Para dados acessados com pouca frequência, você pode usar a classe de tabela Standard-IA do Amazon DynamoDB, que ajuda a reduzir os custos do serviço em até 60%. As tabelas Standard-IA de baixo custo de armazenamento foram projetadas para o armazenamento de longo prazo de dados acessados com pouca frequência, como registros de aplicações, dados históricos de jogos, publicações antigas em redes sociais e muito mais. Elas têm a mesma disponibilidade, durabilidade e performance das tabelas Standard do Amazon DynamoDB, que são a opção padrão e mais econômica para a maioria das workloads.

Ajuste de escala automático para maior eficiência de custos

Para tabelas que usam capacidade provisionada, o Amazon DynamoDB oferece ajuste de escala automático de throughput e armazenamento com base na capacidade definida anteriormente, monitorando o uso da performance da sua aplicação

  • Se o tráfego da aplicação aumenta, o serviço aumenta o throughput para acomodar a carga.
  • Se o tráfego da aplicação diminui, ele reduz a escala verticalmente para que você possa pagar menos pela capacidade não utilizada.

Capacidade reservada

A capacidade reservada oferece a opção de reservar a capacidade do banco de dados por um período de 1 ou 3 anos em troca de um desconto significativo em comparação com a capacidade provisionada, para unidades de capacidade de leitura e gravação de uma única região na tabela padrão do Amazon DynamoDB. Se a aplicação tiver um throughput previsível de leituras e gravações, considere a capacidade reservada, que pode gerar uma economia de até 54% em relação às taxas de capacidade provisionada padrão por 1 ano ou de até 77% por um período de 3 anos.

Nível gratuito

O Amazon DynamoDB oferece um nível gratuito generoso para quem busca uma forma sem riscos de experimentar os recursos do serviço.

Integrações com os serviços da AWS

Ao escolher o Amazon DynamoDB, você pode se beneficiar da ampla variedade de integrações com outros serviços da AWS, como proteção de dados com o AWS Backup.

Latência de microssegundos com o Amazon DynamoDB Accelerator

O Amazon DynamoDB Accelerator (DAX) é um serviço de cache compatível que oferece performance rápida de leitura para tabelas em grande escala, permitindo usar um cache de memória totalmente gerenciado. Usando o DAX, é possível aprimorar a performance de leitura de tabelas do Amazon DynamoDB em até 10 vezes, de milissegundos para microssegundos, mesmo com milhões de solicitações por segundo. Saiba mais sobre os recursos e preços do DAX.

Importação/exportação em massa do Amazon Simple Storage Service (S3)

A importação/exportação em massa do S3 ajuda a aproveitar melhor seus dados, eliminando a necessidade de escrever código para migrar, transformar e copiar tabelas do Amazon DynamoDB de uma aplicação, conta ou região para outra. A importação/exportação em massa não usa a capacidade de leitura ou gravação da tabela, então não é preciso planejar nem provisionar capacidade extra. O processo de importação/exportação em massa é totalmente gerenciado pelo Amazon DynamoDB.

As importações em massa do S3 permitem que você importe dados em qualquer escala, de megabytes a terabytes, usando formatos compatíveis, incluindo CSV, Amazon DynamoDB JSON e Amazon Ion. Com as importações em massa do S3, os clientes podem economizar até 66% em comparação com gravações baseadas no cliente usando a capacidade provisionada.

Com exportações em massa para o S3, você pode exportar dados de tabelas com PITR habilitadas para qualquer momento nos últimos 35 dias com detalhamento de segundos. Depois de exportar dados do Amazon DynamoDB para o Amazon S3, você pode usar outros serviços da AWS, como Amazon Athena, Amazon SageMaker e muito mais, para analisar os dados e extrair insights acionáveis.

Aplicações de streaming avançadas com Kinesis Data Streams para Amazon DynamoDB

O Amazon Kinesis Data Streams for Amazon DynamoDB captura mudanças em itens nas tabelas do Amazon DynamoDB para atualizar painéis, gerar métricas e entregar dados em data lakes. O Kinesis Data Streams permite desenvolver aplicações de transmissão avançadas, como agregação de log em tempo real, análise de negócios em tempo real e captura de dados de IoT.

Com o Kinesis Data Streams, você também pode usar o Amazon Kinesis Data Firehose para entregar dados do Amazon DynamoDB automaticamente a outros serviços da AWS, como Amazon S3, Amazon OpenSearch Service e Amazon Redshift.

Rastreamento de alterações com acionadores

O Amazon DynamoDB integra-se ao AWS Lambda para oferecer acionadores. O uso de acionadores permite executar automaticamente uma função personalizada quando alterações de itens são detectadas em uma tabela do Amazon DynamoDB. Com os acionadores, é possível criar aplicações orientadas a eventos que reagem às modificações de dados em tabelas do Amazon DynamoDB. A função Lambda pode realizar qualquer ação que você especificar, como enviar uma notificação ou iniciar um fluxo de trabalho.

Monitoramento e diagnóstico da performance do sistema com o Amazon Cloudwatch

Para monitorar facilmente a performance do seu banco de dados, o Amazon DynamoDB é integrado ao Amazon Cloudwatch, que coleta e processa dados brutos de performance do banco de dados. É possível usar o Amazon CloudWatch para criar visualizações e painéis personalizados de métricas e alarmes para bancos de dados do Amazon DynamoDB. Esse recurso de monitoramento é oferecido por padrão e é gratuito. Também é possível criar alarmes que são enviados automaticamente para você com base na performance da métrica.

O Amazon CloudWatch Contributor Insights ajuda a identificar rapidamente quem ou o que está afetando a performance dos bancos de dados e das aplicações. Esse recurso facilita o isolamento, o diagnóstico e a correção de problemas mais rapidamente durante um evento operacional.

Perguntas frequentes

Para que é usado o Amazon DynamoDB?

O Amazon DynamoDB é um banco de dados NoSQL usado para executar aplicações de alta performance em qualquer escala. É ideal para aplicações que exigem alto throughput de leitura/gravação com performance de um dígito e escalabilidade ilimitada em várias regiões. Se a aplicação exige escalabilidade horizontal com capacidade de reduzir a escala verticalmente até zero, o Amazon DynamoDB oferece uma experiência totalmente automatizada e gerenciada.

Quais são as vantagens do Amazon DynamoDB?

O serviço tem algumas vantagens exclusivas: é um banco de dados sem servidor comprovado, totalmente gerenciado e escalável até zero que oferece performance de até 9 ms e disponibilidade de até 99,999%. Com desempenho consistente em grande escala, o Amazon DynamoDB também oferece segurança, durabilidade e confiabilidade integradas necessárias para aplicações globais com os requisitos mais rigorosos.

Fácil de usar e com escalabilidade ilimitada, o Amazon DynamoDB geralmente é escolhido tanto para novas aplicações modernas quanto para aplicações estabelecidas na escala da Internet que precisam de performance rápida e consistente.

Quais são os principais benefícios de usar o Amazon DynamoDB?

É um banco de dados NoSQL totalmente gerenciado e sem servidor que oferece escalabilidade ilimitada, replicação ativa/ativa de dados para resiliência multirregional e tempo de resposta comprovado de até 9 ms para as aplicações mais exigentes. É fácil aprender a usar o Amazon DynamoDB.

O Amazon DynamoDB usa tecnologia sem servidor?

Sim, o serviço usa tecnologia sem servidor. Não é preciso gerenciar servidores, o que elimina tarefas de gerenciamento de infraestrutura, como provisionamento de capacidade e aplicação de patches. Além disso, o Amazon DynamoDB não tem versões e upgrades e oferece manutenção sem tempo de inatividade.

O Amazon DynamoDB é compatível com ACID?

Sim, o serviço tem suporte para transações ACID em uma ou mais tabelas de uma mesma conta e região da AWS. Dessa forma, você pode usar o Amazon DynamoDB ao criar aplicações que exijam inserções, exclusões ou atualizações coordenadas de vários itens como parte de uma única operação comercial lógica.

O Amazon DynamoDB tem réplicas de leitura?

O serviço aumenta a escala na horizontal automaticamente para acomodar qualquer quantidade de tráfego de leitura. Por isso, não são necessárias réplicas de leitura, normalmente um conceito de banco de dados relacional.

O Amazon DynamoDB escala automaticamente?

Sim, o serviço aumenta a escala na horizontal automaticamente de acordo com os requisitos da sua aplicação. O ajuste de escala automático e a capacidade de escalar até zero tornam o Amazon DynamoDB ideal para muitas aplicações.

Qual é a velocidade do Amazon DynamoDB?

O serviço tem tempos de resposta de até 9 ms e pode oferecer essa performance de forma consistente para as aplicações mais exigentes. Com exemplo, no Amazon Prime Day de 2022, o Amazon DynamoDB processou de forma confiável 105,2 milhões de solicitações/segundo em trilhões de chamadas de API com performance de até 9 ms.

Como configurar o Amazon DynamoDB?

O serviço foi criado para desenvolvedores e, como não tem servidor, é muito fácil de configurar usando nossa documentação técnica.

Imagem de página da Web
Acesse a página de definição de preço

Explore as opções de definição de preço do Amazon DynamoDB.

Saiba mais 
Imagem de cadastramento de conta
Cadastre-se para obter uma conta gratuita

Obtenha acesso instantâneo ao nível gratuito da AWS. 

Cadastre-se 
Imagem da caixa de ferramentas
Comece a criar no console

Comece a criar com o Amazon DynamoDB no Console de Gerenciamento da AWS.

Fazer login