Comparación de los clústeres Valkey, Memcached y Redis OSS basados en nodos - Amazon ElastiCache

Comparación de los clústeres Valkey, Memcached y Redis OSS basados en nodos

Amazon ElastiCache admite los motores de caché de Valkey, Memcached y Redis OSS. Cada motor proporciona algunas ventajas. Use la información de este tema para elegir el motor y la versión que mejor se adapte a sus necesidades.

importante

Tras crear un clúster de caché basado en nodos o un grupo de replicación, podrá actualizar el motor a una versión más reciente; sin embargo, no podrá volver a una versión inferior del motor. Si desea usar una versión más antigua del motor, deberá eliminar el clúster de caché basado en nodos o el grupo de replicación existente y crearlo de nuevo con la versión del motor más antigua.

En líneas generales, los motores son similares. Cada uno de ellos funciona como almacén de claves-valores en memoria. Sin embargo, en la práctica, existen diferencias importantes.

Elija Memcached si se dan las condiciones siguientes:
  • Necesita el modelo más sencillo que sea posible.

  • Necesita ejecutar nodos de gran tamaño con varios núcleos o subprocesos.

  • Necesita tener la capacidad de escalar de forma ascendente y descendente, y agregar y eliminar nodos en función de la demanda del sistema.

  • Necesita almacenar en la caché objetos.

Elija Valkey o Redis OSS con ElastiCache si se dan las siguientes condiciones:
  • ElastiCache versión 7.2 para Valkey o versión 7.0 (mejorada) para Redis

    Desea utilizar funciones, publicación/suscripción en particiones o mejoras de ACL. Para obtener más información, consulte Redis OSS versión 7.0 (mejorada).

  • ElastiCache versión 6.2 (mejorada) para Redis OSS

    Desea tener la posibilidad de establecer niveles de datos entre memoria y SSD utilizando el tipo de nodo r6gd. Para obtener más información, consulte Organización de datos en niveles.

  • ElastiCache versión 6.0 (mejorada) para Redis OSS

    Desea autenticar usuarios con el control de acceso basado en roles.

    Para obtener más información, consulte Redis OSS versión 6.0 (mejorada).

  • ElastiCache versión 5.0.0 (mejorada) para Redis OSS

    Desea utilizar los flujos de Redis OSS, que son una estructura de datos de registro que permite a los productores añadir elementos nuevos en tiempo real y también permite a los consumidores consumir mensajes con o sin bloqueo.

    Para obtener más información, consulte Redis OSS versión 5.0.0 (mejorada).

  • ElastiCache versión 4.0.10 (mejorada) para Redis OSS

    Admite tanto el cifrado como la adición o eliminación dinámica de particiones del clúster de Valkey o Redis OSS (modo de clúster habilitado).

    Para obtener más información, consulte Redis OSS versión 4.0.10 (mejorada).

Las siguientes versiones están en desuso, han llegado o están a punto de llegar al final de su vida útil.

  • ElastiCache versión 3.2.10 (mejorada) para Redis OSS

    Admite la posibilidad de añadir o eliminar particiones de forma dinámica del clúster de Valkey o Redis OSS (modo de clúster habilitado).

    importante

    En la actualidad, ElastiCache 3.2.10 para Redis no admite el cifrado.

    Para obtener más información, consulte los siguientes temas:

  • ElastiCache versión 3.2.6 (mejorada) para Redis OSS

    Si necesita la funcionalidad de las versiones anteriores de Redis OSS, además de las características siguientes, elija 3.2.6:

  • Versión 3.2.4 de ElastiCache para Redis OSS (modo de clúster habilitado)

    Si necesita la funcionalidad de 2.8.x además de las características siguientes, elija 3.2.4 (modo agrupado en clúster):

    • Es necesario que los datos se repartan entre dos a 500 grupos de nodos (solo en modo clúster).

    • Necesita indexación geoespacial (modo agrupado en clúster y no agrupado en clúster).

    • No necesita la compatibilidad con varias bases de datos.

  • ElastiCache para Redis (modo no agrupado en clúster) 2.8.x y 3.2.4 (mejorado)

    Si se dan las condiciones siguientes, elija 2.8.x o 3.2.4 (en modo no agrupado en clúster):

    • Necesita tipos de datos complejos como, por ejemplo, cadenas, hash, listas, conjuntos, conjuntos clasificados mapas de bits.

    • Necesita ordenar o clasificar conjuntos de datos en memoria.

    • Necesita persistencia del almacén de claves.

    • Necesita replicar sus datos desde el nodo principal a una o varias réplicas de lectura para aplicaciones de lectura intensivas.

    • Necesita conmutación por error automática en caso de error en el nodo principal.

    • Necesita publicar y suscribirse a capacidades para informar a los clientes acerca de eventos en el servidor.

    • Necesita capacidades de copia de seguridad y restauración para los clústeres basados en nodos, así como para las cachés sin servidor.

    • Necesita compatibilidad con varias bases de datos.

Resumen comparativo de Memcached, Valkey o Redis OSS (modo de clúster deshabilitado) y Valkey o Redis OSS (modo de clúster habilitado)
Memcached Valkey o Redis OSS (modo de clúster deshabilitado) Valkey o Redis OSS (modo de clúster 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
Certificaciones de conformidad
Compliance Certification

    FedRAMP

    HIPAA

    PCI DSS

 

Sí - 1.6.12 y posteriores

Sí - 1.6.12 y posteriores

 

4.0.10 y versiones posteriores

4.0.10 y versiones posteriores

4.0.10 y versiones posteriores

 

4.0.10 y versiones posteriores

4.0.10 y versiones posteriores

4.0.10 y versiones posteriores

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
Notas:
‡ 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.

Tras elegir el motor para su clúster, recomendamos que use la versión más reciente de dicho motor. Para obtener más información, consulte Tipos de nodos compatibles.