在 Oracle Cloud 和 Azure 上为 Oracle Utilities Data 部署 ETL 平台
在运行 Oracle Utilities Customer Cloud Service 应用以自动执行客户关怀、计费和付款操作后,Gas South 在 Oracle Cloud Infrastructure (OCI) 上部署了数据提取、转换和加载 (ETL) 平台。
Founded in 2006, Atlanta-based Gas South provides natural gas to more than 425,000 residential, commercial, and governmental customers in 14 states, including Florida, New Jersey, Ohio, Texas, and Tennessee. 除了在 Oracle Cloud 和 Microsoft Azure 上进行多云部署,实现客户关怀和计费运营现代化之外,Gas South 最近还重振了其使命,即提供 5% 的年度利润来帮助有需要的儿童,并优先考虑基本需求、教育和健康。自 2006 年以来,该公司已向慈善机构捐赠了超过 1,200 万美元,其中包括 2022 年的 320 万美元,这是有史以来最大的企业捐赠年。
在 OCI 上部署时,Gas South 的客户关怀和计费数据将从该实用程序的 SaaS 应用中获取,这些应用保存在 Oracle Cloud Infrastructure Object Storage 存储桶中,解析为 JSON 文件,通过 Oracle SOA Cloud Service 移动,并存储在通用数据提取 (GDE) 数据库中。然后,在手动触发实用程序应用程序数据以通过安全 Shell (SSH) 隧道传递到 Attunity Qlik 集成引擎(连接到在 Azure 上的 SQL Server 上运行的 Microsoft Power BI 应用程序)之前,该实用程序应用程序数据的结构进行进一步分析和报告。
此部署的主要内容包括:
- 在连接到专用虚拟云网络 (VCN) 中的通用数据提取 (Generalized Data Extract,GDE) 数据库之前,将使用 SSH 隧道、堡垒主机和公共/私有密钥对用户进行验证。
- GDE 服务当前用于从 Oracle Utilities Customer Cloud Service SaaS 应用程序获取客户关怀数据,并将其传递到 Attunity Qlik 集成引擎,该引擎连接到 Azure BI 应用程序进行分析和报告。
- 归档日志在 OCI 上的 Oracle 数据库中启用,用于捕获 Attunity Qlik 检测到的文件更新,然后集成到 Azure 上的 Microsoft BI 中。
体系结构
Gas South 在 Oracle Cloud Infrastructure (OCI) 上构建和部署了 Oracle SOA Cloud Service (SOACS),使公用事业公司能够将其 Oracle Utilities Customer Cloud Service (CCS) 与其自助门户、交互式语音响应 (IVR) 系统以及需要访问 Gas South 付款和财务系统的移动应用程序集成。
为了分析 CCS 生成的数据,Gas South 部署了一个通用数据导出 (GDE) 系统,从 CCS 中提取数据,并将其导入 Microsoft Business Intelligence,该商务智能托管在 Microsoft Azure 中。
下图显示了 SOA 集成系统的数据流。
Gas-south-data-flow-oracle.zip
下面介绍了 SOA 集成的数据流:
- 用户访问 Gas South 的门户。
- 生成来自 Oracle Utilities CCS (CCS) 的计费数据并将其发送到 Oracle SOA Suite (SOA)。
- SOA 将计费数据发送到财务系统。
- SOA 将计费发送到自助服务门户以供用户复查。
- 用户支付账单。
- 已处理付款。
- SOA 已使用付款进行更新,以显示已支付账单。
- SOA 更新 CCS 以显示已支付账单。
下图显示了数据导出系统的数据流。
Gas-south-data-flow-ccs-oracle.zip
下面介绍了用于数据导出和导入的 CCS 数据流:
- CCS 每两小时启动一次通用数据导出 (Generalized Data Export,GDE),将数据导出到对象存储。
- 启动 Oracle Base Database Service VM 上的命令行界面 (command line interface,CLI) 脚本,以将文件复制、拆分并加载到数据库中。
- Attunity Qlik 配置为读取 Oracle Database 以进行日志更改。
- 如果发生了更改,Attunity Qlik 将从 Oracle Database 中提取更改
- 数据将推送到 Azure SQL。
- 数据由 Microsoft Business Intelligence 访问。
下图显示了 Gas South 的参考架构图。
Gas South Portal、IVR 和移动应用程序托管在 Microsoft Azure 上。Microsoft Azure 和 Gas South 财务系统通过互联网网关连接到 OCI 虚拟云网络 (VCN)。SOA 服务提供中间件和 CCS、Gas South Systems 以及第三方财务系统作为源系统和目标系统。
作为 SOA 的一部分,将部署管理服务器、两个托管服务器和一个托管文件传输 (MFT) 服务器。这两台托管服务器均由 Oracle 负载平衡器进行负载平衡。数据库是使用 Oracle Base Database Service 部署的。
对于数据导出,对象存储用于存储从 CCS 导出的文件。启动了 Oracle Base Database Service (暂存数据库)上的脚本,以将文件复制、拆分和加载到数据库中。Microsoft Attunity 用于从临时数据库读取和提取数据,然后由 Microsoft Business Intelligence 使用 SSH 隧道访问该数据库。Oracle Cloud Infrastructure Vault 用于管理密钥。
Oracle 向 Gas South 提供以下未来状态建议:
- 了解如何升级到 SOACS Marketplace。升级到 SOACS Marketplace 将有助于 Gas South 降低 IT 维护和管理成本。
- 了解云原生和平台即服务 (PaaS) 选项,利用 Oracle Cloud Infrastructure Functions 、Oracle Cloud Infrastructure Events 、Oracle Cloud Infrastructure Data Integration 和 Oracle Integration 将数据从 CCS 转换和加载到 Azure SQL 中的流程。
下图说明了此未来的参考体系结构。
Gas-south-architecture-future-oracle.zip
新的数据流模式将由体系结构更改导致:
下面介绍了用于数据导出和导入的 CCS 数据流:
- CCS 每两小时启动一次通用数据导出 (Generalized Data Export,GDE),将数据导出到对象存储。
- Oracle Cloud Infrastructure Events 中的事件检测在对象存储中添加了导出的数据文件。
- 事件调用函数。
- Oracle Cloud Infrastructure Functions 中的函数可调用 OCI Data Integration 。
- OCI Data Integration 将处理的文件存储在对象存储中。
- OCI Data Integration 将处理的文件拆分并存储在对象存储中。
- Oracle Cloud Infrastructure Events 中的事件检测对象存储中是否添加了拆分数据文件。
- 事件调用函数。
- 函数从对象存储读取拆分的文件。
- 函数调用 Oracle Integration 。
- 数据将推送到 Azure SQL,并由 Microsoft Business Intelligence 访问。
该体系结构包含以下组件:
- Tenancy
租户是 Oracle 在您注册 OCI 时在 Oracle Cloud 中设置的安全隔离分区。您可以在租户的 OCI 上创建、组织和管理资源。租户是公司或组织的同义词。通常,公司将具有单个租户,并反映其在该租户中的组织结构。单个租户通常与单个订阅关联,而单个订阅通常只有一个租户。
- OCI 地区
OCI 区域是一个本地化的地理区域,其中包含一个或多个托管可用性域的数据中心。区域独立于其他区域,并且很远的距离可以将它们分开(跨越国家甚至大洲)。
- 可用性域
可用性域是区域中独立的数据中心。每个可用性域中的物理资源与其他可用性域中的资源隔离,从而提供容错能力。可用性域不共用基础设施(例如电源或冷却设备)或内部可用性域网络。因此,一个可用性域出现故障不会影响该区域中的其他可用性域。
- 虚拟云技术网络 (VCN) 和子网
虚拟云网络 (VCN) 是您可以在 OCI 区域中设置的可定制软件定义网络。与传统数据中心网络一样,VCN 允许您控制网络环境。一个 VCN 可以具有多个不重叠的无类域间路由 (classless inter-domain routing,CIDR) 块,在创建 VCN 后可以更改这些块。您可以将 VCN 细分为多个子网,这些子网可以限定为某个区域或某个可用性域。每个子网由一系列不与 VCN 中的其他子网重叠的连续地址组成。您可以在创建子网后更改子网的大小。子网可以是公共子网,也可以是专用子网。
- 路由表
虚拟路由表包含用于将流量从子网路由到 VCN 之外目标(通常通过网关)的规则。
- 安全列表
您可以为每个子网创建安全规则,以指定允许进出子网的通信的源、目标和类型。
- Internet 网关
互联网网关允许 VCN 中的公共子网与公共互联网之间的流量。
- 服务网关
通过服务网关,您可以从 VCN 访问其他服务,例如 Oracle Cloud Infrastructure Object Storage 。从 VCN 到 Oracle 服务的流量将通过 Oracle 网络结构传输,不会通过互联网。
- 负载平衡器
Oracle Cloud Infrastructure Load Balancer 提供从单个入口点到多个服务器的自动流量分配。
- OCI Compute
借助 Oracle Cloud Infrastructure Compute ,您可以在云中预配和管理计算主机。您可以启动具有配置的计算实例,以满足您在 CPU、内存、网络带宽和存储方面的资源需求。创建计算实例后,您可以安全地访问它,重新启动它,附加和分离卷,并在不再需要时终止它。
- OCI 对象存储
OCI Object Storage 可访问任意内容类型的大量结构化和非结构化数据,包括数据库备份、分析数据以及图像和视频等丰富内容。您可以安全地直接从应用或云平台内存储数据。您可以扩展存储,而不会出现性能或服务可靠性下降的情况。
将标准存储用于您需要快速、立即和频繁访问的“热”存储。将归档存储用于长期保留且很少或很少访问的“冷”存储。
- OCI Vault
借助 Oracle Cloud Infrastructure Vault ,您可以创建并集中管理加密密钥,以保护您的数据和用于保护云中资源访问安全的密钥凭证。默认密钥管理是 Oracle 管理的密钥。您还可以使用客户管理的密钥,这些密钥使用 OCI Vault 。OCI Vault 提供一组丰富的 REST API 来管理 Vault 和密钥。
- OCI 监视
Oracle Cloud Infrastructure Monitoring 主动和被动地监视您的云资源,并使用预警在指标满足指定触发器时通知您。
- Oracle Base Database Service
Oracle Base Database Service 是一个 Oracle Cloud Infrastructure (OCI) 数据库服务,支持您在虚拟机上构建、扩展和管理功能全面的 Oracle 数据库。VM 数据库系统使用 OCI Block Volumes 存储而非本地存储,并且可以运行 Oracle Real Application Clusters (Oracle RAC) 来提高可用性。




