数据是支撑决策制定的重要基础。不论在政府治理、企业运营中,还是在个人生活中,数据帮助我们了解现状,预测未来,从而更好地制定策略和做出决策。
数据是推动创新和发展的关键力量。在数字化时代,数据的挖掘和应用可以带来新的商业模式、新的产业和新的就业机会,也可以帮助我们抓住机遇,应对挑战。
在当下,数据已经成为最重要的资产之一。如何实现数据的互联互通,提高数据的实时性和准确性,成为企业面临的重要课题。
针对存在的数据孤岛问题,通常需要从技术、管理和政策等多个层面入手,比如建立统一的数据平台、制定数据共享标准、提高数据质量、优化组织结构等。数据集成是将不同来源、格式、结构的数据整合到一起,打破数据孤岛,实现数据的共享和利用。常用的数据集成方法是建立数据仓库,实现统一数据视图,整个流程包括确定需求、数据抽取转换、增量数据传输、数据同步监控、数据验证等步骤。这些措施可以实现数据的共享和利用,使数据管理变得更加高效和标准化,促进数据的有效流通和利用,为决策提供更全面、准确的支持。
今天,在这里主要分享数据集成工具Oracle GoldenGate(后面我们简称为OGG)和OGG数据同步监控(Oracle Enterprise Manager Cloud Control)、数据校验(Oracle GoldenGate Veridata)等工具。OGG可以将来自不同部门或系统中的不同平台的数据集合在一起,汇总到统一的平台上,实现数据的整合与共享,以便于统一管理、分析和应用,提升数据的使用效率。
OGG是一款非侵入式的、用于实现异构IT环境间实时增量数据集成和复制的综合软件,可以确保数据一致性和准确性,满足高并发、低延迟的数据访问需求。支持不同版本和不同平台的数据库,支持多种数据源和数据库,允许您在Oracle数据库、其他支持的异构数据库和异构数据库之间复制、过滤、加密和转换数据等。此外,您还可以将数据库中的数据复制到Java消息队列、文本文件和大数据平台等。
从OGG 12.3开始,引入了微服务架构,支持自动冲突检测,可以实时监控数据传输状态和性能,简化了配置和管理,降低运维成本。最新版OGG不仅拥有超强性能,还简化了配置和管理,能够与Oracle数据库更紧密集成,提供更高的安全性。OGG与Oracle数据库内核相连,提供卓越的高速数据移动性能。经过专门优化,可在并发写入到多个目标时降低缓冲延迟。就Oracle数据库来说,OGG主要用于表级别数据复制、数据灾备、故障转移、跨平台迁移、零停机迁移、数据汇聚、数据分发、双平面等多种场景。
OGG的关键特性
- 和数据泵深度集成,数据导出导入时会包含CSN,目标端可根据CSN过滤数据
- 支持原生的DDL复制,取代基于触发器的DDL复制
- 支持密码以加密形式存储,进一步保障数据安全
- 支持trail文件中包含元数据,不再需要defgen生成定义文件
- 支持并行复制,提升性能
- OGG 21c及以上版本内置了Oracle数据库客户端
- 支持微服务架构,部署、配置和管理更便捷
- 支持远程捕获远程投递,OGG软件不需要安装在数据库服务器上
- 支持原生JSON数据
- 支持基于PDB的捕获
- 支持自动捕获,Oracle数据库版本须在21c及之上
- 支持Oracle 23c数据库,包括向量、区块链、无锁可保留列等
微服务架构
OGG从12.3开始支持微服务架构,是一种全新的部署方式,可以通过web界面管理、配置、部署和监控Service Manager、Administration Service、Distribution Service、Receiver Service和Performance Monitoring Service。对于喜欢命令行的朋友,可以使用客户端工具adminclient。
您可以使用这些web界面访问来创建和运行所有捕获、分发和投递服务。除此之外,您还可以设置数据库凭据,为用户定义角色后添加可以访问部署的用户,并监视进程的性能。
如果您当前使用的是经典架构,强烈建议您升级到微服务架构。因为在未来的版本中,Oracle将不再提供经典版本安装包。Oracle提供了迁移工具,可以方便的从经典架构迁移到微服务架构。
数据集成中心模式
OGG支持远程捕获和远程投递。这允许您可以在独立于源或目标数据库服务器的机器上运行OGG,将OGG作为数据复制中心来运行。使用这种方式,我们能够从源端数据库和目标端数据库服务器卸载OGG进程,管理、捕获和交付这些进程都在OGG复制中心服务器上运行。可以带来如下的好处:
- 不需要在数据库服务器上安装OGG软件,减少对数据库的影响
- 无需访问每台数据库服务器上的OGG安装,简化了OGG的配置运维工作量
- 可以省去trail文件的传输和接收,数据的时效性更有保障
- 支持多种数据源和目标系统之间的数据集成,更加灵活
- 数据可以跨地域、跨网络复制,提供更好的容灾解决方案
支持更多的数据源
截止目前,OGG支持的数据源组合已超过1000多种,为客户提供更多选择和灵活性。
OGG大数据版从21.5开始支持MongoDB,可以实现MongoDB的零宕机迁移,也可以将MongoDB迁移到Oracle数据库。Oracle数据库从12.1.0.2开始支持JSON,JSON数据存储在varchar2或LOB字段中,也就是说在Oracle数据库中,可以像普通的表一样存储和使用JSON数据,进行增删改查操作、创建索引、创建虚拟列等。还可以完全利用Oracle数据库自身的强大功能,比如对JSON数据进行分区、通过In-memory把JSON数据放入内来提高性能,还可以充分利用Exadata 智能扫描等特性将性能发挥到极致。在Oracle数据库21c中,引入了原生JSON数据类型,Oracle 对JSON的支持更好。使用原生的JSON数据类型,在插入数据时,对JSON进行解析后以二进制格式保存,在读取或更新操作时不需要再解析,使得读取和更新速度更快。
Kafka是一个基于发布订阅模式的消息系统,可以在多个生产者和消费者之间传递数据,且具有高吞吐量、低延迟,以及水平扩展的能力强等特点,因此被广泛使用。OGG大数据版很早就支持将数据写入Kafka(即生产者的角色)。从21.3开始,OGG大数据版支持从Kafka捕获数据(即消费者角色),然后再同步到关系型、NoSQL、BigData等其它目标端。
生成式人工智能(Generative AI ,以下简称GenAI)正为各领域带来巨大变革,OGG在整合GenAI与企业数据方面发挥着重要角色。企业正快速采用一种名为检索增强生成(Retrieval Augmented Generation,简称RAG)的技术,利用OGG可以将实时、安全的企业数据嵌入到GenAI中,解决了使用过时数据集的问题。OGG还能实时更新数据并将其转换为可供GenAI使用的向量格式,优化了数据处理和应用方式。通过OGG可以实现以下几点:
- 能够实时捕获来自所有流行数据生产的数据,同步并转化这些数据为向量数据存储到Oracle数据库23.4,配合生成式人工智能(GenAI)应用使用。
- 可以直接使用Oracle数据库自身的机器学习能力。比如调用用户提供的外部文本转换器,创建并存储向量数据到Oracle数据库23.4中以进一步使用。
- 可以直接与任何兼容ONNX的大型语言模型(LLM)进行交互,并处理流数据中的任意文本,将其向量化后存储到支持的所有数据目标中。
监控数据同步
Oracle Enterprise Manager Cloud Control,简称EMCC,提供了OGG插件。安装OGG插件,做些配置后,通过EMCC,一个页面可快速查看所有OGG实例的运行状况。
- 可视化监控当前OGG指标和历史趋势
- 当阈值被突破时,生成自动警报和事件
- 启动、停止、杀死和恢复单个进程
- 查看和修改已有的配置文件
- 查看错误日志、OGG错误日志、报告文件和丢弃文件
下面是EMCC监控OGG的架构图,监控微服务架构和经典架构稍有区别:
- 微服务架构,不需要做额外配置
- 经典架构,需要配合OGG监控代理来使用
校验数据同步
在业务环境中,保持数据的准确性和一致性至关重要。在数据集成过程中,可能会出现源端数据和目标端数据不一致的情况,比如数据初始化期间,源数据在不知不觉中损坏,目标端数据在复制之外被意外删除或更新等。
Oracle GoldenGate Veridata是一款高速数据比对和修复解决方案,可在不中断正在进行的业务流程的情况下识别、报告和修复数据库之间的数据差异。支持跨多种数据库的数据比较和数据修复的能力,并提供完整的报告。Veridata不依赖于其他 OGG 组件,可以独立使用,代理也可以不安装在数据库服务器上。
- Oracle GoldenGate Veridata有以下的优势:
- 不锁表,不阻塞
- 支持数据子集设置
- 数据哈希、排序和比对工作在数据库之外进行
- 不论数据同步是否正在进行,都可以正常工作
- 保留数据比较审计历史记录和详细统计信息
说在最后
数据集成是实现数据资源化和增值的关键步骤,它通过统一不同数据源的数据,提供了一个360度全方位的数据视图,提高了数据利用率,带来了更高的效率、更好的决策支持。OGG作为一款优秀的数据集成解决方案,凭借其强大的功能、广泛的兼容性和易用性,成为解决数据集成最后一公里问题的关键工具。OGG也将继续发挥重要作用,为您数字化转型奠定基础,助您迈向数据驱动的未来。
内容来源于:解决数据集成的最后一公里,实现数据的互联互通