Comparação de clusters Valkey, Memcached e Redis OSS baseados em nós
O Amazon ElastiCache é compatível com os mecanismos de cache do Valkey, Memcached e Redis OSS. Cada mecanismo oferece algumas vantagens. Use as informações contidas neste tópico para ajudá-lo a escolher o mecanismo e a versão que melhor atendam aos seus requisitos.
Importante
Depois de criar um cluster de cache baseado em nós ou grupo de replicação, você pode atualizar para uma versão de mecanismo mais recente, mas não pode fazer downgrade para uma versão de mecanismo mais antiga. Se quiser usar uma versão de mecanismo mais antiga, deverá excluir o cluster de cache baseado em nós ou grupo de replicação existente e criá-lo novamente com a versão anterior do mecanismo.
Na superfície, os mecanismos parecem semelhantes. Cada um deles é um armazenamento de chaves/valores na memória. No entanto, na prática, existem diferenças significativas.
Escolha o Memcached se o seguinte se aplicar a você:
-
Você precisa do modelo mais simples possível.
-
Você precisa executar nós grandes com vários cores ou threads.
-
Você precisa da capacidade de expandir e reduzir, adicionar e remover nós à medida que a demanda no seu sistema aumenta e diminui.
-
Você precisa armazenar objetos em cache.
Escolha o Valkey ou Redis OSS com o ElastiCache se o seguinte se aplicar a você:
-
ElastiCache versão 7.2 para Valkey ou versão 7.0 (aprimorado) para Redis OSS
Você quer usar Funções
, Pub/Sub fragmentado ou Melhorias de ACL . Para obter mais informações, consulte Redis OSS versão 7.0 (aprimorada). -
ElastiCache para Redis OSS versão 6.2 (aprimorado)
Você deseja ter a capacidade de classificar dados em níveis entre memória e SSD usando o tipo de nó r6gd. Para mais informações, consulte Classificação de dados em níveis.
-
ElastiCache para Redis OSS versão 6.0 (aprimorado)
Você deseja autenticar usuários com o controle de acesso baseado em função.
Para obter mais informações, consulte Redis OSS versão 6.0 (aprimorada).
-
ElastiCache para Redis OSS versão 5.0.0 (aprimorado)
Você quer usar Fluxos Redis OSS
, uma estrutura de dados de log que permite aos produtores anexarem novos itens em tempo real e também permite que os consumidores consumam mensagens de forma bloqueante ou não bloqueante. Para obter mais informações, consulte Redis OSS versão 5.0.0 (aprimorada).
-
ElastiCache para Redis OSS versão 4.0.10 (aprimorado)
Oferece suporte à criptografia e à adição ou remoção de fragmentos do cluster do Valkey ou do Redis OSS (modo cluster habilitado) de modo dinâmico.
Para obter mais informações, consulte Redis OSS versão 4.0.10 (aprimorada).
As versões a seguir estão obsoletas ou chegaram ou estão prestes a chegar ao fim da vida útil.
-
ElastiCache para Redis OSS versão 3.2.10 (aprimorado)
Oferece suporte à adição ou remoção de fragmentos do cluster do Valkey ou do Redis OSS (modo cluster habilitado) de modo dinâmico.
Importante
Atualmente, o ElastiCache para Redis OSS 3.2.10 não é compatível com criptografia.
Para obter mais informações, consulte:
-
Refragmentação online de melhores práticas para o Redis OSS. Para obter mais informações, consulte o seguinte:
-
Para obter mais informações sobre como escalonar clusters Redis OSS, consulte Escalabilidade.
-
ElastiCache para Redis OSS versão 3.2.6 (aprimorado)
Se você precisar da funcionalidade de versões anteriores do Redis OSS, bem como dos atributos a seguir, escolha o 3.2.6:
-
Criptografia em trânsito. Para obter mais informações, consulte Criptografia em trânsito do Amazon ElastiCache para Redis OSS.
-
Criptografia em repouso. Para obter mais informações, consulte Criptografia em repouso do Amazon ElastiCache para Redis OSS.
-
-
ElastiCache para Redis OSS (modo cluster habilitado) versão 3.2.4
Se precisar da funcionalidade do 2.8.x, bem como dos atributos a seguir, escolha o 3.2.4 (modo de cluster):
-
Você precisa dividir seus dados entre dois a 500 grupos de nós (somente no modo de cluster).
-
Você precisa de indexação geoespacial (modo de cluster ou modo sem cluster).
-
Você não precisa comportar vários bancos de dados.
-
-
ElastiCache (modo sem cluster) 2.8.x e 3.2.4 (aprimorado) para Redis OSS
Se o seguinte se aplicar a você, escolha o 2.8.x ou 3.2.4 (modo sem cluster):
-
Você precisa de tipos de dados complexos, como strings, hashes, listas, conjuntos, conjuntos classificados e bitmaps.
-
Você precisa classificar ou organizar conjuntos de dados na memória.
-
Você precisa de persistência do seu armazenamento de chaves.
-
Você precisa replicar seus dados do primário para uma ou mais réplicas de leitura para aplicativos de leitura intensa.
-
Você precisa de failover automático se o primário falhar.
-
Você precisa publicar e assinar (pub/sub) recursos, para informar os clientes sobre eventos no servidor.
-
Você precisa de recursos de backup e restauração para clusters baseado em nós, bem como para caches com tecnologia sem servidor.
-
Você precisa oferecer suporte para vários bancos de dados.
-
| Memcached | Valkey ou Redis OSS (modo cluster desabilitado) | Valkey ou Redis OSS (modo cluster habilitado) | |
|---|---|---|---|
| Engine versions+ | 1.4.5 and later | 4.0.10 and later | 4.0.10 and later |
| Data types | Simple ‡ | 2.8.x - Complex * | 3.2.x and later - Complex † |
| Complex † | |||
| Data partitioning | Yes | No | Yes |
| Cluster is modifiable | Yes | Yes | 3.2.10 and later - Limited |
| Online resharding | No | No | 3.2.10 and later |
| Encryption | in-transit 1.6.12 and later | 4.0.10 and later | 4.0.10 and later |
| Data tiering | No | 6.2 and later | 6.2 and later |
| Certificações de conformidade | |||
| Compliance Certification
FedRAMP HIPAA PCI DSS |
Sim, 1.6.12 e posterior Sim, 1.6.12 e posterior Sim |
4.0.10 e posterior 4.0.10 e posterior 4.0.10 e posterior |
4.0.10 e posterior 4.0.10 e posterior 4.0.10 e posterior |
| Multi-threaded | Yes | No | No |
| Node type upgrade | No | Yes | Yes |
| Engine upgrading | Yes | Yes | Yes |
| High availability (replication) | No | Yes | Yes |
| Automatic failover | No | Optional | Required |
| Pub/Sub capabilities | No | Yes | Yes |
| Sorted sets | No | Yes | Yes |
| Backup and restore | For serverless caches only, not applicable to node-based clusters | Yes | Yes |
| Geospatial indexing | No | 4.0.10 and later | Yes |
| Observações: | |||
| ‡ string, objects (like databases) | |||
| * string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog | |||
| † string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog, geospatial indexes | |||
| + Excludes versions which are deprecated, have reached or soon to reach end of life. | |||
Depois de escolher o mecanismo do seu cluster, recomendamos que você use a versão mais recente desse mecanismo. Para obter mais informações, consulte Tipos de nó compatíveis.