在 Oracle Database@Azure 上部署運用 Power BI 的資料湖
許多企業運用 Microsoft Power BI 搭配 Microsoft Azure 上的資料湖,取得可行的業務洞察力。
您可以使用包含 Azure Data Factory、Azure Data Lake Storage、Azure Compute、Oracle Database@Azure (完全託管的 Oracle Autonomous Database 或共同管理的 Oracle Exadata Database Service 實例) 和 Power BI 的中介架構來擴展這些功能,以解決客戶面臨的幾個關鍵資料挑戰:
- Data Silos and Integration :Azure Data Factory 將資料從各種來源擷取至統一的資料湖中,打破孤島並提供單一事實來源。
- 資料品質和一致性:Curation Layer 中的 Autonomous Data Warehouse 透過重複資料刪除和品質規則,確保清晰、一致且高品質的資料,減少錯誤並增強決策能力。
- 擴展性與效能:Azure 的可擴展運算資源和 Autonomous Data Warehouse 的無伺服器架構或 Oracle Exadata Database Service 可有效處理大規模的資料處理,同時在資料量和使用者採用 (並行) 成長時保持最佳效能。
- 複雜轉型:Azure Compute 和 Autonomous Data Warehouse 或 Oracle Exadata Database Service 有效地執行複雜的轉換和分析,減少處理時間並專注於洞察。
- 成本管理:適用於 Azure 服務和 Autonomous Data Warehouse 或 Oracle Exadata Database Service 的無伺服器和隨用隨付模型可最佳化成本,確保您只需依據使用量付費。
- 資料治理與法規遵循:結構化資料管理層可協助改善治理、可追蹤性及法規遵循。
- 內建分析:使用者可以使用人工智慧 (AI)、機器學習 (ML)、圖表、空間及文字分析等內建功能,將分析直接套用至其資料。
一般使用案例包括:
- 零售分析:整合來自線上銷售、店內交易和客戶意見回饋的資料,最佳化庫存和行銷策略。
- 金融服務:分析交易資料以進行詐騙偵測和法規遵循,以降低風險。
- 醫療照護分析:整合 EHR、實驗室結果及穿戴式裝置的病患資料,改善病患照護與健康管理。
此架構可讓各行各業的企業客戶有效地利用資料,讓業務使用者能夠做出明智的決策,以推動更好的業務成果。
邏輯架構
分析資料湖可以使用在 Microsoft Azure 上執行的 Power BI,擷取多個來源的資料,並提供業務洞察力。
- 資料來源:分析資料湖可以從多個來源擷取資料。Azure Data Factory 可以從 Microsoft SQL Server 和 Azure Blob 儲存體擷取資料。Oracle Database@Azure 可以從 Oracle Cloud ERP 、Oracle Cloud Infrastructure Object Storage 、Azure Cosmos Database、Azure SQL Database、各種類型的表格儲存資料 (Azure、PostgresSQL、Azure MariaDB) 以及其他類型的內部部署關聯式資料庫擷取資料。
- 資料層:Oracle Database@Azure 與 Azure Data Factory 結合,從 Azure 資料湖儲存擷取來源資料。
- 使用層:Oracle Database@Azure 提供對在 Microsoft Azure 上執行之 Microsoft Power BI 的洞察分析。
下圖說明功能架構:
Medallion 架構
本節示範如何在 Azure 中介架構內將 Oracle Database@Azure 部署為資料倉儲。
中介架構是一種資料管理架構,可將資料湖倉儲中的資料處理結構化為不同階段 (銅、銀和金色),代表不同的資料處理階段:
- 銅級階段:從各種來源擷取、驗證及策劃資料。
- 銀級階段:資料會儲存並處理以進行分析與報告。
- 金級階段:提供精簡資料以進行分析和報告。
下圖說明架構:
data-lake-db-azure-medallion-oracle.zip
中介階段會進一步劃分為下列部署區域:
- 擷取架構:使用 Azure Data Factory 從各種資料來源擷取資料。原始資料儲存在 Azure Data Lake Storage Gen 2 和 Delta Lake 中。此架構可確保來源與接收系統之間的資料一致性和準確性。此架構構成一組健全的指令碼,透過跨平台使用稽核、平衡及控制機制來確保品質。
- 驗證:原始資料會擷取至 Oracle Autonomous Data Warehouse 無伺服器或 Oracle Exadata Database Service ,以進行重複資料刪除和資料品質檢查。此工作流程會執行 PII 與 PHI 資料的基本清理遮罩,以及透過規則導向架構驗證原始檔案,以執行結構檢查。可以使用 Azure Data Factory 實作驗證架構。
- 拒絕工作流程:擷取階段因驗證錯誤或其他處理錯誤而被拒絕的任何記錄,都會暫存在個別的 Azure Data Lake Storage 路徑中。使用 Logic App 的自動化電子郵件通知會根據定義的軟體授權協議 (SLA) 傳送給支援團隊。標準化資料仍保存在 Oracle Autonomous Data Warehouse 無伺服器或 Oracle Exadata Database Service 中。
- 協調:排程系統可管理資料處理工作、排程及工作相依性。Azure Data Factory 可以用於協調 ETL 工作。協調流程階段包括 Oracle Autonomous Data Warehouse 無伺服器或 Oracle Exadata Database Service 、Delta Lake 及 Azure Data Lake Storage Gen 2。
- 報告 / 分析:報告階段包括 Power BI 和資料服務,例如外部饋送和資料貨幣化。
架構具有下列基礎架構元件:
- 地區
Azure 區域是一個地理區域,其中有一或多個實體 Azure 資料中心 (稱為可用性區域)。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。
Azure 和 OCI 區域都是本地化的地理區域。對於 Oracle Database@Azure ,Azure 區域會連線至 OCI 區域,而 Azure 中的可用性區域 (AZ) 則會連線至 OCI 中的可用性網域 (AD)。選擇 Azure 和 OCI 區域組可將距離和延遲降到最低。
- 可用性區域
可用性區域是區域內實體獨立的資料中心,專為可用和容錯而設計。可用性區域已足以與其他可用性區域建立低延遲連線。
- 虛擬網路 (VNet) 和子網路
VNet 是您在 Azure 中定義的虛擬網路。VNet 可以有多個非重疊的 CIDR 區塊子網路,您可以在建立 VNet 之後新增這些子網路。您可以將 VNet 區隔成子網路,此子網路可以設定區域範圍或可用性區域範圍。每個子網路都是由連續的位址範圍組成,這些位址不會與 VNet 中的其他子網路重疊。使用 VNet 將您的 Azure 資源以邏輯方式隔離在網路層次。
- AzureExpressRoute
Azure ExpressRoute 可讓您設定 VNet 與其他網路之間的專用連線,例如您的內部部署網路或其他雲端提供者中的網路。ExpressRoute 是一般網際網路連線更可靠且更快速的替代方案,因為透過 ExpressRoute 的流量不會周遊公用網際網路。
- 虛擬網路閘道
虛擬網路閘道允許 Azure VNet 與 Azure 外部網路之間的流量 (不論是透過公用網際網路或使用 ExpressRoute),視您指定的閘道類型而定。
- 路由表
在 Azure 子網路、VNets 和 Azure 外部網路之間遞送表格直接流量。
- 網路安全群組
網路安全群組包含控制 VNet 內 Azure 資源之間網路流量的規則。每個規則都會指定允許或拒絕之網路流量的來源或目的地、連接埠、協定及方向。
- 網站至網站 VPN
透過安全的加密連線,在您的內部部署網路與 VCN 之間提供站對站 IPSec VPN。
此架構具有下列 Oracle 產品和服務:
- Oracle Database@Azure
Oracle Database@Azure 是在 Oracle Cloud Infrastructure (OCI) 上執行的 Oracle Database 服務 (Oracle Exadata Database Service on Dedicated Infrastructure 和 Oracle Autonomous Database Serverless),部署在 Microsoft Azure 資料中心。此服務提供 OCI 的功能和價格同等性。在 Azure Marketplace 購買此服務。
Oracle Database@Azure 將 Oracle Exadata Database Service 、Oracle Real Application Clusters (Oracle RAC) 和 Oracle Data Guard 技術整合至 Azure 平台。使用者可以在 Azure 主控台和 Azure 自動化工具管理服務。此服務部署在 Azure Virtual Network (VNet) 中,並與 Azure 識別和存取管理系統整合。Azure 原生提供 OCI 和 Oracle Database 一般指標和稽核日誌。此服務需要使用者擁有 Azure 訂閱和 OCI 租用戶。
Autonomous Database 建置在 Oracle Exadata 基礎架構上,具備自我管理、自我保護及自我修復等功能,有助於免除手動資料庫管理和人為錯誤。Autonomous Database 可使用您選擇的大型語言模型 (LLM) 和部署位置,使用內建 AI 功能,開發具備任何資料的可擴充 AI 應用程式。
Oracle Exadata Database Service 和 Oracle Autonomous Database Serverless 皆透過原生 Azure 入口網站輕鬆佈建,能夠存取更廣泛的 Azure 生態系統。
- Oracle Cloud Infrastructure Object Storage
Oracle Cloud Infrastructure Object Storage 會將內容儲存為儲存容器 (稱為儲存桶) 中的物件。每個物件都包含資料和描述性描述資料,以便於擷取和管理。
此架構具有下列 Microsoft 產品和服務:
- Azure 資料工廠
Azure Data Factory (ADF) 是由 Microsoft Azure 提供的雲端資料整合服務。它旨在大規模建立、排程和協調資料工作流程。ADF 可讓組織擷取、轉換各種來源的資料並將其移動到目的地,進而實現資料導向的決策與分析。
- Azure 函數
Azure Functions 是一種無伺服器解決方案,可讓您撰寫較少程式碼、維持較少的基礎架構,並節省成本。
- Azure Service Bus
Azure Service Bus 是一個具有佇列和發布 - 訂閱主題的完全託管企業訊息中介。
- Azure 監控
Azure Monitor 可為大多數 Azure 服務提供基礎層級基礎架構指標和記錄。Azure 診斷日誌由資源發出,提供有關該資源操作的豐富、頻繁資料。Azure Data Factory (ADF) 可以在 Azure Monitor 中寫入診斷日誌。
- Azure DevOps (CICD)
Azure Data Factory 與 GitHub 和 Azure DevOps Git 整合,以啟用來源控制、發行管理和 CI/CD。透過來源控制,開發人員可以協作、追蹤和儲存所選分支的變更 (在此情況下,它將是 DEV 分支)。這些變更將會合併至主要分支,並部署至更高層次的環境 (QA、UAT、Prod),其中也會進行測試並驗證
- Azure Active Directory
Azure 服務上的大數據平台可與現有的 Azure Active Directory 服務整合,以提供精細的安全控制。這可讓組織重複使用現有的單一登入流程,以存取 Azure 雲端上的資料和服務。
- Azure ML
Azure ML 是一種 GUI 型的整合開發環境,可在 Azure 上建構和實作機器學習工作流程。
- Power BI
Power BI 是 Microsoft 的業務分析工具套件,旨在協助組織將資料視覺化、分享見解,以及做出明智的決策。它可讓使用者連線至廣泛的資料來源、建立互動式儀表板和報表,以及跨團隊協同合作。Power BI 是 Microsoft Power Platform 的一部分,可與其他 Microsoft 產品 (例如 Excel、Teams 及 Azure 服務) 緊密整合。
Power BI 的主要元件:
- 超級 BI 服務:此雲端平台可讓使用者在報表和儀表板上共用、發布及協同合作,以便跨組織進行即時資料監控和共用。
- Power BI Mobile :適用於 iOS、Android 和 Windows 裝置的行動應用程式,隨時隨地存取儀表板和報表。
- 內嵌 Power BI :可讓開發人員將 Power BI 視覺與分析整合至自訂應用程式、入口網站或網站的服務。
- Azure SQL 伺服器
Azure SQL Server 是由 Microsoft Azure 提供的雲端關聯式資料庫服務。它是 Azure SQL 系列的一部分,提供一個完全受管理的平台即服務 (PaaS) 環境,可在雲端代管及管理 SQL Server 資料庫。Azure SQL Server 具有高擴展性、安全性,並提供高可用性、自動化備份和災難復原的功能。
- Azure PostgreSQL
適用於 PostgreSQL 的 Azure 資料庫是 Microsoft Azure 所提供的受管理關聯式資料庫服務。它旨在簡化雲端 PostgreSQL 資料庫的部署、擴展和管理,同時提供高可用性、安全性和可擴展性。適用於 PostgreSQL 的 Azure 資料庫可讓開發人員專注於建置應用程式,而無須擔心基礎架構管理。
- Azure Cosmos
Azure Cosmos DB 是由 Microsoft Azure 提供的全球分散式多模型資料庫服務。它是專為建置回應迅速、可擴展且全球可用的應用程式所設計。Cosmos DB 支援多個資料模型和 API,讓它成為各種應用程式案例的多功能選擇。
- Azure BLOB 儲存
Azure Blob 儲存體是 Microsoft Azure 的雲端物件儲存解決方案,專為儲存大量非結構化資料而設計。它具有高度可擴展性、安全且符合成本效益,因此適用於各種使用案例,包括應用程式開發、資料封存及媒體儲存。
- Delta Lake
Delta Lake 是一個開放原始碼儲存層,可為資料湖帶來可靠性。其設計目的是提供 ACID (單元性、一致性、隔離、持久性) 交易、可擴展的描述資料處理,以及統一串流與批次資料處理。與 Azure Data Lake Service 整合時,Delta Lake 增強了 Azure 的資料儲存與分析服務的功能。
- Azure Data Lake Storage
Azure Data Lake Storage (ADLS) 是一項高度可擴充且安全的資料儲存服務,已針對大數據分析最佳化。它結合了物件儲存的擴展性以及階層式檔案系統的效能和安全性功能,因此非常適合管理大規模資料並啟用進階分析和機器學習。
與 Azure Blob 儲存體比較
功能 Azure Data Lake Storage Azure Blob 儲存體 使用案例 大數據分析,階層式資料 一般用途物件儲存 命名空間 階層式 (類似檔案系統的) 平面 (無目錄結構) 整合 已針對大數據架構最佳化 一般用途與應用程式儲存 存取控制 檔案層次 ACL 與 RBAC RBAC 和 SAS 記號
建議
- 確定您可以存取 Azure 訂閱和目錄。
- 確定您可以存取 Oracle Cloud Infrastructure (OCI) 租用戶。
- 確定 Azure 與 OCI 之間有作用中的 Oracle Database@Azure 多重雲端連結 (當您佈建 Oracle Database@Azure 且由 Oracle 管理時,預設會建立此連線)。
- 確定任何 Azure VNets 和 OCI VCN 之間有非重疊的 CIDR 區塊。
- 在佈建之前,請確保您具有足夠的 Oracle Exadata Database Service 或 Oracle Autonomous Database Serverless 服務限制。
注意事項
當您使用 Oracle Database@Azure 在 Microsoft Azure 上部署資料分析管線時,請考慮下列事項。
- 災害復原 (DR)
災難復原並不代表在此架構中,客戶也必須自行負責。
- 網路設定 Oracle Database@Azure
- Azure 環境:使用 Azure Virtual Network (VNet) 進行網路,並在預先建立的委派子網路內建立虛擬網路介面卡 (VNIC)。
- OCI 環境:Oracle Database@Azure 可連線至 Oracle Cloud Infrastructure (OCI) 虛擬雲端網路 (VCN) 內的從屬端子網路。
- 從屬端連線
此網路設定允許從 Azure 資源進行從屬端連線。
- Oracle Autonomous Database Serverless 網路
- 在 Azure 中使用 VNet 搭配 1 個資料庫子網路。使用 /27 子網路,但可規劃未來成長。
- 先建立資料庫子網路並將其委派給 Oracle Database@Azure ,再部署 Oracle Autonomous Database Serverless 。
- 將委派的子網路與其他資料庫重複使用 (或共用)。
- AzureExpressRoute
Azure ExpressRoute 的費用因一個區域而異。Azure 具有多個用於快速路由的 SKU;Oracle 建議使用本機設定,因為它沒有單獨的傳入或傳出費用,而且從最小頻寬 1 Gbps 開始。標準版和進階版組態提供較低的頻寬,但在計量設定中會產生個別的輸出費用。
- Oracle Autonomous Database Serverless
- 整合
Oracle Autonomous Database 為超過 100 個應用程式、資料庫和物件存放區提供內建整合服務。使用 Data Studio 的圖形化使用者介面設計資料轉換,以與 Autonomous Database 進行資料整合。
- 分析
Oracle Autonomous Database 內建分析服務,可讓您直接將一系列分析 (圖形、空間、機器學習及 AI) 套用至資料,降低分析延遲以快速提供可行的洞察力。
- 成本
Oracle Autonomous Database Serverless 執行處理的佈建和基本管理功能是從 Oracle Database@Azure 頁面完成。您可以在 Oracle Cloud Infrastructure (OCI) 入口網站中使用 Oracle Database@Azure 頁面中特定 Autonomous Database 的連結,取得其他管理功能。
使用下列組態選項控制資源使用:- ECPU 數目允許將 ECPU 數目從 2 設定為 512。
- 運算自動調整可讓您自動將運算配置調整為高達 512。預設會選取此選項。
- 儲存體允許將儲存體配置從 1 TB 設定為 383 TB 或 20 GB 到 393216 GB。
- 儲存單位大小可讓您選取儲存是以 GB 或 TB 配置。
- 儲存體自動調整可讓您自動將儲存體配置調整為高達 383 TB 或 393216 GB。預設不會選取此選項
- 效能
- Oracle Autonomous Database Serverless 提供高可用性 (HA)。
- 進行應用程式效能測試時,檢查並測量網路延遲。
- 考慮地區相關性。應用程式與不同雲端資料中心代管資料庫之間的網路延遲必須小於 10 毫秒。建議您選取附近的應用程式和資料庫區域,以實現最佳的端對端效能。
- 使用狀態
多個 Microsoft Azure 區域提供 Oracle Autonomous Database Serverless 。
請參閱「深入瞭解」一節中的服務授權合約 (SLA) 連結。
- 整合
- Oracle Exadata Database Service on Dedicated Infrastructure
- 成本
- 部署的基礎架構具有一致的成本,可以隨時關閉 (至少需支付 48 小時費用)。
- 執行階段成本是由指派給可擴展 VM 的 OCPU 數目所決定。
- 授權選項包括自備授權 (BYOL) 和內含授權。
- BYOL 現已提供 Oracle Support Rewards
- 效能
- 客戶體驗與任何其他 Exadata 部署 (Oracle Exadata Database Service 、Oracle Exadata Database Service on Cloud@Customer 或內部部署) 體驗相同的效能。
- 從任何類型的 Azure VM 到 Oracle Database@Azure 服務的延遲 (單向 / 往返) 僅為 Azure 雲端服務的省份。目標為 .5 毫秒,但可能因 Azure 網路考量而有所不同。
- Oracle 不會收取任何 Oracle Database@Azure 的資料輸出費用,但根據 Azure 架構,Microsoft 可能會收取資料移動費用。
- 使用狀態
Exadata 部署具有 99.99% 服務層次目標 (SLO)。使用最大可用性架構 (MAA) 可以達到更高的數字,該架構可以包括設置災難恢復站點和使用備份和還原功能 (例如 Oracle Database Zero Data Loss Autonomous Recovery Service)。
- 成本
探索更多
進一步瞭解此架構的功能:
-
在 Oracle Database@Azure 中佈建 Oracle Autonomous Database (教學課程)
-
使用 Microsoft Gateway 將 Microsoft Power BI Service 連線至 Oracle Autonomous Database (PDF)
進一步瞭解相關架構: