專用 Exadata 基礎架構上的自治式 AI 資料庫運算管理
專用 Exadata 基礎架構上的自治式 AI 資料庫提供兩種運算模型,同時設定您的自治式 AI 資料庫資源。分別是:
-
ECPU :ECPU 是運算資源的抽象計量。ECPU 是以從運算和儲存伺服器集區彈性配置的核心數目為基礎。您至少需要 2 個 ECPU 才能佈建自治式 AI 資料庫。
在佈建新資料庫、複製現有資料庫及縱向擴展或縮減現有資料庫的 CPU 資源時,CPU 數目預設為 2 個 ECPU,增量單位為 1。例如,下一個 2 以上的可用 ECPU 數目是 3。
您可以在以 ECPU 為基礎的容器資料庫上建立適用於開發人員的自治式 AI 資料庫。他們是免費的自治式 AI 資料庫,開發人員可以用來建置和測試新的應用程式。如需詳細資訊,請參閱適用於開發人員的自治式 AI 資料庫。
-
OCPU :OCPU 是運算資源的實體計量。OCPU 是以啟用超繫線功能的處理器實體核心為基礎。
注意: OCPU 是舊有的計費度量,已不再提供專用 Exadata 基礎架構上的自治式 AI 資料庫。Oracle 建議對所有新的和現有的自治式 AI 資料庫部署使用 ECPU。如需更多資訊,請參閱 Oracle Support Document 2998755.1 。
佈建新資料庫時,請複製現有資料庫,然後縱向擴展或縮減現有資料庫的 CPU 資源:
-
CPU 數目預設為 1 個 OCPU,增量單位為 1。例如,下一個 1 以上的可用 OCPU 數目是 2。
-
對於不需要整個 OCPU 的資料庫,您可以將 OCPU 從 0.1 指派給 0.9,增量單位為 0.1 OCPU。這可讓您過度佈建 CPU,並在每個基礎架構執行處理上執行更多資料庫。如需詳細資訊,請參考 CPU 過度佈建。
-
自治式 Exadata VM 叢集的運算類型適用於其所有自治式容器資料庫和自治式 AI 資料庫執行處理。
運算管理
自治式 AI 資料庫執行處理會部署到自治式 Exadata VM 叢集 (AVMC) 和其子項自治式容器資料庫 (ACD) 中。Exadata 基礎架構能夠執行多個 AVMC。您在佈建 AVMC 資源時所配置的 CPU,將是其自治式 AI 資料庫可用的 CPU 總數。建立多個 AVMC 時,每個 AVMC 可擁有自己的總 CPU 值。
在啟動多個 VM 自治式 AI 資料庫功能之前,所建立的 Exadata 基礎架構 (EI) 資源的任何 Oracle Public Cloud 部署都無法使用多個 VM 自治式 Exadata VM 叢集。針對在多個 AVMC 功能啟動後建立的 X8M 產生和更新版本的 Exadata 基礎架構資源,系統會為您所選 Exadata 系統資源配置的每個伺服器建立一個叢集節點。如需有關在不同使用者群組之間限制這些 CPU 總數的資訊,請參閱隔離專區配額如何影響 CPU 管理。
注意:您可以在指定 Exadata 基礎架構上建立的 AVMC 和 ACD 資源數目上限會根據硬體產生而有所不同。如需有關每個世代限制的詳細資訊,請參閱資源限制和基礎架構資源配置特性。
在 AVMC 或 ACD 層次,可用於建立資料庫的 CPU 總數稱為可用的 CPU 。在 AVMC 資源層級,可用 CPU 將等於 CPU 總數,直到您建立第一個 ACD 為止。在您建立 ACD 之後,每個節點的 8 個 ECPU 或 2 個 OCPU 會從 AVMC 的可用 CPU 配置給新的 ACD。因此,AVMC 資源層級的可用 CPU 會相應減少。當您在該 ACD 中建立第一個自治式 AI 資料庫時,新資料庫會使用最初配置的 CPU (每個節點使用 8 個 ECPU 或 2 個 OCPU)。如果新資料庫需要超過 8 個 ECPU 或 2 個 OCPU,則會從父項 AVMC 的可用 CPU 指派這些 ECPU,以減少父項 AVMC 層級的可用 CPU。當您在每個 ACD 內建立更多 ACD 和佈建自治式 AI 資料庫時,可用的 CPU 值會隨之變更。
自治式 Exadata VM 叢集層級的可用 CPU 會套用至其所有自治式容器資料庫。如果您使用自動調整功能 (如「自動調整時 CPU 配置」中所述),容器資料庫可用的 CPU 數目會變得重要。
同樣地,當您手動縱向擴展自治式 AI 資料庫的 CPU 時,會使用父項 AVMC 層級之可用 CPU 的 CPU,並據此變更其值。
建立自治式 AI 資料庫時,依照預設,Oracle 會保留額外的 CPU,以確保即使發生任何節點故障,資料庫仍能以至少 50% 的容量執行。您可以在佈建 ACD 時,將跨節點保留的 CPU 百分比變更為 0% 或 25%。如需相關指示,請參閱建立自治式容器資料庫中的節點容錯移轉保留。這些額外的 CPU 不包含在計費中。
當自治式 AI 資料庫執行時,不論是在初始建立時或是在稍後手動調整作業指定,系統都會向您收取目前配置給資料庫的 CPU 數目費用。此外,如果對資料庫啟用自動調整功能,系統會針對資料庫因自動縱向擴展而使用的任何其他 CPU,每秒向您收取一次費用。如需有關如何測量和計算計費的詳細資訊,請參閱 CPU 計費詳細資訊。
自治式 AI 資料庫停止時,系統不會向您收取費用。不過,配置給它的 CPU 數目並不會傳回至其父項 AVMC 層次的可用 CPU,以進行整體部署。
當自治式 AI 資料庫終止或縱向縮減時,配置給它的 CPU 數目不會立即回到其父項 AVMC 層級的可用 CPU,以進行整體部署。它們會繼續包含在其父項容器資料庫可用的 CPU 數目中,直到該父項容器資料庫重新啟動為止。這些 CPU 稱為可回收的 CPU 。父項 AVMC 層次可回收的 CPU 是其所有 ACD 之可回收 CPU 的總和。當 ACD 重新啟動時,它會將其所有可回收的 CPU 傳回至其父項 AVMC 層次的可用 CPU。
重新啟動自治式容器資料庫 (ACD) 是一項線上作業,會以輪流方式在整個叢集中執行,如果根據使用「通透應用程式連續性」的最佳做法進行設定,則不會導致應用程式停止工作。
秘訣:您可以從自治式 Exadata VM 叢集 (AVMC) 或自治式容器資料庫 (ACD) 的詳細資訊頁面,追蹤本文中討論的不同運算 (CPU) 屬性。如需相關指引,請參閱資源使用狀況追蹤。
自動調整時 CPU 配置
自動調整功能可讓自治式 AI 資料庫使用比其配置的 CPU 數目多出 3 倍的 CPU 和 IO 資源。如果 CPU 過度佈建,如果 CPU 計數導致值小於 1 的三倍,則會將其四捨五入至下一個整數。僅 OCPU 支援 CPU 超額佈建。請參閱 CPU 過度佈建以瞭解詳細資訊。
為了確保沒有任何單一自治式 AI 資料庫可自動擴展,以使用集區中可用的所有 CPU 進行整體部署,專用 Exadata 基礎架構上的 Oracle Autonomous AI Database 使用自治式容器資料庫作為限制控制。
在 ACD 中佈建啟用自動調整功能的自治式 AI 資料庫時,如果該 ACD 中的可用 CPU 小於新資料庫的 3 倍 CPU 值,則會在該 ACD 中保留額外的 CPU。這些 CPU 稱為保留的 CPU 。保留的 CPU 可確保 ACD 層次的可用 CPU 一律大於或等於該 ACD 中啟用自動調整之最大資料庫的 3 倍 CPU 值。這些保留的 CPU 仍可用於建立或手動調整此 ACD 中的自治式 AI 資料庫。
自動縱向擴展自治式 AI 資料庫時,專用 Exadata 基礎架構上的 Oracle Autonomous AI Database 會在父項容器資料庫中尋找閒置的 CPU。如果有閒置的 CPU,就會縱向擴展自治式 AI 資料庫;否則就不會進行擴展。資料庫原本會有大量閒置時間,因此自動調整是一種將資源使用量最大化的方式,同時控制成本,並保留與其他自治式容器資料庫中資料庫良好的隔離。
如果用於自動調整自治式 AI 資料庫的 CPU 是來自另一個輕量載入的執行中自治式 AI 資料庫,而不是使用其所有配置的 CPU,則專用 Exadata 基礎架構上的 Oracle Autonomous AI Database 會在負載增加且需要配置的 CPU 時,自動將自動調整的資料庫擴展。
假設有一個代管四個執行中 4 個 CPU 自治式 AI 資料庫的自治式容器資料庫範例,所有資料庫都已啟用自動調整功能。容器資料庫可用於自動調整的 CPU 數目為 12。如果這些資料庫之一因負載增加而需要自動調整超過 4 個 CPU,則專用 Exadata 基礎架構上的 Oracle Autonomous AI Database 只會在一或多個其他資料庫輕量載入且未使用所有配置的 CPU 時執行自動調整作業。此範例的計費成本至少為 16 個 CPU,因為四個 CPU 資料庫一律都在執行中。
相較之下,請考慮代管四個執行中 2 個 CPU 自治式 AI 資料庫的自治式容器資料庫範例,這些資料庫全都已啟用自動調整功能,以及一個已停止的 8 個 CPU 自治式 AI 資料庫。容器資料庫可用於自動調整的 CPU 數目又是 16 個。如果因為負載增加超過 2 個 CPU 而需要自動調整其中一個執行中的資料庫,則專用 Exadata 基礎架構上的 Oracle Autonomous AI Database 可以使用配置給已停止之 8-CPU 資料庫的 CPU 執行作業。在此範例中,四個執行中的資料庫總共可同時使用 8 個額外的 CPU,而不會耗用彼此的配置 CPU。此範例的計費成本至少只有 8 個 CPU,因為只有 4 個 CPU 資料庫一律在執行中。
對於任何自治式資料保全服務執行處理 (本機或跨區域),無論是否啟用自動調整,額外的定價將會是您建立或明確調整主要服務執行處理時所保留的 ECPU 或 OCPU 數目。自治式資料保全待命服務執行處理不會對主要服務執行處理使用自動調整相關的 ECPU 或 OCPU。
區間配額如何影響 CPU 管理
一般而言,當您建立或縱向擴展自治式 AI 資料庫時,Oracle Autonomous AI Database on Dedicated Exadata Infrastructure 能滿足您的要求,取決於整個部署中單一 CPU 集區中未配置 CPU 的可用性。
不過,您可以使用 Oracle Cloud Infrastructure 的區間配額功能,依區間進一步限制每個工作負載類型 (自治式 AI 湖倉一體或自治式 AI 交易處理) 可建立、手動調整及自動調整自治式 AI 資料庫的 CPU 數目。
簡而言之,您可以建立 set、unset 和 zero 原則敘述句來使用區間配額功能,以限制指定區間中指定資源的可用性。如需詳細資訊和說明,請參閱區間配額。
VM 叢集節點如何影響 CPU 管理
佈建 AVMC 資源時,您可以選擇每個節點的 CPU 數目,以建立多個自治式 Exadata VM 叢集 (AVMC) 資源的前述 CPU 管理和配置狀態討論。
本節將探討 Oracle Cloud Infrastructure 如何將自治式 AI 資料庫放置在 VM 叢集節點中的詳細內容,以及這些位置在自動擴展和平行處理的後果。
下列屬性決定在多個節點間放置自治式 AI 資料庫的時機和方式:
-
分割臨界值:Oracle Cloud Infrastructure 在多個節點間開啟自治式 AI 資料庫的 CPU 值。ECPU 的預設分割臨界值為 64 個,OCPU 的預設分割臨界值為 16 個,但如果 VM 叢集的 CPU 節點數目低於預設值,則預設值會覆寫為 VM 叢集節點數目大小。您也可以在佈建自治式容器資料庫 (ACD) 時,使用「分割臨界值」屬性明確設定分割值。
以 CPU 值小於分割值建立的自治式 AI 資料庫將會在叢集中的一個節點開啟,且 CPU 值大於分割臨界值的自治式 AI 資料庫將會在多個節點上開啟。
-
假設您在具有兩個節點和每個節點 40 個 ECPU 的 AVMC 中,建立一個具有預設分割臨界值 (64 個 ECPU) 的 ACD。由於 40 小於 64,因此任何 CPU 需求大於 40 的自治式 AI 資料庫都會跨多個節點分割並開啟,以允許跨這些節點執行 DML 要求。不過,如果 AVMC 建立時有兩個節點和每個節點 80 個 ECPU,則 ECPU 需求大於 64 的任何資料庫都將被分割並開啟多個節點。
-
假設您在 VM 叢集中建立一個 ACD,每個節點具有兩個節點和 40 個 ECPU,並明確地將分割臨界值設為較小的值,例如 20 個 ECPU。任何 CPU 需求大於 20 的自治式 AI 資料庫都將在多個節點間分割並開啟,而 CPU 需求小於 20 的資料庫將會在單一節點上開啟。
將分割臨界值設為比預設值還小的數字,會增加在多個節點上開啟較小的 CPU 計數之資料庫的機會,只要它們的 CPU 計數多於設定的分割值。每當資料庫建立或調整為大於此分割值的大小時,就會在多個節點上開啟資料庫。當您要讓資料庫在多個節點上開啟,以控制發生節點故障或計畫性維護時的效能降低時,此功能非常有用。若資料庫在大型 RAC 叢集中跨多個節點分割,如果任一個節點失敗,或排定的維護發生時,您可以繼續擁有較高的效能,而不是降級至 50% 的效能設定檔。
-
假設您在具有兩個節點和 40 個 ECPU 的 AVMC 中,明確將分割臨界值設為高於預設值 (例如 80 個 ECPU)。任何 CPU 需求大於 40 的自治式 AI 資料庫都將在多個節點上分割並開啟,CPU 需求小於 40 的資料庫將會在單一節點上開啟。
將分割臨界值設為大於預設值,會讓您的資料庫 DML 保持在單一 RAC 節點上,並消除叢集等待競爭的機會。
-
當您手動調整自治式 AI 資料庫時,新的 CPU 值將會套用至現有的分割模型。也就是說,如果新值小於分割臨界值,它就會在一個節點上開啟,如果該值大於分割臨界值,它就會在多個節點上開啟。
-
-
分配相關性:決定自治式 AI 資料庫超過分割臨界值後將開啟的節點數目。
例如,假設您建立一個包含 4 個節點和 80 個 ECPU 的 AVMC 資源,然後在此 AVMC 中建立一個 ACD,並將資料庫分割臨界值設為 64。建立 ECPU 需求為 120 的自治式 AI 資料庫時,會將多個節點的資料庫分割為大於 64 的 120 (分割臨界值)。
-
如果您的分配相關性設為最低節點數,Oracle Cloud Infrastructure 會嘗試在每個節點上建立 2 個具有 60 個 ECPU 的節點上的資料庫。如果無法這麼做,會將其分割至 3 個節點,而且每個節點各有 40 個 ECPU。此外,如果無法這麼做,Oracle Cloud Infrastructure 將嘗試跨 4 個節點開啟資料庫,每個節點各有 30 個 ECPU。
-
如果您指定節點數目上限的分配相關性,Oracle Cloud Infrastructure 會嘗試在所有 4 個節點之間建立資料庫分割,每個節點各有 30 個 ECPU。如果無法這麼做,會將它分割為三個節點,而且每個節點各有 40 個 ECPU。此外,如果無法這麼做,Oracle Cloud Infrastructure 將嘗試跨 2 個節點開啟資料庫,每個節點各有 60 個 ECPU。
-
-
節點容錯移轉保留 (%) :AVMC 中相鄰節點 (您的資料庫軟體存在但未開啟的節點) 上所設定的 CPU 數目,用於區域化失敗和維護事件。「節點容錯移轉保留」會套用至非分割資料庫部署。依照預設,有 50% 的保留 (這表示在失敗事件或維護期間,您將繼續執行,但是在配置的 CPU 的 50%。
-
對於使用率非常輕的非關鍵資料庫或資料庫,您可以將「節點容錯移轉保留」設為較小的值,如此一來,您就可以在專用 Exadata 基礎架構上建立及合併大量資料庫。
-
對於可接受維護期間停機的開發環境和資料庫,您可以將此值設為零。
-
在某些情況下,也可以透過使用分割臨界值和分送相關性,確保將資料庫分割到兩個以上的節點來控制節點容錯移轉保留。請考慮將自治式 AI 資料庫分割為 4 個節點的情況。在維護活動進行時,只要以輪流方式一次移除一個節點,您一律會有 3 個節點繼續運作並流量,有效維持 75% 的效能保留,而不是一般的 50%。有了較大的叢集,您甚至可以進一步驅動此保留,對 8 節點叢集的 87.5% 保留。
-
自治式 AI 資料庫的 CPU 配置在 VM 叢集節點之間的分配方式會影響下列作業:
-
自動調整:
-
如果 DML 可平行化,則單一 VM 叢集節點內可能會有無法平行化 DML 的自動調整,以及跨 VM 叢集節點自動調整。
-
可以將具有不可平行查詢的多個並行階段作業遞送至叢集中的所有節點,有效地允許在多節點資料庫中的所有節點進行自動調整。
-
-
並行處理:
- SQL 敘述句的平行處理發生在已開啟的自治式 Exadata VM 叢集節點內,先在單一節點內,然後在相鄰的開啟節點中 (如上所述),將視自治式 Exadata VM 叢集的大小而定。
根據每個節點的資源使用量;並非所有可用的 CPU 值都可用於佈建或調整自治式 AI 資料庫。例如,假設您在 AVMC 層級有 20 個可用 CPU,並非 1 到 20 個 CPU 的所有值都可用來佈建或調整自治式 AI 資料庫 (視節點層級的資源可用性而定)。可用於佈建或調整自治式 AI 資料庫的 CPU 值清單稱為可佈建的 CPU 。
當您嘗試從 OCI 主控台佈建或調整自治式 AI 資料庫時,CPU 欄位會提供含有可佈建 CPU 清單的下拉式清單。或者,您可以使用下列 API 取得暫定 CPU 值的清單:
-
GetAutonomousContainerDatabase 會傳回一份可佈建的 CPU 值清單,可用來在指定的自治式容器資料庫中建立新的自治式 AI 資料庫。請參閱 GetAutonomousContainerDatabase 以瞭解詳細資訊。
-
GetAutonomousDatabase 會傳回可用於調整指定之自治式 AI 資料庫的可佈建 CPU 值清單。請參閱 GetAutonomousDatabase 以瞭解詳細資訊。