在 Oracle Cloud、Microsoft Azure 和 Amazon Web Services 之間部署線性可擴展的分區 Oracle 資料庫
Oracle 分區可啟用超規模、全域分散式、融合式資料庫。它支援需要線性擴展性、彈性、故障隔離及地理分佈資料主權的應用程式。這麼做是將資料集的區塊分散至獨立的 Oracle 資料庫 (分區)。您可以在雲端或企業內部部署分區,而不需要任何專業的硬體或軟體。此共用架構中的分區在程式實際執行時無法相互通訊、這可讓您在不同的雲端或企業內部部署其他分區時、在一個雲端中部署分區。
架構
下列架構顯示容錯分區 Oracle Database 19c 拓樸。主要分區會在 Oracle Cloud、Microsoft Azure 和 Amazon Web Services 中的各個區域之間分送。對於每個主要分區,會在相同區域內佈建待命分區。
架構在每個雲端提供者的每個層 (分區導向器、目錄以及分區) 都有備援的資源,以確保分區資料庫的最大可用性。
下圖說明此參考架構。

sharded-db-oci-azure-aws.png 圖解描述
架構包含下列元件:
- 網際網路閘道
網際網路閘道允許公用子網路與公用網際網路之間的流量。每個雲端提供者都會連線至公用網際網路。
- 分區導向器
分區導向器 (也稱為全域服務管理程式) 是一個網路監聽器,可根據分區索引鍵,將高效能連線路由至適當的資料庫分區。
您可以指定所需的分區導向器數目。分區導向器會部署在每個雲端提供者的個別運算執行處理上。您可以選擇要用於分區導向器的運算執行處理資源配置。
- 主要和待命分區目錄
分區目錄是一個支援自動分區部署、分區資料庫集中管理以及多重分區查詢的特殊 Oracle Database 執行處理。
此架構包含單一節點資料庫系統中每個主要狀態組的目錄資料庫。您可以選擇目錄資料庫的資料庫資源配置和可用的儲存容量。每個雲端提供者都會部署一組主要狀態目錄資料庫。
- 資料庫分區
每個資料庫分區都是單一節點資料庫系統。主要分區會分散至 Oracle Cloud、Microsoft Azure 以及 Amazon Web Services。每個主要分區都有一個關聯的待命分區。
建議
- 分片的大小與數目部署堆疊時,您可以指定要使用的資料庫資源配置和分區數目。
- 根據您的工作負載需求選擇適當的形狀。您指定的資源配置會用於所有分區。
部署之後,您可以變更個別分區的形狀,以調整工作負載中的變更。您變更其資源配置的分區已停止,然後使用新的資源配置重新啟動。
- 一般而言,大型分區的整體容錯會比較少數的大型分區提供更好的整體容錯。若要擴展拓樸或改善容錯,您可以隨時新增分區而不會影響現有分區的可用性。如有必要,您可以在分區資料庫中進行擴展;將資料移至其他分區之後,會先移除最後建立的分區。
- 根據您的工作負載需求選擇適當的形狀。您指定的資源配置會用於所有分區。
- 分區可用性
若要確保分區的高可用性,請佈建待命分區並使用 Oracle Data Guard 進行主要至待命同步化和容錯移轉。
- 分區目錄可用性
若要獲得分區目錄的高可用性、請佈建待命目錄、然後使用 Oracle Data Guard 進行同步化和容錯移轉。請注意,分區目錄的可用性不會影響分區資料庫的使用狀態。分區目錄中斷只會影響容錯移轉至待命目錄時執行維護作業或多重分區查詢的能力。OLTP 交易會繼續遞送至分區。
- 分區導向器可用性
若要獲得分區導向器層的高可用性,請部署多位分區導向器。您最多可以在一個區域中部署五個分區導向器。Oracle 建議您至少部署兩個分區導向器。在 Oracle Cloud 中,Oracle 建議您在個別可用性網域或容錯域隔離分區導向器。
- 儲存體
選擇適合您工作負載的儲存容量。例如,會將指定大小的本機儲存體或區塊磁碟區連附至每個資料庫分區。
您可以隨時擴大儲存體,而不會影響以雲端儲存體提供者功能為基礎的資料庫使用狀態。如需有關 Oracle Cloud 中儲存體的詳細資訊,請參閱 Oracle Cloud Infrastructure Database 文件。
注意事項
- 應用程式設計
任何具有定義完整的資料分送策略並主要透過使用分區索引鍵 (例如客戶 ID、帳號等等) 存取資料的應用程式都適用於分區資料庫。
- 擴展性
部署分區資料庫之後,您可以編輯堆疊並套用變更來增加或減少分區數目。視您在建置堆疊時指定的複製因子而定,待命分區也會擴展。
您也可以擴展分區導向器數目。
- 安全
部署分區資料庫時、請指定 SSH 公開金鑰、以啟用與資料庫伺服器的安全 SSH 連線。
根據您的特定使用案例和安全需求,視需要使用防火牆和安全代理主機。
- 網路隔離
為確保網路隔離,最佳作法是在專用子網路中部署分區資料庫。必須根據您的應用程式設計與需求來決定路由與防火牆解決方案。