Autonomous Database on Dedicated Exadata Infrastructure 中的運算管理

Autonomous Database on Dedicated Exadata Infrastructure 提供兩種運算模型,同時設定您的 Autonomous Database 資源。分別是:
  • ECPU :ECPU 是運算資源的抽象計量。ECPU 是以從運算與儲存伺服器集區彈性配置的核心數目為基礎。您至少需要 2 個 ECPU 才能佈建 Autonomous Database

    在佈建新資料庫、複製現有資料庫,以及縱向擴展或縮減現有資料庫的 CPU 資源時,CPU 數目預設為 2 個 ECPU,增量單位為 1。例如,低於 2 的下一個可用 ECPU 數目為 3。

    您可以在 ECPU 型容器資料庫上建立 Autonomous Database for Developers 執行處理。這些是免費的 Autonomous Database ,開發人員可以使用這些資料庫來建置和測試新的應用程式。請參閱適用於開發人員的 Autonomous Database 以瞭解詳細資訊。

  • OCPU :OCPU 是運算資源的實體評量。OCPU 是以啟用超繫線功能處理器的實體核心為基礎。

    附註:

    OCPU 是舊有的計費度量,已針對 Autonomous Database on Dedicated Exadata Infrastructure 停用。Oracle 建議為所有新的和現有的 Autonomous Database 部署使用 ECPU。請參閱 Oracle Support 文件 2998755.1 以瞭解詳細資訊。

    佈建新資料庫、複製現有資料庫,以及擴大或縮小現有資料庫的 CPU 資源時:

    • CPU 數目預設為 1 個 OCPU,增量單位為 1。例如,1 以上的下一個可用 OCPU 數目為 2。
    • 對於不需要整個 OCPU 的資料庫,您可以指定 0.1 到 0.9 的 OCPU,以增量單位為 0.1 OCPU。這可讓您過度佈建 CPU,並在每個基礎架構執行處理上執行更多資料庫。如需詳細資訊,請參閱 CPU 過度佈建

自治式 Exadata VM 叢集的運算類型適用於其所有自治式容器資料庫和 Autonomous Database 執行處理。

運算管理

Autonomous Database 執行處理會部署到自治式 Exadata VM 叢集 (AVMC) 及其子項自治式容器資料庫 (ACD) 中。Exadata 基礎架構能夠執行多個 AVMC。在佈建 AVMC 資源時所配置的 CPU 是其 Autonomous Database 可用的 CPU 總數。建立多個 AVMC 時,每個 AVMC 都可擁有自己的 CPU 總計值。

在啟動多個 VM Autonomous Database 功能之前建立之 Exadata Infrastructure (EI) 資源的任何 Oracle Public Cloud 部署上,都無法使用多個 VM 自治式 Exadata VM 叢集。對於在啟動多個 AVMC 功能後建立的 X8M 產生和以上的 Exadata 基礎架構資源,每個 AVMC 都會為您所選擇的 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 中建立第一個 Autonomous Database 時,新資料庫會使用初始配置的 CPU (每個節點 8 個 ECPU 或 2 個 OCPU)。如果新資料庫需要 8 個以上的 ECPU 或 2 個 OCPU,則會從父項 AVMC 的可用 CPU 進行指派,減少父項 AVMC 層級的可用 CPU。當您建立更多 ACD 並在每個 ACD 內佈建 Autonomous Database 時,可用的 CPU 值會隨之變更。

自治式 Exadata VM 叢集層級的可用 CPU 會套用至其所有自治式容器資料庫。如果您使用自動調整功能 (如自動調整時 CPU 配置中所述),則此容器資料庫可用的 CPU 數將非常重要。

同樣地,當您手動縱向擴展 Autonomous Database 的 CPU 時,系統會從其父 AVMC 層次的可用 CPU 使用 CPU,並據此變更其值。

當您建立 Autonomous Database 時,Oracle 預設會保留額外的 CPU,以確保資料庫能夠以至少 50% 的容量執行,即使發生任何節點故障也一樣。您可以在佈建 ACD 時,將節點間保留的 CPU 百分比變更為 0% 或 25%。請參閱建立自治式容器資料庫中的節點容錯移轉保留,以取得相關指示。這些額外的 CPU 不包括在計費中。

Autonomous Database 執行中時,不論是在初始建立時指定,或是在稍後由手動調整作業指定,您都會向您收取目前配置給資料庫的 CPU 數目費用。此外,如果資料庫已啟用自動調整功能,則資料庫因自動縱向擴展而使用的任何其他 CPU,每秒都會向您收取費用。如需有關如何測量及計算帳單的詳細資訊,請參閱 CPU 帳單明細

Autonomous Database 停止時,不會向您收取費用。不過,配置給它的 CPU 數目不會傳回到其父項 AVMC 層次的可用 CPU 以進行整體部署。

Autonomous Database 終止或縮小時,配置給它的 CPU 數目不會立即傳回給其父項 AVMC 層次的可用 CPU,以進行整體部署。它們會繼續包含在其父項容器資料庫可用的 CPU 計數中,直到該父項容器資料庫重新啟動為止。這些 CPU 稱為可回收的 CPU 。父項 AVMC 層次的可回收 CPU 是其所有 ACD 可回收 CPU 的總和。當 ACD 重新啟動時,它會將其所有可回收的 CPU 回到其父 AVMC 層次的可用 CPU。

重新啟動自治式容器資料庫 (ACD) 是一項線上作業,以輪流方式在整個叢集完成,如果根據使用「通透應用程式連續性」的最佳做法設定,將不會導致應用程式停止工作。

秘訣:

您可以從自治式 Exadata VM 叢集 (AVMC) 或自治式容器資料庫 (ACD) 的詳細資訊頁面,追蹤本文中討論的不同運算 (CPU) 屬性。如需相關指引,請參閱資源使用情況追蹤

自動調整時的 CPU 配置

自動調整功能可讓 Autonomous Database 比其配置的 CPU 數目多出三倍的 CPU 和 IO 資源。如果是 CPU 過度佈建,如果 CPU 計數的三倍導致值小於 1,則會四捨五入至下一個整數。僅 OCPU 支援 CPU 過度佈建。請參閱 CPU 過度佈建以瞭解詳細資訊。

為了確保沒有任何單一 Autonomous Database 可自動縱向擴展,以使用集區中所有可用的 CPU 進行整體部署,Oracle Autonomous Database on Dedicated Exadata Infrastructure 使用自治式容器資料庫作為限制控制。

在 ACD 中佈建啟用自動調整功能的 Autonomous Database 時,如果該 ACD 中的可用 CPU 小於新資料庫的 3X CPU 值,則會在該 ACD 中保留額外的 CPU。這些 CPU 稱為保留的 CPU 。保留的 CPU 可確保 ACD 層次的可用 CPU 永遠大於或等於該 ACD 中最大啟用自動調整資料庫的 3x CPU 值。這些保留的 CPU 仍可用於建立或手動調整此 ACD 中的 Autonomous Database

自動縱向擴展 Autonomous Database 時,Oracle Autonomous Database on Dedicated Exadata Infrastructure 會在其父項容器資料庫中尋找閒置的 CPU。如果有閒置的 CPU 可用,Autonomous Database 會縱向擴展;否則就不會擴展。資料庫本身具有大量閒置時間,因此自動調整是最大化資源使用量的方法,同時控制成本,並保持與其他自治式容器資料庫中的資料庫良好的隔離。

如果用於自動調整 Autonomous Database 的 CPU 來自另一個執行中的 Autonomous Database,且未使用其所有配置的 CPU,Oracle Autonomous Database on Dedicated Exadata Infrastructure 會在其他資料庫的負載增加且需要使用其配置的 CPU 時,自動縮減自動調整的資料庫。

例如代管 4 個執行中 4 個 CPU 自治式資料庫的自治式容器資料庫範例,全部都已啟用自動調整功能。用於自動擴展之容器資料庫的 CPU 數目為 12。如果其中一個資料庫因負載增加而需要自動調整過去 4 個 CPU,Oracle Autonomous Database on Dedicated Exadata Infrastructure 只會在一或多個其他資料庫輕量載入且未使用所有配置的 CPU 時執行自動調整作業。此範例的計費成本至少為 16 個 CPU,因為四個 CPU 資料庫一律都在執行中。

相較之下,請考慮代管四個執行中 2 個 CPU 自治式資料庫的自治式容器資料庫範例,這些資料庫全都已啟用自動調整功能,以及一個停止的 8 個 CPU Autonomous Database。容器資料庫可作為自動調整用途的 CPU 數目又為 16 個。Oracle Autonomous Database on Dedicated Exadata Infrastructure 能夠使用配置給已停止 8 個 CPU 資料庫的 CPU 執行作業,因此必須自動調整其中一個執行中的資料庫。在此範例中,四個執行中的資料庫最多可同時使用 8 個額外的 CPU,而不會耗用彼此配置的 CPU。此範例的計費成本至少為 8 個 CPU,因為只有 4 個 2 個 CPU 資料庫始終在執行中。

對於任何自治式資料保全服務執行處理 (本機或跨區域),額外價格將是您在建立或明確調整主要服務執行處理時所保留的 ECPU 或 OCPU 數目,無論是否啟用自動調整功能。自治式資料保全待命服務執行處理上不會進行主要服務執行處理的自動調整相關 ECPU 或 OCPU 使用量。

區間配額如何影響 CPU 管理

一般而言,當您建立或縱向擴展 Autonomous Database 時,Oracle Autonomous Database on Dedicated Exadata Infrastructure 能夠滿足您的要求,僅取決於整個部署中 CPU 單一集區中未配置 CPU 的可用性。

不過,您可以使用 Oracle Cloud Infrastructure 的區間配額功能,依區間進一步限制可個別建立、手動調整每個工作負載類型 (資料倉儲或交易處理) 自治式資料庫的 CPU 數目。

簡而言之,您可以建立 setunsetzero 原則敘述句來使用區間配額功能,以限制指定區間中指定資源的可用性。如需詳細資訊和指示,請參閱區間配額

VM 叢集節點如何影響 CPU 管理

前述 CPU 管理和配置討論說明,您可以在佈建 AVMC 資源時,選擇每個節點的 CPU 數目,以建立多個自治式 Exadata VM 叢集 (AVMC) 資源。

本節將討論有關 Oracle Cloud Infrastructure 如何將 Autonomous Database 置於 VM 叢集節點的精細詳細資訊,以及此類置於自動擴展和平行處理上的後果。

下列屬性決定 Autonomous Database 在多個節點間放置的時間和方式:
  • 分割臨界值Oracle Cloud Infrastructure 在多個節點間開啟 Autonomous Database 的 CPU 值。ECPU 的預設分割臨界值為 64,而 OCPU 則為 16,但如果 VM 叢集的建立 CPU 節點數目低於預設值,則會將預設值覆寫為 VM 叢集節點數目大小。您也可以在啟動設定自治式容器資料庫 (ACD) 時,使用「分割臨界值」屬性明確設定分割值。

    Autonomous Databases created with a CPU value that is smaller than the split value will open on one node in the cluster and those created with a CPU value larger than the split threshold value will open on multiple nodes.

    • 假設您在 AVMC 中建立一個具有預設分割臨界值 (64 個 ECPU) 的 ACD,其中兩個節點和每個節點 40 個 ECPU。由於 40 小於 64,任何 CPU 需求大於 40 的 Autonomous Database 將在多個節點間進行分割與開啟,以允許在這些節點之間進行 DML 要求。不過,如果 AVMC 是以兩個節點和每個節點 80 個 ECPU 建立的,任何 ECPU 需求大於 64 的資料庫都會被分割並跨多個節點開啟。

    • 假設您在 VM 叢集中建立 ACD,每個節點有兩個節點和每個節點 40 個 ECPU,並且明確將分割臨界值設為更小的值,例如 20 個 ECPU。任何 CPU 需求大於 20 的 Autonomous Database 將在多個節點間進行分割與開啟,且 CPU 需求小於 20 的資料庫將會在單一節點上開啟。

      將分割臨界值設為小於預設值的較小值,會增加多個節點上開啟較小 CPU 計數之資料庫的機會,只要其 CPU 計數大於設定的分割值即可。每當建立資料庫或擴展成大於此分割值的大小時,會在多個節點上開啟該資料庫。當您希望資料庫在多個節點上開啟,以便在發生節點故障或計劃性維護時控制效能降低時,此功能非常有用。將資料庫分割至較大 RAC 叢集中的多個節點時,如果有任何一個節點失敗或發生排定的維護,您可以繼續擁有較高的效能,而不是降低至 50% 的效能設定檔。

    • 假設您在具有兩個節點和 40 個 ECPU 的 AVMC 中,明確將分割臨界值設為比預設值高 (例如 80 個 ECPU)。任何 CPU 需求大於 40 的 Autonomous Database 將在多個節點間進行分割與開啟,而 CPU 需求小於 40 的資料庫將會在單一節點上開啟。

      將分割臨界值設為大於預設值的值,會讓您的資料庫 DML 維持在單一 RAC 節點上,並排除叢集等待競爭的機會。

    • 當您手動調整 Autonomous Database 時,新的 CPU 值將會套用至現有的分割模型。亦即,如果新值小於分割臨界值,則會在一個節點上開啟,如果該值大於分割臨界值,則會在多個節點上開啟。

  • 分送相關性:決定將 Autonomous Database 超過分割臨界值後開啟的節點數目。

    例如,假設您建立了一個 AVMC 資源,其中每個節點有 4 個節點和 80 個 ECPU,而您在此 AVMC 中建立一個 ACD,並將資料庫分割臨界值設為 64。若建立 Autonomous Database 且 ECPU 需求為 120,將會跨多個節點分割並開啟資料庫,使其成為 120 大於 64 的節點 (分割臨界值)。
    • 如果您的分佈相關性設為最小節點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% 的保留 (亦即,在失敗事件或維護期間),您會繼續執行,但會維持 50% 的配置 CPU。

    • 對於使用率非常輕的非關鍵資料庫或資料庫,您可以將「節點容錯移轉保留」設為較小的值,這樣就可以在「專用 Exadata 基礎架構」上建立和合併大量的資料庫。

    • 對於可接受維護期間停機的開發環境和資料庫,您可以將此值設為零。

    • 在某些情況下,節點容錯移轉保留也可以透過使用分割臨界值與分配相關性來確保資料庫在超過 2 個節點之間分割來進行控制。假設Autonomous Database 在 4 個節點之間分割的情況。藉由在維護活動進行時,以滾動方式一次移除一個節點,您永遠會有 3 個節點持續運作並流量,讓您的效能保留更有效率 75%,而不是一般的 50%。使用較大的叢集時,您可以進一步啟動此保留,例如 8 節點叢集上的 87.5% 保留區。
Autonomous Database 的 CPU 配置如何在 VM 叢集節點之間分配,會影響下列作業:
  • 自動調整:
    • 如果 DML 可平行化,則自動調整功能可能會發生在單一 VM 叢集節點內用於不可平行的 DML 和跨 VM 叢集節點。
    • 具有不可平行查詢的多個並行階段作業可以路由至叢集中的所有節點,有效地允許在多重節點資料庫中的所有節點之間自動調整。
  • 平行處理:
    • SQL 敘述句的平行處理發生於自治式 Exadata VM 叢集節點中,這些節點先在單一節點內開啟,然後在相鄰的開啟節點中 (如上所述),取決於自治式 Exadata VM 叢集的大小。

根據每個節點的資源使用率;並非所有可用的 CPU 值都可用來佈建或調整 Autonomous Database 。例如,假設您有 20 個 CPU 可在 AVMC 層級使用,並非所有 1 到 20 個 CPU 的值都可用來佈建或調整 Autonomous Database ,視節點層級的資源可用性而定。可用於佈建或調整 Autonomous Database 規模的 CPU 值清單稱為可佈建的 CPU

當您嘗試從 OCI 主控台佈建或調整 Autonomous Database 時,CPU 欄位會提供內含可佈建 CPU 清單的下拉式清單。或者,您可以使用下列 API 取得暫用 CPU 值清單:
  • GetAutonomousContainerDatabase 會傳回可用於在指定自治式容器資料庫中建立新的 Autonomous Database 的可佈建 CPU 值清單。請參閱 GetAutonomousContainerDatabase 以取得詳細資訊。

  • GetAutonomousDatabase 會傳回可用於縮放指定 Autonomous Database 的可佈建 CPU 值清單。請參閱 GetAutonomousDatabase 以取得詳細資訊。