使用 OCI Data Integration 和 Oracle Integration Cloud Services 處理大量資料
處理或整合從外部來源到目標系統或應用程式的大量資料。
考慮此案例:您從外部來源 (例如,客戶、供應商、員工、產品) 大量接收資料。在資料到達您的終端系統或應用程式之前,必須先協調、強化、結合或組織資料。在完成此作業的流程中,您需要與兩個或多個中間應用程式或服務整合,或將複雜的轉換套用至資料。此處理可能會在與各種第三方應用程式 (例如 REST、SOAP) 進行呼叫或協調後,將其他屬性新增至資料。此交易資料也可能需要複雜的轉換 (JSON 或 XML)、查詢或交互參照。
此案例可以使用兩種雲端服務輕鬆實作: OCI Data Integration 和 Oracle Integration ,其中 OCI Data Integration 可解決所有資料整合或「擷取、轉換、載入」(ETL) 需求,而 Oracle Integration 可解決所有應用程式整合或企業級連線,無論您連線的應用程式或位於何處。
架構
此參考架構代表使用 OCI Data Integration 和 Oracle Integration 處理大量資料的使用案例。
此參考架構也解決了透過 OCI Data Integration 在 Oracle Integration 中處理 Apache Parquet、Apache Avro 和 Microsoft Excel 檔案的挑戰。例如,若要處理財務報表資料 (例如應付帳款、應收帳款、總帳、現金流量、資產與負債、收入), OCI 資料整合會將這些檔案格式轉換成逗號分隔值 (CSV) 檔案,然後由 Oracle Integration 處理。
下圖說明此參考架構。
oci-bulk-data-integration-architecture-diagram-oracle.zip
以下說明上述參考架構中顯示的步驟:
- 外部來源 (例如自訂應用程式、非 Oracle 應用程式、在第三方雲端執行的 Oracle 資料庫、第三方雲端服務、內部部署資料庫和應用程式) 將大量資料載入檔案上傳或刪除至 OCI Object Storage 儲存桶。
- OCI Observability & Management 服務: OCI 事件會尋找上傳到 OCI Object Storage 儲存桶中的物件或檔案。
- OCI 事件會觸發以儲存桶和檔案名稱呼叫 OCI 函數的動作。
- OCI 函數會接收事件,並使用輸入參數 (分組名稱和檔案名稱) 呼叫 OCI 資料整合管線。
- OCI Data Integration 管線會從 OCI Object Storage 儲存桶讀取大量資料載入檔案,並將單一大型資料檔分割成多個較小的檔案。然後將分割檔案上傳至 OCI Object Storage 儲存桶。
- 另一個 OCI 事件執行處理會尋找上傳至 OCI Object Storage 儲存桶的分割檔案。
- OCI 事件會觸發以儲存桶名稱和每個檔案名稱呼叫 OCI 函數的動作。
- OCI Functions 會接收事件,並呼叫 Oracle Integration 的流程以及儲存桶名稱和每個檔案名稱的輸入參數。
- Oracle Integration 會從 OCI Object Storage 儲存桶讀取每個檔案。
- Oracle Integration 根據需求,透過呼叫一或多個中介應用程式或系統來協調及強化資料。然後執行複雜的函數 (例如,轉換、查詢、交互參照),最後再將資料處理至下游系統或應用程式。
架構具有下列元件:
- 地區
Oracle Cloud Infrastructure 區域是一個本地化地理區域,其中包含一或多個稱為可用性網域的資料中心。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。
- 資料整合
Oracle Cloud Infrastructure Data Integration 是一款完全受管理的無伺服器雲端原生服務,可擷取、載入、轉換、清除各種資料來源的資料,並將資料重新調整為目標 Oracle Cloud Infrastructure 服務,例如 Autonomous Data Warehouse 和 Oracle Cloud Infrastructure Object Storage 。使用者使用直觀且無程式碼的使用者介面設計資料整合流程,將整合流程最佳化,以產生最有效率的引擎和協調流程,並自動配置及調整執行環境。
ETL (extract transform load) leverages fully-managed, scale-out processing on Spark, and ELT (extract load transform) leverages full SQL push-down capabilities of the Autonomous Data Warehouse in order to minimize data movement and to improve the time to value for newly ingested data.
Oracle Cloud Infrastructure Data Integration 提供互動式探索和資料準備,並定義處理綱要變更的規則,協助資料工程師防止綱要差異。
- 整合
Oracle Integration 是一個完全受管理的預先設定環境,可讓您整合雲端和內部部署應用程式、將業務流程自動化,以及開發視覺化應用程式。它使用符合 SFTP 規範的檔案伺服器來儲存和擷取檔案,並透過使用數百個轉接器和處方組合與 Oracle 和第三方應用程式連線,讓您與企業對企業交易夥伴交換文件。
- 事件
Oracle Cloud Infrastructure 服務會發出事件,這些事件是描述資源變更的結構化訊息。系統會針對建立、讀取、更新或刪除 (CRUD) 作業、資源生命週期狀態變更以及影響雲端資源的系統事件發出事件。
- 功能
Oracle Cloud Infrastructure Functions 是一個完全託管的多租戶、高度可擴充、隨選、Functions-as-a-Service (FaaS) 平台。由 Fn Project 開放原始碼引擎提供技術支援。Functions 可讓您部署程式碼,並直接呼叫程式碼或觸發程式碼以回應事件。Oracle Functions 使用 Oracle Cloud Infrastructure Registry 中代管的 Docker 容器。
- 虛擬雲端網路 (VCN) 和子網路
VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。與傳統的資料中心網路一樣,VCN 可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後變更。您可以將 VCN 區隔成子網路,此子網路可以設定區域範圍或可用性網域。每個子網路都是由連續的位址範圍組成,這些位址不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用或專用。
- 安全清單
您可以為每個子網路建立安全規則,以指定必須允許進出子網路的來源、目的地和流量類型。
- 路由表
虛擬路由表包含將流量從子網路路由到 VCN 外部目的地 (通常是透過閘道) 的規則。