

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

# 標準代理程式的分層儲存
<a name="msk-tiered-storage"></a>

分層儲存是 Amazon MSK 的低成本儲存層級，可擴展到幾乎無限制的儲存空間，讓建置串流資料應用程式具有成本效益。

您可以建立設定了分層儲存的 Amazon MSK 叢集，平衡效能和成本。Amazon MSK 會將串流資料儲存在效能最佳化的主要儲存層中，直到資料達到 Apache Kafka 主題保留期限為止。然後，Amazon MSK 會自動將資料移入新的低成本儲存層。

當您的應用程式開始從分層儲存讀取資料時，您可以預期前幾個位元組的讀取延遲會增加。當您開始從低成本儲存層依序讀取剩餘資料時，您可以預期與主要儲存層近似的延遲。您不需要針對低成本分層儲存佈建任何儲存，也不需要管理基礎設施。您可儲存任意數量的資料，只需按實際使用量付費。此功能與 [KIP-405: Kafka Tiered Storage](https://cwiki.apache.org/confluence/display/KAFKA/KIP-405%3A+Kafka+Tiered+Storage) 中介紹的 API 相容。

如需有關調整 MSK 分層儲存叢集的大小、監控和最佳化的資訊，請參閱[使用 Amazon MSK 分層儲存執行生產工作負載的最佳實務](https://aws.amazon.com/blogs/big-data/best-practices-for-running-production-workloads-using-amazon-msk-tiered-storage/)。

以下為分層儲存的一些功能：
+ 您可以擴展到幾乎無限制的儲存空間。您不必了解如何擴展 Apache Kafka 基礎設施。
+ 您可以在 Apache Kafka 主題中將資料保留更長的時間，或增加主題儲存空間，而無需增加代理程式的數量。
+ 它提供了更長的持續時間安全緩衝區，以處理過程中的意外延遲。
+ 您可以使用現有的串流處理程式碼和 Kafka API，以舊資料的精確生產順序重新處理舊資料。
+ 由於次要儲存上的資料不需要跨代理程式磁碟進行複寫，因此分區重新平衡的速度會更快。
+ 代理程式與分層儲存之間的資料會在 VPC 內移動，不會透過網際網路傳輸。
+ 用戶端機器可以使用相同的程序連線至已啟用分層儲存的新叢集，就像連線到未啟用分層儲存的叢集一樣。請參閱[建立用戶端機器](https://docs.aws.amazon.com/msk/latest/developerguide/create-client-machine.html)。

## Amazon MSK 叢集的分層儲存需求
<a name="msk-tiered-storage-requirements"></a>
+ 您必須使用 Apache Kafka 用戶端 3.0.0 或更高版本，才能建立已啟用分層儲存的新主題。若要將現有主題轉換到分層儲存，您可以重新設定使用 3.0.0 以下版本 (支援的 Apache Kafka 最低版本為 2.8.2.tiered) Kafka 用戶端的用戶端機器，以啟用分層儲存。請參閱 [步驟 4：在 Amazon MSK 叢集中建立主題](create-topic.md)。
+ 已啟用分層儲存的 Amazon MSK 叢集必須使用 3.6.0 版或更新版本，或 2.8.2.tiered。

## Amazon MSK 叢集的分層儲存限制和約束
<a name="msk-tiered-storage-constraints"></a>

分層儲存具有下列限制：
+ 在 Amazon MSK 中從 remote\_tier 讀取`read_committed`時，請確定用戶端未設定為 ，除非應用程式主動使用交易功能。
+ 分層儲存不適用於 AWS GovCloud (US) 區域。
+ 分層儲存僅適用於佈建類型叢集。
+ 分層儲存不支援代理程式大小 t3.small。
+ 低成本儲存的最短保留期間為 3 天。主要儲存沒有最短保留期間。
+ 分層儲存不支援在代理程式上使用多日誌目錄 (JBOD 相關功能)。
+ 分層儲存不支援壓縮主題。確定已開啟分層儲存的所有主題都已將其 cleanup.policy 設定為僅限「DELETE」。
+ 分層儲存叢集不支援在建立主題之後變更主題的 log.cleanup.policy 政策。
+ 您可以針對個別主題停用分層儲存，但無法針對整個叢集停用分層儲存。停用後，就無法針對主題重新啟用分層儲存。
+ 如果您使用 Amazon MSK 2.8.2.tiered 版，您只能遷移至另一個分層儲存支援的 Apache Kafka 版本。如果您不想繼續使用分層儲存支援版本，請建立新的 MSK 叢集，並將您的資料遷移至其中。
+ kafka-log-dirs 工具無法報告分層儲存資料大小。此工具只會報告主要儲存中的日誌區段大小。

如需在主題層級設定分層儲存時必須注意的預設設定和限制條件的相關資訊，請參閱 [Amazon MSK 分層儲存主題層級組態的指導方針](msk-guidelines-tiered-storage-topic-level-config.md)。