使用 OCI Data IntegrationOracle Integration Cloud Services 处理批量数据

处理或集成来自外部来源的批量数据到目标系统或应用程序。

考虑以下情况:您从外部来源(例如,客户、供应商、员工、产品)批量接收数据。在数据到达最终系统或应用之前,需要对数据进行编排、扩充、组合或组织。作为实现这一目标的流程的一部分,您需要与两个或多个中间应用程序或服务集成,或者对数据应用复杂的转换。在通过各种第三方应用程序(例如,REST、SOAP)进行调用或编排之后,此流程可能会向数据添加其他属性。此事务处理数据还可能需要复杂的转换(JSON 或 XML)、查找或交叉引用。

此方案可通过以下两个云服务轻松实施: OCI Data IntegrationOracle Integration ,其中 OCI Data Integration 可满足所有数据集成或“提取、转换、加载”(ETL) 需求,而 Oracle Integration 可满足所有应用集成或企业级连接,无论您连接的应用程序或它们位于何处。

体系结构

此参考架构表示使用 OCI 数据集成Oracle Integration 处理批量数据的一个用例。

此参考架构还解决了通过 OCI Data IntegrationOracle Integration 中处理 Apache Parquet、Apache Avro 和 Microsoft Excel 文件的挑战。例如,要处理财务报告数据(例如,应付账款、应收账款、总账、现金流、资产和负债、收入), OCI 数据集成会将这些文件格式转换为逗号分隔值 (CSV) 文件,然后由 Oracle Integration 处理。

下图说明了此引用体系结构。



oci-bulk-data-integration-architecture-diagram-oracle.zip

下面是对上述参考体系结构中显示的步骤的解释:

  1. 外部源(例如,定制应用、非 Oracle 应用、在第三方云上运行的 Oracle 数据库、第三方云服务、内部部署数据库和应用)将批量数据加载文件上载或删除到 OCI 对象存储存储桶中。
  2. OCI 观测和管理服务: OCI Events 查找上载到 OCI Object Storage 存储桶中的对象或文件。
  3. OCI 事件触发操作以使用存储桶和文件名调用 OCI 函数
  4. OCI 函数接收事件,并使用输入参数(存储桶名称和文件名)调用 OCI 数据集成管道。
  5. OCI Data Integration 管道从 OCI Object Storage 存储桶读取批量数据加载文件,并将单个大型数据文件拆分为多个较小的文件。然后,它将拆分文件上载到 OCI Object Storage 存储桶。
  6. 另一个 OCI 事件实例查找上载到 OCI 对象存储存储桶中的拆分文件。
  7. OCI 事件触发操作以调用具有存储桶名称和每个文件名的 OCI 函数
  8. OCI 函数接收事件并调用 Oracle Integration 的流,其中包含存储桶名称和每个文件名的输入参数。
  9. Oracle Integration 读取 OCI Object Storage 存储桶中的每个文件。
  10. 根据需求,Oracle Integration 通过调用一个或多个中间应用程序或系统来编排和扩充数据。然后,它执行复杂的功能(例如,转换,查找,交叉引用),最后将数据处理到下游系统或应用程序。

该体系结构具有以下组件:

  • 区域

    Oracle Cloud Infrastructure 区域是包含一个或多个数据中心(称为可用性域)的本地化地理区域。地区独立于其他地区,远距离可以把它们分开(跨越国家甚至大陆)。

  • 数据集成

    Oracle Cloud Infrastructure Data Integration 是一项完全托管的无服务器云原生服务,可将各种数据源中的数据提取、加载、转换、清理和重塑为目标 Oracle Cloud Infrastructure 服务,例如 Autonomous Data WarehouseOracle Cloud Infrastructure Object Storage 。用户可以使用直观、无代码的用户界面设计数据集成流程,优化集成流以生成高效的引擎和编排,并自动分配和扩展执行环境。

    ETL(提取转换负载)利用 Spark 上的完全托管的横向扩展处理,ELT(提取负载转换)利用 Autonomous Data Warehouse 的完整 SQL 下推功能,以尽可能减少数据移动并缩短新摄取数据的价值实现时间。

    Oracle Cloud Infrastructure Data Integration 提供交互式探索和数据准备,通过定义规则来处理模式更改,帮助数据工程师防范模式偏差。

  • 集成

    Oracle Integration 是一个完全托管的预配置环境,可用于集成云和内部部署应用、自动执行业务流程以及开发可视化应用。它使用符合 SFTP 标准的文件服务器来存储和检索文件,并允许您通过使用数百个适配器和配方组合来与 Oracle 和第三方应用进行连接,从而与企业对企业贸易合作伙伴交换文档。

  • 事件

    Oracle Cloud Infrastructure 服务发出事件,这些事件是描述资源更改的结构化消息。发出事件以进行创建、读取、更新或删除 (CRUD) 操作、资源生命周期状态更改以及影响云资源的系统事件。

  • 函数

    Oracle Cloud Infrastructure Functions 是一个完全托管的多租户、高度可扩展的按需函数即服务 (FaaS) 平台。它由 Fn Project 开源引擎提供支持。使用函数可以部署代码,也可以直接调用代码或触发代码以响应事件。Oracle Functions 使用 Oracle Cloud Infrastructure Registry 中托管的 Docker 容器。

  • 虚拟云网络 (VCN) 和子网

    VCN 是一个可定制的软件定义网络,您可以在 Oracle Cloud Infrastructure 区域中设置。与传统的数据中心网络一样,VCN 允许您控制您的网络环境。VCN 可以具有多个不重叠的 CIDR 块,您可以在创建 VCN 后更改这些块。您可以将 VCN 划分为子网,子网可以限定为区域或可用性域。每个子网都包含一系列不与 VCN 中的其他子网重叠的连续地址。可以在创建后更改子网的大小。子网可以是公共子网,也可以是专用子网。

  • 安全列表

    对于每个子网,可以创建安全规则来指定必须允许进出子网的通信的源、目标和类型。

  • 路由表

    虚拟路由表包含用于将流量从子网路由到 VCN 之外目的地的规则,通常是通过网关。

确认

  • 作者:Pavan Rajalbandi
  • 贡献者:John Sulyok