

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 資料分層
<a name="data-tiering"></a>

從 r6gd 系列使用節點類型的叢集，其資料會在記憶體和本機 SSD （固態硬碟） 儲存體之間分層。資料分層除了將資料存放在記憶體之外，還在每個叢集節點中使用低成本固態硬碟 (SSDs)，為 Valkey 和 Redis OSS 工作負載提供了新的價格效能選項。與其他節點類型類似，寫入 r6gd 節點的資料會長期存放在多可用區域交易日誌中。資料分層非常適合定期存取高達 20% 的整體資料集的工作負載，以及在存取 SSD 資料時可容忍額外延遲的應用程式。

在具有資料分層的叢集上，MemoryDB 會監控其存放的每個項目的上次存取時間。當可用記憶體 (DRAM) 用盡時，MemoryDB 會使用最近最少使用的 (LRU) 演算法，自動將不常存取的項目從記憶體移至 SSD。之後存取 SSD 上的資料時，MemoryDB 會自動並以非同步方式將其移回記憶體，再處理請求。如果您的工作負載只會定期存取其資料的子集，則資料分層是以符合成本效益的方式擴展容量的最佳方式。

請注意，使用資料分層時，金鑰本身一律會保留在記憶體中，而 LRU 則會控制記憶體與磁碟上值的位置。一般而言，建議在使用資料分層時，金鑰大小小於您值的大小。

資料分層專為盡量降低對應用程式工作負載的效能影響所設計。例如，假設 500 位元組字串值，與記憶體中資料的讀取請求相比，對於存放在 SSD 上的資料的讀取請求，您通常會預期額外的 450 微秒延遲。

使用最大的資料分層節點大小 (db.r6gd.8xlarge)，您可以在單一 500 個節點叢集中存放最多約 500 TBs （使用 1 個僅供讀取複本時為 250 TB)。對於資料分層，MemoryDB 保留每個節點 19% 的 (DRAM) 記憶體供非資料使用。資料分層與 MemoryDB 中支援的所有 Valkey 和 Redis OSS 命令和資料結構相容。不需要任何用戶端變更就能使用此功能。

**Topics**
+ [最佳實務](data-tiering-best-practices.md)
+ [資料分層限制](data-tiering-prerequisites.md)
+ [資料層分定價](data-tiering-pricing.md)
+ [資料分層監控](data-tiering-monitoring.md)
+ [使用資料分層](data-tiering-enabling.md)
+ [從快照將資料還原至叢集](data-tiering-enabling-snapshots.md)