O Amazon MemoryDB for Redis é um serviço de banco de dados na memória compatível com Redis, durável e que oferece performance ultrarrápida. Foi desenvolvido especificamente para aplicações modernas com arquiteturas de microsserviços.

O Amazon MemoryDB é compatível com o Redis, um armazenamento de dados de código aberto bastante usado, permitindo que os clientes criem aplicações rapidamente usando as mesmas estruturas de dados, APIs e comandos flexíveis e descomplicados do Redis que eles já usam hoje. Com o Amazon MemoryDB, todos os seus dados são armazenados na memória, o que permite que você obtenha latência de leitura de microssegundos, latência de gravação de milissegundos de um dígito, além de alto throughput. O Amazon MemoryDB também armazena dados de forma durável em várias zonas de disponibilidade (AZs) usando um log transacional distribuído para permitir failover rápido, recuperação de banco de dados e reinicializações de nós. Oferecendo performance na memória e durabilidade multi-AZ, o Amazon MemoryDB pode ser usado como um banco de dados primário de alta performance para suas aplicações de microsserviços, eliminando a necessidade de gerenciar separadamente um cache e um banco de dados durável.

Compatibilidade com Redis

O Redis é um armazenamento rápido de dados de chave-valor de código aberto e na memória. Desenvolvedores usam o Redis para obter tempos de resposta inferiores a um milissegundo, permitindo milhões de solicitações por segundo para aplicações em tempo real em setores como jogos, tecnologia de anúncios, serviços financeiros, saúde e IoT. Em 2021, o Redis foi considerado o “banco de dados mais amado” do Stack Overflow pelo quinto ano consecutivo.

O Redis oferece APIs, comandos e estruturas de dados flexíveis, como fluxos, conjuntos e listas, para criar aplicações ágeis e versáteis. O MemoryDB mantém a compatibilidade com o Redis de código aberto e oferece suporte ao mesmo conjunto de tipos de dados, parâmetros e comandos do Redis que você conhece. Isso significa que o código, as aplicações, os drivers e as ferramentas que você já utiliza com o Redis podem ser usados com o MemoryDB para criar aplicações rapidamente.

Performance ultrarrápida

O MemoryDB armazena todo o seu conjunto de dados na memória para fornecer latência de leitura de microssegundos, latência de gravação de milissegundos de um dígito e alto throughput. Ele consegue processar mais de 13 trilhões de solicitações por dia e oferece suporte a picos de 160 milhões de solicitações por segundo.

Desenvolvedores que criam arquiteturas de microsserviços precisam de altíssima performance, pois essas aplicações podem envolver interações com muitos componentes de serviço por interação do usuário ou chamada de API. Com o MemoryDB, você pode habilitar a latência extremamente baixa para fornecer performance em tempo real para usuários finais.

Durabilidade multi-AZ

Além de armazenar todo o conjunto de dados na memória, o MemoryDB usa um log transacional distribuído para fornecer durabilidade, consistência e chances de recuperação de dados. O MemoryDB armazena dados em várias AZs, permitindo recuperação e reinicialização rápidas do banco de dados. Utilize o MemoryDB como um único serviço de banco de dados primário para suas workloads que exigem baixa latência e alto throughput, em vez de gerenciar separadamente um cache para velocidade e outro banco de dados relacional ou não relacional para confiabilidade.

Escalabilidade

Você pode escalar o cluster do MemoryDB para atender às demandas variáveis de aplicações: horizontalmente, adicionando ou removendo nós, ou verticalmente, movendo para tipos de nós maiores ou menores. O MemoryDB é compatível com escalabilidade de gravação com fragmentação e escalabilidade de leitura por meio da adição de réplicas. Seu cluster permanece online e oferece suporte a operações de leitura e gravação durante as operações de redimensionamento.

Totalmente gerenciados

Fácil de usar

É simples começar a usar o MemoryDB. Basta iniciar um novo cluster MemoryDB usando o Console de Gerenciamento da AWS, ou utilize a AWS CLI ou o SDK. As instâncias de banco de dados do MemoryDB são pré-configuradas com definições e parâmetros adequados para o tipo de nó selecionado. Você pode iniciar um cluster e conectar sua aplicação em minutos, sem necessidade de configuração adicional.

Monitoramento e métricas

O MemoryDB gera métricas do Amazon CloudWatch para instâncias de banco de dados. É possível usar o Console de Gerenciamento da AWS para visualizar mais de 35 das principais métricas operacionais de clusters, inclusive computação, memória, armazenamento, throughput, conexões ativas e mais.

Correção automática de software

O MemoryDB mantém automaticamente seus clusters em dia com as novas atualizações, e você pode atualizar facilmente seus clusters para as versões mais recentes do Redis.

Segurança

Redes

O MemoryDB é executado na Amazon VPC, permitindo que você isole seu banco de dados em sua própria rede virtual e se conecte à sua infraestrutura de TI on-premises usando VPNs IPsec criptografadas padrão do setor. Além disso, ao usar a configuração da VPC do MemoryDB, é possível configurar as definições do firewall e controlar o acesso de rede às suas instâncias de banco de dados.

Criptografia

Com o MemoryDB, os dados em repouso são criptografados usando chaves criadas e controladas pelo AWS Key Management Service (KMS). Os clusters criados com os tipos de nó AWS Graviton2 contam com criptografia DRAM de 256 bits sempre ativa. O MemoryDB oferece suporte a criptografia em andamento usando Transport Layer Security (TLS).

Autenticação e autorização

O MemoryDB usa listas de controle de acesso (ACLs) do Redis para controlar a autenticação e a autorização do cluster. Com as ACLs, é possível definir permissões diferentes para usuários diferentes no mesmo cluster.

Integração com o Kubernetes (pré-visualização para desenvolvedores)

O AWS Controllers for Kubernetes (ACK) for Amazon MemoryDB permite definir e usar recursos do MemoryDB diretamente do cluster do Kubernetes. Isso permite que você aproveite o MemoryDB para oferecer suporte às suas aplicações Kubernetes sem precisar definir recursos do MemoryDB fora do cluster ou executar e gerenciar recursos de banco de dados na memória dentro do cluster. Baixe a imagem do contêiner do MemoryDB ACK do Amazon ECR e consulte a documentação para obter orientações sobre a instalação.

Observação: o ACK for Amazon MemoryDB está disponível como uma versão de pré-visualização para desenvolvedores e não é recomendado para uso em produção. Envie seus comentários em nossa página do Github.

ACK for Amazon MemoryDB

Compatibilidade com JSON

O Amazon MemoryDB oferece suporte nativo para documentos JavaScript Object Notation (JSON), além das estruturas de dados incluídas no Redis de código aberto, sem custo adicional. Simplifique o desenvolvimento de aplicações usando os comandos internos criados e otimizados para documentos JSON. O MemoryDB oferece suporte a atualizações parciais de documentos JSON, bem como pesquisa e filtros eficazes usando a linguagem de consulta JSONPath. O suporte a JSON está disponível para uso do Redis 6.2 e versões superiores. Para obter mais informações, consulte a documentação do MemoryDB.

Otimização de custos

O MemoryDB oferece camadas de dados como uma forma escalar seus clusters até centenas de terabytes de capacidade com menor custo. Os níveis de dados oferecem uma opção de preço/performance para MemoryDB utilizando unidades de estado sólido (SSDs) de baixo custo em cada nó de cluster, além de armazenar dados na memória. É ideal para workloads que acessam até 20% do conjunto de dados geral regularmente e para aplicações que podem tolerar latência adicional ao acessar dados em SSDs.

Ao utilizar clusters com camadas de dados, o MemoryDB é projetado para mover automaticamente e de forma transparente os itens menos usados da memória para SSDs NVMe conectados localmente quando a capacidade de memória disponível é consumida. Ao acessar um item armazenado no SSD, o MemoryDB o move de volta à memória antes de atender ao pedido. A classificação de dados do MemoryDB está disponível nos nós R6gd baseados em Graviton2. Os nós R6gd têm quase 5x mais capacidade total (memória + SSD) e podem ajudar você a obter mais de 60% de economia nos custos de armazenamento ao executar com utilização máxima, em comparação com os nós R6g (somente memória). Assumindo valores de string de 500 bytes, você normalmente pode esperar uma latência adicional de 450 µs para solicitações de leitura para dados armazenados em SSD em comparação com solicitações de leitura para dados na memória.

O MemoryDB oferece nós reservados que permitem economizar até 55% sobre os preços dos nós sob demanda em troca de um compromisso de uso por um período de um ou três anos. Os nós reservados são complementares aos nós sob demanda do MemoryDB e oferecem flexibilidade às empresas para ajudar a reduzir custos. O MemoryDB disponibiliza três opções de pagamento de nós reservados (sem pagamento adiantado, pagamento adiantado parcial e pagamento adiantado integral) que permitem estabelecer um equilíbrio entre o valor pago adiantado e o preço por hora efetivo.

Os nós reservados do MemoryDB oferecem flexibilidade de tamanho dentro de uma família de nós e na região da AWS. Isso significa que a taxa de nós reservados com desconto será aplicada automaticamente ao uso de todos os tamanhos na mesma família de nós. O recurso de flexibilidade de tamanho reduz o tempo necessário para gerenciar seus nós reservados e, como você não está mais vinculado a um tamanho específico de nó de banco de dados, pode aproveitar ao máximo seu desconto, mesmo que seu banco de dados precise de atualizações.

Saiba mais sobre a definição de preço
Consulte os preços do MemoryDB

Descubra as opções de preços do MemoryDB

Saiba mais 
Aprenda com um tutorial
Aprenda com um tutorial

Veja como configurar seu primeiro cluster do MemoryDB.

Saiba mais  
 Comece a criar com o MemoryDB
Comece a criar com o MemoryDB

Confira o guia do usuário do MemoryDB para começar a usar.

Leia a documentação