Confronto tra cache progettate autonomamente Memcached e Redis - Amazon ElastiCache

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Confronto tra cache progettate autonomamente Memcached e Redis

Amazon ElastiCache supporta i motori di cache Memcached e Redis. Ogni motore offre alcuni vantaggi. Utilizza le informazioni in questo argomento per individuare il motore e la versione che meglio si adattano alle tue esigenze.

Importante

Dopo aver creato una cache, un cluster o un gruppo di replica progettato autonomamente, puoi eseguire l'aggiornamento a una versione più recente del motore, ma non puoi effettuare il downgrade a una versione precedente del motore. Se si desidera utilizzare una versione precedente del motore, è necessario eliminare la cache, il cluster autoprogettato o il gruppo di replica esistente e crearlo nuovamente con la versione precedente del motore.

A prima vista, i motori sembrano simili. Ognuno di essi è uno store chiave-valore in memoria Tuttavia, vi sono alcune differenze importanti.

Scegliere Memcached per le seguenti esigenze:
  • Hai bisogno del modello in assoluto più semplice.

  • Hai necessità di eseguire grandi nodi con più core o thread.

  • Hai la possibilità di dimensionare, aggiungere e rimuovere i nodi a seconda che la domanda del tuo sistema sia crescente o decrescente.

  • Hai necessità di memorizzare gli oggetti nella cache.

Scegliete Redis con una versione di ElastiCache per Redis se vi soddisfa quanto segue:
  • ElastiCache per la versione Redis 7.0 (Enhanced)

    Si desidera utilizzare Funzioni Redis, Pub/Sub partizionato o Miglioramenti ACL Redis. Per ulteriori informazioni, consultare Redis Versione 7.0 (avanzata).

  • ElastiCache per Redis versione 6.2 (Enhanced)

    Vuoi la possibilità di eseguire il livello dei dati tra memoria e SSD utilizzando il tipo di nodo r6gd. Per ulteriori informazioni, consulta la sezione Tiering di dati.

  • ElastiCache per Redis versione 6.0 (Enhanced)

    Vuoi autenticare gli utenti con il controllo accessi basato sui ruoli.

    Per ulteriori informazioni, consulta la sezione Redis Versione 6.0 (avanzata).

  • ElastiCache per la versione Redis 5.0.0 (Enhanced)

    Vuoi utilizzare i flussi Redis, una struttura di registro dei dati che consente ai produttori di accodare nuove voci in tempo reale e che consente ai consumatori di utilizzare messaggi con blocchi o senza blocchi.

    Per ulteriori informazioni, consulta la sezione Redis versione 5.0.0 (potenziata).

  • ElastiCache per la versione Redis 4.0.10 (Enhanced)

    Supporta la crittografia e l'aggiunta o la rimozione automatica degli shard dal cluster Redis (modalità cluster abilitata).

    Per ulteriori informazioni, consulta la sezione Redis versione 4.0.10 (potenziata).

Le seguenti versioni sono obsolete, hanno raggiunto o stanno per giungere a fine vita.

  • ElastiCache per la versione Redis 3.2.10 (Enhanced)

    Supporta la capacità di aggiungere o rimuovere dinamicamente gli shard dal cluster Redis (modalità cluster abilitata).

    Importante

    Attualmente ElastiCache per Redis 3.2.10 non supporta la crittografia.

    Per ulteriori informazioni, consulta gli argomenti seguenti:

  • ElastiCache per la versione 3.2.6 di Redis (Enhanced)

    Se hai bisogno delle funzionalità delle versioni precedenti di Redis oltre alle seguenti funzionalità, scegli ElastiCache Redis 3.2.6:

  • ElastiCache per Redis (modalità Cluster abilitata) versione 3.2.4

    Se sono necessarie la caratteristicadelle versioni Redis 2.8.x e le caratteristiche seguenti, scegliere Redis 3.2.4 (modalità cluster):

    • Hai la necessità di eseguire la partizione dei dati tra due fino a 500 gruppi di nodi (solo in modalità cluster).

    • Hai la necessità di effettuare l'indicizzazione geospaziale (modalità cluster o non-cluster).

    • Non è necessario il support di più database.

  • ElastiCache per Redis (modalità non cluster) 2.8.x e 3.2.4 (Enhanced)

    Scegliere Redis 2.8.x o Redis 3.2.4 (modalità non cluster) se si applicano le seguenti condizioni:

    • Sono necessari tipi di dati complessi, ad esempio stringa, set, set ordinati, elenchi, hash e bitmap.

    • È necessario ordinare o classificare i dataset in-memory.

    • Il tuo store di chiavi deve essere permanente.

    • È necessario replicare i dati dai primari a quelli relativi a una o più repliche di lettura per applicazioni di letture intensive.

    • Se il primo nodo riporta un errore, è necessario un failover automatico.

    • È necessario pubblicare e sottoscrivere le caratteristica(pub/sub) per informare i clienti sugli eventi sul server.

    • Sono necessarie funzionalità di backup e ripristino per cluster progettati autonomamente e cache serverless.

    • È necessario il support di più database.

Riepilogo del confronto di Memcached, Redis (modalità cluster disabilitata) e Redis (modalità cluster abilitata)
Memcached Redis (modalità cluster disabilitata) Redis (modalità cluster abilitata)
Versioni del motore+ 1.4.5 e versioni successive versioni 4.0.10 e successive versioni 4.0.10 e successive
Tipi di dati Semplici 2.8.x – Complessi * 3.2.x e versioni successive – Complessi
Complessi
Partizionamento dei dati No
Il cluster è modificabile 3.2.10 e versioni successive – Limitato
Resharding online No No versioni 3.2.10 e successive
Crittografia in-transit 1.6.12 e versioni successive versioni 4.0.10 e successive versioni 4.0.10 e successive
Tiering di dati No 6.2 e versioni successive 6.2 e versioni successive
Certificazioni di conformità
Certificazione di conformità

    FedRAMP

    HIPAA

    PCI DSS

 

Sì - 1.6.12 e versioni successive

Sì - 1.6.12 e versioni successive

 

versioni 4.0.10 e successive

versioni 4.0.10 e successive

versioni 4.0.10 e successive

 

versioni 4.0.10 e successive

versioni 4.0.10 e successive

versioni 4.0.10 e successive

A più thread No No
Aggiornare il tipo di nodo No
Aggiornamenti del motore
Elevata disponibilità (replica) No
Failover automatico No Facoltativo Richiesto
Capacità Pub/Sub No
Serie ordinate No
Backup e ripristino Solo per Memcached Serverless, non per cluster Memcached progettati autonomamente
Indicizzazione geospaziale No versioni 4.0.10 e successive
Note:
stringa, oggetti (database mi piace)
* stringa, set, set ordinati, elenchi, hash, bitmap, hyperloglog
stringa, set, set ordinati, elenchi, hash, bitmap, hyperloglog, indici geospaziali
+ Esclude le versioni obsolete, che hanno raggiunto o stanno per scadere.

Dopo aver scelto il motore per il cluster, ti consigliamo di utilizzare la versione più recente per quel motore. Per ulteriori informazioni, consulta Supportato ElastiCache per le versioni Memcached o Supportato per le versioni Redis. ElastiCache