本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管理 Amazon OpenSearch Serverless 的容量限制
透過 Amazon OpenSearch Serverless,您就不需自行管理容量。OpenSearch Serverless 會根據目前的工作負載自動擴展帳戶的運算容量。Serverless 運算容量是以 OpenSearch 運算單元 (OCU) 來測量。每個 OCU 都是 6 GiB 記憶體和對應虛擬 CPU (vCPU) 的組合,並會建立 Amazon S3 的資料管道。如需有關 OpenSearch Serverless 中分開的架構的詳細資訊,請參閱運作方式。
當您建立第一個集合時,OpenSearch Serverless 會根據備援設定執行個體化 OCUs。預設會啟用備援作用中複本,這會執行個體化四個 OCUs (兩個用於索引,兩個用於搜尋)。這可確保另一個可用區域中待命節點的高可用性。
對於開發和測試,您可以停用集合的啟用備援設定。這會移除待命複本,並僅使用兩個 OCUs (一個用於索引,另一個用於搜尋)。
這些 OCU 會永遠存在,即使沒有索引編製或搜尋活動也一樣。所有後續集合都可以共用這些 OCUs,但具有唯一 AWS KMS 金鑰的集合除外,這會執行個體化自己的一組 OCUs。與集合群組相關聯的所有集合可以共用相同的一組 OCUs。單一集合群組中只能包含一種集合類型 (搜尋、時間序列或向量搜尋)。如需詳細資訊,請參閱Amazon OpenSearch Serverless 集合群組。
OpenSearch Serverless 會自動向外擴展,並在索引和搜尋用量增加時新增 OCUs。當流量減少時,容量會縮減至資料大小所需的最小 OCUs 數量。
對於搜尋和時間序列集合,閒置時所需的 OCUs 數量與資料大小和索引計數成正比。對於向量集合,OCU 需求依賴記憶體 (RAM) 來存放向量圖形,以及存放索引的磁碟空間。非閒置時,OCU 需求會考慮這兩個因素。
向量集合會將索引資料儲存在 OCU 本機儲存中。達到 OCU RAM 限制的速度快於磁碟限制,這會依 RAM 空間限制向量集合。
啟用備援後,OCU 容量會縮減至至少 1 個用於索引的 OCU (0.5 個 OCU x 2),以及 1 個用於搜尋的 OCU (0.5 個 OCU x 2)。當您停用備援時,您的集合可以縮減至 0.5 OCU 進行索引,而 0.5 OCU 進行搜尋。
擴展也會考慮集合或索引所需的碎片數量。每個 OCU 都支援指定的碎片數量,索引數量應與碎片計數成比例。所需的基本 OCUs 總數是資料、記憶體和碎片需求的上限。如需詳細資訊,請參閱AWS 大數據部落格上任何規模的 Amazon OpenSearch Serverless 經濟實惠搜尋功能
對於搜尋和向量搜尋集合,所有資料都存放在熱索引上,以確保快速的查詢回應時間。時間序列集合使用熱儲存和暖儲存的組合,將最新的資料保留在熱儲存中,以最佳化更頻繁存取資料的查詢回應時間。如需詳細資訊,請參閱選擇集合類型。
注意
向量搜尋集合無法與搜尋和時間序列集合共用 OCUs,即使向量搜尋集合使用與搜尋或時間序列集合相同的 KMS 金鑰。將針對您的第一個向量集合建立新的一組 OCUs。向量集合的 OCUs 會在相同的 KMS 金鑰集合之間共用。
若要管理集合的容量並控制成本,您可以指定目前帳戶和區域的整體索引編制和搜尋容量上限,而 OpenSearch Serverless 會根據這些規格自動橫向擴展集合資源。
索引編製和搜尋容量會分別調整,因此您可以針對每個容量指定帳戶層級限制:
-
索引編製容量上限:OpenSearch Serverless 可將索引編製容量提高到這個數目的 OCU。
-
搜尋容量上限:OpenSearch Serverless 可將搜尋容量提高到這個數目的 OCU。
注意
目前,容量設定僅適用於帳戶層級。您無法設定每個集合的容量限制。
您的目標應該是確保容量上限足以處理尖峰工作負載。OpenSearch Serverless 會根據設定,自動橫向擴展集合的 OCU 數目,以處理索引編制和搜尋工作負載。
進行容量設定
若要在 OpenSearch Serverless 主控台中進行容量設定,請在左側導覽窗格中,展開 Serverless (無伺服器),然後選取 Dashboard (儀表板)。在 Capacity management (容量管理) 下指定索引編製和搜尋容量上限:
若要使用 設定容量 AWS CLI,請傳送 UpdateAccountSettings 請求:
aws opensearchserverless update-account-settings \ --capacity-limits '{ "maxIndexingCapacityInOCU":8,"maxSearchCapacityInOCU":9}'
容量限制上限
集合可包含的索引總數上限為 1000。對於這三種類型的集合,預設的 OCU 容量上限為 10 個用於索引OCUs,以及 10 個用於搜尋OCUs。帳戶允許的最小 OCU 容量為 1 個 OCU 【0.5 個 OCU x 2】 用於索引,1 個 OCU 【0.5 個 OCU x 2】 用於搜尋。對於所有集合,允許的最大容量為 1,700 個用於索引OCUs,以及 1,700 個用於搜尋OCUs。您可以將 OCU 計數設定為從 1 到最大允許容量的任何數字,以 2 的倍數表示。
每個 OCU 都包含足夠的暫時性熱儲存,可容納 120 GiB 的索引資料。OpenSearch Serverless 支援搜尋和向量搜尋集合中每個索引最多 1 TiB 的資料,以及時間序列集合中每個索引最多 100 TiB 的熱資料。對於時間序列收集,您仍然可以擷取更多資料,這些資料可以儲存為 S3 中的暖資料。
如需所有配額的清單,請參閱 OpenSearch Serverless 配額。
監控容量用量
您可以監控 SearchOCU 和 IndexingOCU 帳戶層級 CloudWatch 指標,以了解集合的擴展方式。建議您設定警示,以在帳戶接近與容量相關的指標閾值時通知您,如此您就可相應調整容量設定。
您也可使用這些指標,判斷容量上限設定是否合適,或者是否需要進行調整。分析這些指標,以將精力集中於集合效率的優化。如需有關 OpenSearch Serverless 傳送至 CloudWatch 的指標的詳細資訊,請參閱監控 Amazon OpenSearch Serverless。