本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
比較 Valkey、Memcached 和 Redis OSS自行設計的快取
Amazon ElastiCache 支援 Valkey、Memcached 和 Redis OSS快取引擎。每個引擎都提供一些優點。使用本主題中的資訊來協助您選擇最符合您需求的引擎和版本。
重要
建立快取、自行設計的叢集或複寫群組後,您可以升級至較新的引擎版本,但無法降級至較舊的引擎版本。如果您想要使用較舊的引擎版本,您必須刪除現有的快取、自行設計的叢集或複寫群組,並使用較舊的引擎版本再次建立。
這兩個引擎表面上看起來很類似。每個引擎都是記憶體內金鑰/值存放區。不過,實際上有顯著的差異。
如果適用下列情況,請選擇 Memcached:
-
您需要盡可能最簡單的模型。
-
您需要執行具有多個核心或執行緒的大型節點。
-
您需要能夠向外和向內擴展,並視您系統需求增加和減少來新增和移除節點。
-
您需要快取物件。
ElastiCache 如果下列條件適用於您,請選擇 Valkey 或 Redis OSS with:
-
ElastiCache 適用於 Valkey 的 7.2 版或適用於 Redis 的 7.0 版 (增強版) OSS
您想要使用函數
、碎片 Pub/Sub 或ACL改進 。如需詳細資訊,請參閱 Redis 7.0 OSS版 (增強版)。 -
ElastiCache Redis 6.2 版 (增強版) OSS
您希望能夠使用 r6gd 節點類型SSD,在記憶體與 之間分層資料。如需詳細資訊,請參閱資料分層。
-
ElastiCache Redis 6.0 版 (增強版) OSS
您想要使用角色型存取控制驗證使用者。
如需詳細資訊,請參閱 Redis 6.0 OSS版 (增強版)。
-
ElastiCache Redis 5.0.0 版 (增強版) OSS
您想要使用 Redis OSS 串流
,這是一種日誌資料結構,可讓生產者即時附加新項目,也允許取用者以封鎖或非封鎖方式取用訊息。 如需詳細資訊,請參閱 Redis 5.0.0 OSS版 (增強版)。
-
ElastiCache Redis 4.0.10 版 (增強版) OSS
支援加密,以及動態新增或移除 Valkey 或 Redis OSS(啟用叢集模式) 叢集中的碎片。
如需詳細資訊,請參閱 Redis 4.0.10 OSS版 (增強版)。
以下版本已棄用、已達到或即將達到生命週期結束。
-
ElastiCache Redis 的 3.2.10 版 (增強版) OSS
支援動態新增或移除 Valkey 或 Redis OSS(啟用叢集模式) 叢集碎片的功能。
重要
目前適用於 Redis 的 ElastiCache 3.2.10 OSS 不支援加密。
如需詳細資訊,請參閱下列內容:
-
線上重新分片 Redis 的最佳實務OSS,如需詳細資訊,請參閱以下內容:
-
如需擴展 Redis OSS叢集的詳細資訊,請參閱擴展。
-
ElastiCache Redis 3.2.6 版 (增強版) OSS
如果您需要舊版 Redis 的功能OSS以及下列功能,請選擇 3.2.6:
-
傳輸中加密。如需詳細資訊,請參閱 Amazon ElastiCache for Redis 傳輸OSS中加密。
-
靜態加密。如需詳細資訊,請參閱 Amazon ElastiCache for Redis OSS 靜態加密。
-
-
ElastiCache (啟用叢集模式) Redis 3.2.4 版 OSS
如果您需要 2.8.x 的功能加上下列功能,請選擇 3.2.4 (叢集模式):
-
您需要將資料分割到 2 至 500 個節點群組中 (僅限叢集模式)。
-
您需要地理空間索引 (叢集模式或非叢集模式)。
-
您不需要支援多個資料庫。
-
-
ElastiCache Redis (非叢集模式) 2.8.x 和 3.2.4 (增強型) OSS
如果下列適用於您,則為 2.8.x 或 3.2.4 (非叢集模式):
-
您需要複雜資料類型,例如字串、雜湊、清單、集合、有序集合及點陣圖。
-
您需要排序或排名記憶體內資料集。
-
您的金鑰存放區必須具備持久性。
-
您需要針對讀取密集型應用程式,將資料從主要複本複寫到一或多個僅供讀取複本。
-
您需要在主要節點失敗時自動容錯移轉。
-
您需要發佈和訂閱 (pub/sub) 功能,用於通知用戶端伺服器上的事件。
-
您需要自行設計叢集的備份和還原功能,以及無伺服器快取。
-
您需要支援多個資料庫。
-
Memcached | Valkey 或 Redis OSS(停用叢集模式) | Valkey 或 Redis OSS(啟用叢集模式) | |
---|---|---|---|
引擎版本+ | 1.4.5 及更新版本 | 4.0.10 和更新版本 | 4.0.10 和更新版本 |
資料類型 | 簡單 ‡ | 2.8.x - 複雜 * | 3.2.x 和更新版本 - 複雜 † |
複雜 † | |||
資料分割 | 是 | 否 | 是 |
叢集可修改 | 是 | 是 | 3.2.10 和更新版本 - 有限 |
線上重新分片 | 否 | 否 | 3.2.10 版和更新版本 |
加密 | 傳輸中 1.6.12 及更新版本 | 4.0.10 和更新版本 | 4.0.10 和更新版本 |
資料分層 | 否 | 6.2 及更新版本 | 6.2 及更新版本 |
合規認證 | |||
合規認證 聯準會RAMP HIPAA PCI DSS |
是 - 1.6.12 和更新版本 是 - 1.6.12 和更新版本 是 |
4.0.10 和更新版本 4.0.10 和更新版本 4.0.10 和更新版本 |
4.0.10 和更新版本 4.0.10 和更新版本 4.0.10 和更新版本 |
多執行緒 | 是 | 否 | 否 |
節點類型升級 | 否 | 是 | 是 |
引擎升級 | 是 | 是 | 是 |
高可用性 (複寫) | 否 | 是 | 是 |
自動容錯移轉 | 否 | 選用 | 必要 |
發佈/訂閱功能 | 否 | 是 | 是 |
有序集合 | 否 | 是 | 是 |
備份和還原 | 僅適用於 Serverless Memcached,不適用於自行設計的 Memcached 叢集 | 是 | 是 |
地理空間索引 | 否 | 4.0.10 和更新版本 | 是 |
備註: | |||
‡ 字串、物件 (例如資料庫) | |||
* 字串、集合、有序集合、清單、雜湊、點陣圖、hyperloglog | |||
† 字串、集合、有序集合、清單、雜湊、點陣圖、hyperloglog、地理空間索引 | |||
+ 排除已棄用、已達到或即將達到生命週期結束的版本。 |
選擇適用於您叢集的引擎之後,我們建議您使用該引擎的最新版本。如需詳細資訊,請參閱支援的節點類型。