版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Oracle技术解决方案1 / 91目 录1.概述41.1背景41.1.1南方电网“十一五”信息化现状41.1.2南方电网“十二五”信息化定位51.2项目建设目标61.3项目建设范围71.4项目建设内容71.5需求分析82.Oracle主数据管理方案102.1Oracle主数据管理设计132.1.1Oracle主数据管理总体架构设计132.1.2主数据方案设计212.1.3交换数据方案设计262.1.4数据交换系统功能设计283.Oracle主数据管理设计产品介绍463.1Oracle BPM Suite(业务流程)463.1.1BPM方案总体架构463.1.2闭环的Oracle BPM解决方
2、案473.1.2.1业务流程分析BPA阶段483.1.2.2业务流程执行BPE与业务流程监视BAM阶段503.1.3Oracle BPM平台中主要模块介绍513.1.3.1Oracle BPM服务器523.1.3.2Oracle业务规则523.1.3.3Oracle流程建模与模拟工具543.1.3.4Oracle元数据资料库543.1.4Oracle BPM解决方案的优势553.2Oracle SOA Suite(应用集成)563.2.1价值主张563.2.2创建服务563.2.3服务连通与转换563.2.4流程编排和整合573.2.5服务发布与注册583.2.6服务的安全管理593.2.7用
3、户身份管理603.2.8SOA平台的系统管理603.3Oracle Data Integrator(批量数据抽取)643.3.1产品概述643.3.2ODI产品体系结构653.3.3数据分发和传输663.3.4数据集成核心683.3.5数据质量核心683.3.6数据连接703.3.7ODI主要优势713.4GoldenGate(实时数据同步方案)713.4.1高可用和容灾解决方案723.4.2实时数据整合解决方案723.4.3复制模式733.4.4关键特性763.4.5应用方式774.软件配置及部署方案794.1软件配置及硬件推荐794.2部署架构图801. 概述1.1 背景1.1.1 南方电
4、网“十一五”信息化现状 Oracle主数据管理方案南方电网的数据质量管理必须有一整套的用于生成和维护企业主数据的规范、技术和方案,以保证主数据的完整性、一致性和准确性。(1)数据标准管理数据标准包括各业务域的数据集标准、数据模型标准及信息分类编码标准。这些标准用于指导各业务系统建设与实施。在标准管理上,数据资源管理工具应能有效管控标准的变更与执行。尤其是“十二五”期间,如何管理网省两级、省级集中的业务系统的统一版本问题是关键。(2)主数据管理通过企业范围内的统一视图,即ECIM模型,实现主数据管理,促进业务系统的数据集成与共享。主数据管理需要解决主数据的定义、标识、存储、汇集、清洗、监管与共享
5、。主数据可以为业务系统或数据中心服务。(3)数据质量管理数据管理的最终的目标是为了提升系统数据质量。在主数据的清洗阶段,通过数据质量管理工作,对数据进行解析、标准化、匹配&去重、补充及验证建立可靠的数据。对于核心结构化数据在加载到数据中心时也进行相似的工作,提高决策支持水平。南方电网的主数据管理系统从 IT 建设的角度而言都会是一个相对复杂的系统,往往会和企业数据仓库 / 决策支持系统以及企业内的各个业务系统发生关系,技术实现上也会涉及到 ETL、流程、SOA、企业服务总线等多个方面,一个典型的主数据管理的信息流为: 某个业务系统触发对企业主数据的改动; 主数据管理系统将整合之后完整、准确的主
6、数据分发给所有有关的应用系统; 主数据管理系统为业务系统和决策支持以及数据仓库系统提供准确的数据源。因此对于南方电网数据质量管理的建设,必须从项目建设初期就考虑整体的平台框架和技术实现。Oracle主数据管理(Master Data Management,MDM)是当前业界最完整的是一种集成的、完整的企业主数据(企业业务运行和商务分析所依赖的关键性基础数据)管理平台,具有企业级主数据存储、主数据整合、主数据清洗、主数据监管以及主数据共享等五大功能,可全面连接企业数据内容(广泛使用和在部门间共享的数据)和实现企业范围内的主数据统一、完整和一致。作为企业的真实数据来源,Oracle主数据管理(MD
7、M)平台通过数据治理服务以及对周边应用系统的集成和对商务智能系统的支持,来统一管理企业内重要的基础数据信息,可以整合并维护企业范围的全面、准确且权威的主数据,并将这些主数据信息作为共享服务分发到所需的业务和分析系统。Oracle主数据管理解决方案具有以下特性: 保证数据的唯一性和准确性:有效整理和集中分散在关键企业流程和应用软件中的数据片断,通过一系列匹配、整合和清洗规则使之形成单一真实数据源,并提供基于工作流的数据监管流程来实现持续的数据质量维护。最后将统一的数据资产作为Web服务提供给周边的业务系统,实现企业范围的主数据协同; 有效降低数据管理成本:提供统一的资源库来集中管理企业重要的数据
8、资产,并能将对这些数据资产的访问以服务的方式提供给周边应用系统,实时地提供访问主数据的WEB服务,包括匹配、申请全部信息以及申请所需信息等; 实现更好的报表:准确、有效的数据是准确、有效的报表的基础,Oracle MDM可以将清洗、排重、整理之后的准确数据提供给企业的商务分析系统,得到更加准确的决策支持; 提供企业系统架构灵活性和创新性的基础:维护持续的、唯一而准确的主数据资产,能够在不断变化的业务环境中增强IT弹性,满足爆炸式数据增长的需求。 Oracle主数据管理能支持以下六大功能: 指定每个特定主数据域的业务职责,例如,产品、客户、供应商和组织结构。 严格履行职责可保证接入共享资源的系统
9、始终保持高质量主数据。 提取分散在各个应用系统中的主数据集中到主数据存储库,主数据存储库一般采用二维数据库存储主数据。 根据企业业务规则和企业数据质量标准对收集到的主数据进行加工清理,从而形成符合企业需求的主数据。 制定主数据变更的流程审批机制,从而保证主数据修改的一致性和稳定性。 实现各个数据利用系统与主数据存储库的数据同步,从而保证每个系统使用的主数据相同。)随着IT系统的建设,主数据的修改动作必然从现有分散的各个系统转移到主数据存储库集中进行,因此必须保证当前主数据管理系统的灵活性,方便修改、监控、更新关联系统主数据的变化。Oracle主数据管理在企业范围内主数据协同方面完善了一套端到端
10、的模式可满足客户不同的实施需要,即“推动模式”和“拉动模式”,前者通过前端独立应用软件(包括Oracle应用系统、企业自主开发以及第三方软件)的主数据改动,经过Oracle 应用集成架构自动且快速地同步到Oracle MDM主数据平台,可实现企业范围内的全面数据整合,而后者则是由主数据平台主动对前端应用软件进行实时的访问,获取新增、更改和补充数据,并经过 Oracle 应用集成架构和内部数据规则实现标准化,从而最终在主数据平台实现唯一准确地共享数据。22.1 Oracle主数据管理设计22.12.1.1 Oracle主数据管理总体架构设计Oracle主数据管理的主要功能可归结为以下六大功能:
11、主数据存储 主数据整合与连接 主数据质量管理 主数据管理监控 主数据共享 安全可靠的平台主数据存储 一个具有无限可扩展性的内置、灵活(随时间变化)的开放数据模型可维护南方电网主数据和所有需要的属性(结构化和非结构化的)、相关实体、分类和关系; 可跟踪主数据属性、审计跟踪信息和历史主数据剖析的来源主要用于存储整合后主数据,将各系统的需求信息概括形成一条完整的记录并进行存储供应,提供一个完整的数据模型。主数据的不同部分分布在不同的业务系统中,比如一个call center系统需要保存客户的所有联系信息,但是一个计费系统可能只需要保留客户的与计费相关的信息,如何将客户信息形成一条完整的记录并进行存储
12、供应,当然是需要概括所有这些系统的需求,提供一个完整的数据模型。 数据整合与连接 领先的嵌入式数据质量管理工具及与第三方数据源的集成,用于验证和充实数据 可保持数据最新的持续数据清理功能集 快速安全的参数化搜索引擎,能识别和避免重复数据 智能合并和自动合并功能,消除数据重复,同时确保正确的数据属性排除 利用与外部内容提供商的预建集成来充实主数据内容 包括主数据生命周期管理工作流主数据分散在不同的业务系统中,要进行数据整合,第一步是实现这些异构系统的互联互通,然后通过一定的触发机制将各个系统针对主数据的修改同步到主数据存储库。但是在实施数据集成的过程中,由于不同系统提供的数据内容、数据格式和数据
13、质量千差万别,甚至会遇到数据格式不能转换或数据转换格式后丢失信息等问题,将会严重阻碍数据在各部门和各应用系统中的流动与共享。因此,如何对数据进行有效的集成管理是数据共享中心建设的一个关键难点。ETL是实现数据集成的主要技术。ETL中三个字母分别代表的是Extract、Transform、Load,即抽取、转换、加载。(1)数据抽取:从源数据源系统抽取目的数据源系统需要的数据;(2)数据转换:将从源数据源获取的数据按照业务需求,转换成目的数据源要求的形式,并对错误、不一致的数据进行清洗和加工。(3)数据加载:将转换后的数据装载到目的数据源。ETL过程中的主要环节就是数据抽取、数据转换和加工、数据
14、装载。Oracle的主数据整合管理ETL基于ODI来实现,使用ODI设计和生成典型格式;利用已有的元数据格式设计MDM 应用 (实体, 字段, 关系);生成和维护主数据结构;生成和部署转换。主数据质量管理 为每个主数据实体创建通用ID并构建针对每个所连接记录/系统对的交叉引用 一个数据导入工作台和用户界面,以帮助数据管理员管理源系统的映射和数据加载及主数据剖析 使用预建、符合标准的业务服务和适配器实现集成 使用可配置的属性“排除”规则,根据多个数据源创建单一的记录 利用基础服务框架的数据联合功能 主数据维护着企业里该种类型数据的最值得信任的数据,所以使用质量管理技术来保证这些数据的准确是主数据
15、管理里非常重要的一环。 1. 数据清洗:数据清洗是对数据进行校验和标准化,比如地址邮编是否存在等等。2. 数据匹配:数据匹配是找出有可能重复的记录。比如MDM系统里有两个阈值是用于控制数据匹配的流程,第一个阈值是高分阈值,对于数据匹配分值高于高分阈值的记 录将会使用数据存活规则进行自动合并;第二个阈值是中分阈值,数据匹配得分在高分阈值和中分阈值之间的记录将会进入人工判断工作流,由管理员或者其他指定 的人决定合并还是作为新记录。低于中分阈值的记录都将会被作为新记录。数据存活规则(Survivorship rules)一般而言,企业里的主数据来源于企业里的各个系统,当不同系统的同一个属性值有不同的
16、值的时候,就需要决定哪一个系统的值是准确的。数据存活规则指定各种规则来决定新的数据进入到主数据库或者当新数据和旧有主数据冲突的时候的处理方法。数据存活规则主要有三种: Recent规则:当相同的数据进入主数据系统的时候,以后来的数据为准,后来数据替换原来的数据。比如contact(联系人)信息,缺省是以后来的更新为主。 History规则:当相同的数据进入主数据系统的时候,以原来的数据为准,不接受后来数据的更新。 Source规则: 当相同的数据进入主数据系统的时候,以数据来源系统的可信度为作为使用哪个数据最后存活的规则。比如当源系统有A,B,C三个系统的时候,我们需要在主数 据管理系统里注册
17、这三个系统的时候,同时给这些源系统评分,则当使用source规则的时候,则以后的数据将以评分高的系统为准。比如有三个系 统,CRM,财务,物流,对于客户信息而言,我们认为CRM系统里的客户信息应该是最准的,我们应该给于CRM系统较高的分值,则这个时候对于客户数据我 们将使用Source规则,则以后所有的CRM系统相应客户的更新会覆盖原来不是CRM系统的更新。3.数据质量管理流程数据质量的大致控制流程,即当记录进入主数据系统时,先会在主数据系统里寻找可能匹配的记录,如果结果认为是不匹配, 则将进入处理不匹配流程来增加一条新记录;如果是分值足够高,则进入自动匹配流程把该记录和原有记录进行数据存活规
18、则处理并合并记录;如果是分值不足够 高,则需要人工来决定该记录是新记录还是需要和原有记录合并。主数据管理监控 最佳的工作流功能(例如针对南方电网主数据定义和审批路由的可配置工作流)响应整个主数据管理生命周期事件;oracle BPEL 规范制定自动化业务处理流程,支持用户自定义变更类型 确保坚如磐石的安全性和法规遵守证明的完整历史和审计跟踪 纳税人数据认证,支持机构创建数据质量标准,遵守这些标准并提升用户对数据的信心 商务智能基础架构,支持剖析、法规遵守和业务绩效指标 自动化、人工流程,提供良好的用户界面UI,多种通知方式 自动化、人工的审核和批准,逐级审批 易于多组织的协同工作主数据发布和共
19、享 面向终端用户和数据管理员的直观GUI,管理主数据的整个生命周期从创建或导入主数据信息到清理、匹配、增强和发布。使用预建的流程使南方电网更轻松地管理主数据 对所有集成模式实时(紧耦合和松耦合)、近实时(松耦合)和批量的严格的多模型支持 提供作为业务服务和Web服务的常用功能 一个内部触发的机制,创建变更信息并向所有相连系统部署 为所有的管理软件和分析系统提供主数据记录和所选属性 在面向服务的架构(SOA)和/或消息传递总线上的运营管理软件和数据仓库双向交互 通过Oracle应用集成架构 (AIA) 流程集成包 (PIP) 预建的集成 与Oracle商务智能企业版 (OBI EE) 预建的集成
20、为了实现主数据共享,首先全网应该各个分散的业务系统连接起来,实现各个业务系统与主数据存储的互联互通,目前的南网主数据管理解决方案主要采用两种方式来实现:基于ETL工具的方式和基于SOA体系架构的方式。1.基于ODI的方式基于ODI这样的ETL工具设计的架构更适合全网业务系统中的非实时数据量大的主数据共享发布。如上图所示,采用基于ODI的ETL工具具有连接各种异构数据源和变化捕捉的能力,采用它来实现MDM中异构系统的数据触发、整合和发布应该是顺理成章的事情,当某个主数据的源发生变化时,ETL的CDC(变化数据捕捉)功能就会捕获到变化,进而将变化的数据传输到主数据管理系统的临时存储区,然后ETL工
21、具根据定义的数据转化规则对数据进行清洗转化,形成主数据,进而ETL调用审批监管流程,一旦获得审批,ETL即可将主数据同步到主数据存储系统,同时分发给各个订阅该主数据的业务系统。同时ODI可以支撑流程的设计、运行、监控,否则ETL工具必须可以调用其它的工作流引擎,ODI可以实现与SOA的无缝集成,既可以将数据或者转化封装为Web Service服务,也可以调用外部的Web Service服务。 2.基于SOA架构的方式:在该方案更适合实时的数据量小的主数据共享发布,采用OSB(企业服务总线)技术构建应用集成平台,采用web service方式实现在多个系统间应用集成和互联互通。应用集成平台是数据
22、采集、数据交换及服务提供能力的直接承载。数据的收集和分发采用各种应用和适配器实现,各种应用适配器一般提供变化数据的的轮询或者推送功能。监控管理可以采用SOA中的工作流引擎来实现,同时SOA中的流程监控系统可以对整个主数据的收集、转化、审批分发提供端到端的监控。采用SOA技术设计的主数据管理架构基于J2EE的开放架构,会非常灵活,同时便于和其它系统集成,系统的扩展性比较好,其问题在于如果主数据同步的量非常大,效率会有一定问题。安全可靠的平台 基于标准的开放平台 多语言和多国家支持 经验证的平台,全球各行业(包括公共部门)数千客户的选择 面向混合的重工作负载Oracle拥有巨大数目的客户下关键数据
23、访问的高度可用和可伸缩的平台。 安全特性包括全面且灵活的认证、全面的审计和监控以及所有架构级别的加密。Oracle已经获得了17项独立安全性评估的担保,确立了Oracle在该领域的领导地位。这些评估包括TCSEC、ITSEC、FIPS和各种通用标准评估。2.1.2 主数据方案设计主数据管理的核心是数据整合、数据管控和数据服务。在横跨这三个层次需要进行数据安全管理、质量管理和元数据管理。下面分别进行介绍:数据整合:数据整合就是将离散于各个业务系统中的数据进行集中化,统一整合集成至数据中心。数据整合将通过ETL工具实现数据的抽取、转换和加载等功能。数据管控:主要包含数据中心物理模型、逻辑模型的设计
24、,数据的维护管理以及存储管理等管控功能。数据服务管控:数据服务管控主要是对采集至数据中心的数据进行数据交换和管控,主要包括数据交换服务设计,数据总线交换共享,以及数据交换管理等功能。元数据管理:元数据管理是整个数据共享中心中基础信息的管理,包括ETL元数据、接口元数据、模型元数据和数据服务元数据等的管理功能。质量管理:在数据管理的不同阶段,数据管理对数据质量管理的侧重点也有所不同。数据质量管理的目标,逐步从单纯地提高数据准确性,延伸至保障数据的完整性、唯一性、合法性、一致性、及时性等属性;从单纯以技术角度考虑数据质量问题,发展至从用户视角衡量数据质量问题,提高用户对数据的满意度;建立数据质量监
25、控机制,及时发现、报告、处理数据共享中心中的数据质量问题。数据质量管理子系统是数据共享中心中数据质量管理体系的重要组成部分。安全管理:主要包括数据存储安全、数据管控安全和数据交换等安全管理。主数据方案设计原则主数据方案设计,遵循以下一般原则: 每类业务数据实体的属性有且仅有一个所有者(Owner),零个或多个消费者(Consumer); 对数据的维护必须通过所有者进行,消费者对数据只有只读功能;如果消费者需要对数据进行维护,必须调用所有者数据维护服务; 数据有且仅有一个主数据源(Master Location),主数据源可以是数据所有者的应用数据库(ADB)或者数据中心数据库。基于性能的考虑,
26、消费者可以在ADB保存数据的备份,由主数据源实时或定时发起数据同步; 主数据源提供相应的数据存储和数据服务;主数据集成方案设计根据主数据源位置(Location)、数据冗余方式(Redundant)和数据维护的归属(Owner),一般的主数据集成方案分析如下表:方案123456主数据源数据中心数据中心数据中心数据中心ADBADBOwner 数据中心数据中心ADBADBADBADBConsumer是否有备份YNYNYN数据维护方式Owner读直接读Owner ADB中的数据备份同1调用数据中心数据访问服务调用数据中心数据访问服务直接读Owner ADB直接读Owner ADBOwner写Step
27、 1、在一个交易内写Owner ADB和数据中心;Step 2、通过数据中心启动对Consumer ADB的数据同步在一个交易内写Owner ADB和数据中心Step 1、调用数据中心数据维护服务;Step 2、通过数据中心启动对Consumer ADB的数据同步调用数据中心数据维护服务Step 1、写Owner ADB;Step 2、通过数据中心或主数据源启动对Consumer ADB的数据同步写Owner ADBConsumer读直接读Consumer ADB中的数据备份调用数据中心数据访问服务直接读Consumer ADB中的数据备份调用数据中心数据访问服务直接读Consumer ADB
28、中的数据备份通过数据中心的统一视图获取数据;Consumer写Option1:在一个交易内,Consumer调用Owner的数据维护服务,同时写Consumer ADB;Option2:集成Owner的数据维护界面,由数据中心启动同步Consumer ADBOption1:Consumer调用Owner的数据维护服务;Option2:集成Owner的数据维护界面同1同2同1同2下面就各个方案进行分析,对于方案1和方案2:这两种方案主要适用于尚无任何系统时,进行一体化系统建设,如应用于已有系统则改造量较大。同时,这两种方案均以数据中心做为主数据的维护中心。对于方案3、4和方案5、6:方案5、6较
29、适合已有大量系统的情况,带来的系统改造量最小。方案3、4适合在主数据维护职能不变的情况下将主数据在数据中心中进行集中,并提供给新建应用。主数据实施方案设计1、主数据创建抽取设计主数据创建抽取过程如下:其一、先对现有业务系统进行解耦,解决目前各业务系统间交叉访问,耦合度过高的问题。通过建设共享数据库,并将目前南方电网各系统交叉访问的共享数据通过数据复制机制同步或异步复制到共享数据库,然后再更改各业务系统现有的共享视图或物化视图定义,将共享访问数据源统一指向共享数据库。通过共享数据库的建设及数据复制机制的建立,可以将目前网状的交叉访问接口平滑过渡到基于共享数据库的星状接口,有效解决各系统依赖度过高
30、的问题,同时也为下一步各系统的升级改造打下基础。这里的数据复制产品可以考虑Oracle的GoldenGate实时复制产品,先将数据复制到共享数据库,完成“系统解耦”工作。其二、是进行数据共享协同平台的建设。在进行系统解耦时,我们会构建共享数据库,但该共享库仅仅是将当前分散到各业务系统的共享数据进行了集中,还缺乏统一的规划,因此还需要对共享库进行重新规划设计,同时也需要对共享协同平台和外部交换库进行规划设计。总体规划设计完成后,即可开始构建数据共享中心和业务协同平台,其中数据共享中心构建完成后,就可以逐步将各系统间原来基于视图和物化视图的数据共享访问调整为基于数据共享中心的访问模式。共享库规划生
31、成主数据管理,可以考虑Oracle Data Integrator产品,实现数据ETL的工作。2、主数据共享分发流程设计主数据创建生成后,就是对主数据进行有效管理和利用。同其他系统进行可以进行实时或半实时的同步从多个源系统建立统一、完整的记录,再将主数据信息同步到其他系统中。通过内嵌的集成服务同其他系统进行集成,例如丰富的公共API和业务事件。通过不断的数据清理和转换规则来确保同步数据的质量。主数据管理功能设计主数据的管理功能基本与内部交换数据、外部交换数据相似。2.1.3 交换数据方案设计内部数据、外部数据在数据交换上的业务功能和逻辑,以及技术实现都是相似的,可以采用相同的数据交换方案框架。
32、数据交换方案框架涵盖了数据交换,质量清洗,数据管控和数据使用,解决了如何在核心数据上实现统一的存储,维护和使用的问题。 数据集成:数据集成就是将离散于各个业务系统中的数据进行集中化,统一整合集成至数据共享中心。数据集成需要对南方电网内部系统以及外部系统进行数据集成。对于不同的数据集成场景,有不同的数据集成实现模式,比如有基于Oracle ODI的“拉”数据集成模式和基于ESB总线的“推”数据集成模式等。 质量管理:在数据管理的不同阶段,数据管理对数据质量管理的侧重点也有所不同。数据质量管理的目标,逐步从单纯地提高数据准确性,延伸至保障数据的完整性、唯一性、合法性、一致性、及时性等属性;从单纯以
33、技术角度考虑数据质量问题,发展至从用户视角衡量数据质量问题,提高用户对数据的满意度;建立数据质量监控机制,及时发现、报告、处理数据共享中心中的数据质量问题。数据质量管理子系统是数据共享中心中数据质量管理体系的重要组成部分。图:数据质量管理 数据管控:数据管控不是纯粹的技术问题,而是由技术、人、信息和流程4个方面共同影响的综合管理问题。数据管控的演进思路划分为4个步骤:提出管理需求、制定管理流程框架、细化具体管理流程、与组织机构具体角色进行对应。 数据使用:存在于数据共享中心中的数据主要有两大方面的使用,一是封装成数据服务,并集成于业务协同平台(服务总线平台)进行数据服务共享,南方电网信息内部系
34、统和其他外部系统统一通过业务协同平台获取所需业务数据;二是基于数据共享中心的集成化数据进行综合查询分析的应用,查询分析统计功能不再基于核心业务数据库,避免造成对核心业务系统的性能影响。图:数据服务共享2.1.4 数据交换系统功能设计基于内部数据交换方案框架,并结合南方电网数据共享协同平台总体功能需求分析的基础上,梳理出南方电网共享中心的总体功能组织结构如下图所示:以下将分别对数据共享中心数据集成域、数据管控域、质量检测域和数据使用域的功能规划进行详细介绍:数据集成数据集成引擎(Data Integration Engine)面向应用系统,在各个应用系统的数据源中提取数据,是一个跨平台的用于整合
35、异构系统数据的ETL工具,在数据共享中心中,数据集成引擎实现了从各业务应用系统的数据源中提取用于整合共享的数据,经过质量检查后,按新的数据模型对数据进行转换和清洗,正确无误后加载到目标数据共享中心中。下面对数据集成引擎中的各个部分的功能进行详细介绍。元数据模型为了可以自动完数据提取、质量检查、数据转换清洗和数据加载这个数据整合过程,数据集成引擎需要知道源数据、目标数据的数据结构,源数据到目标数据的转换及清洗规则,还有源数据的质量检查规则等数据,这些用于描述数据本身的数据被称为数据集成的元数据,而元数据模型是元数据的一个实例集合,描述了具体的数据结构和规则,在数据进行集成前,必须先定义好元数据模
36、型。具体的元数据包括:1)数据源定义2)目标库定义3)数据物理模型4)数据检查规则5)数据转换规则6)数据清洗规则批量数据提取批量数据提取(Bulk Data Extract)从数据源定时批量提取数据进行整合,是数据集成引擎的前端功能,与元数据模型中定义的各个数据源进行连接,获取需要整合的数据,然后存储到中间数据库(Staging Database)进行后续的质量检查、清洗和转换处理。批量数据提取因为提取的数据量较多,对于性能的影响也较大,一般用于非实时的数据整合,适用于时效性要求不高并且不希望过多影响源系统数据处理性能的情况。对于关系型数据库的批量数据提取可以使用两种接口方式来进实现:1)O
37、RACLE DB LINK:这种方式适用于目标数据库和数据源数据库都是Oracle的情况,直接在目标数据库建立源数据库的DB LINK,通过DB LINK就可以像在一个数据库一样通过SQL直接提取数据源的数据。2)JDBC Data Source:这种方式适合源数据库是非Oracle并且支持JDBC协议的数据库,目前大部分主流数据库都支持JDBC协议,在JDBC协议上建立Data Source,通过JDBC在源数据库上执行SQL进行数据提取。使用批量数据提取的方式来提取数据可以用于首次初始化加载全量数据,也可在首次加载数据后通过两种方式实现非实时的增量更新,这两种方式分别是:1)基于时间戳的增
38、量更新这种方式提取数据速度较快,源数据库通过物理表或者试图的方式暴露数据,但要求数据源的表或者视图必须有时间戳的字段并且不能对数据记录进行物理删除。2)基于主键比对的增量更新这种方式需要每次都提取全部数据,然后在目标数据库上按主键标识对所有数据进行全量比对来识别增量更新的数据记录,效率低,数据源的压力较大,只适合小数据量的提取,基于主键比对的更新对源数据的表或者视图无特殊要求。变化数据捕获和批量数据提取一样,变化数据捕获(Change Data Capture)同样是数据集成引擎的前端功能,和数据源进行队列;但顾名思义,变化数据捕获只提供增量数据提取的功能,通过对源数据库上变更数据的捕获,数据
39、集成引擎可以实现实时或准实时数据同步,此方式适用于整合有较高时效性要求的数据。变化数据捕获提供多种技术实现方式,包括数据库触发器、数据库日志采集器、基于消息队列的变更数据订阅和基于Web Service的数据变化通知,下面对几种方式进行描述:集成数据引擎主动捕获数据变化的方式:1) 数据库触发器(Database Triggers):通过在源数据表上创建触发器来获取变化的数据,此方式实时性高,但需要对源数据库进行改动,对高负载应用的性能有一定的影响,此方式支持主流的关系数据库。2) 数据库日志采集器(Log Miner):通过对源数据库日志文件进行分析,实时捕获数据库数据的变化情况,此方式速度
40、较快,对源系统不会造成太大的压力,但需要数据库本身的功能进行实现,目前只支持Oracle和DB2两种数据库类型。上面两种方式是数据集成引擎主动捕获变化数据,而下面的两种方式则是数据集成引擎被动接收源系统的通知:1) 变更数据订阅(Change Data Subscriber):通过消息队列技术,变化数据捕获功能在数据源应用提供的基于JMS标准的消息队列上订阅数据的变化消息,通过监听数据变更队列,实时获得数据源应用放到队列中的数据变化消息,此方式的提取速度快,并且JMS消息队列提供了消息传输的高可靠性,但实时性取决于数据源应用,并且数据源应用需要开发相应的功能来实现。2) 数据变化通知(Data
41、 Change Notification):和变更数据订阅相同的原理,数据变化通知技术是通过暴露数据变化通知的Web Service接口给数据源应用,当数据的变化被数据源应用捕获后,数据源应用调用通知接口把变化的数据传递给数据变化捕获功能,此方式提取速度快,并且可通过ESB统一暴露服务接口,消息传输可靠性也可以通过ESB的获得支持(需要ESB的实现支持此功能),但实时性同样取决于数据源应用,需要数据源应用做相应的开发。对比主动和被动捕获的几种实现,主动捕获技术更适用于数据源是关系数据库并且数据变化不需要进行逻辑处理的情况;而当数据源不是关系数据库又或者数据的变化后需要进行逻辑处理,不能直接通过
42、数据库触发器或者日志分析进行判断数据是否发生变化的情况下,则需要改造数据源,使用被动捕获技术来实现。在数据共享中心中,为减少对数据源的影响和改造,建议主要通过数据库触发器和数据库日志采集这两种方式来实现实时/准实时数据提取。数据质量检查在数据集成引擎中的数据质量检查(Data Quality Check)功能是数据质量的第一道防火墙,在数据的来源入口根据元数据模型中设定的数据检查规则对从数据源中提取的最原始数据进行规则验证,当某条数据记录不符合检查规则,会被数据质量检查工具自动标记为问题数据,同时在质量问题表中对引起质量问题的原因和出现问题的数据记录进行记录。数据质量检查功能实现的检查规则类型
43、可分为数据约束检查和业务规则检查,具体如下:(一)数据约束检查:基本数据约束,如:人员名称不能为空唯一性约束,如:人员身份证号码不能相同有效引用约束等(二)业务规则检查数据约束检查可通过关系数据库约束实现,而业务规则检查需要执行SQL查询分析才能完成,而由于数据质量检查功能是在数据整合的过程中执行,只能做到事前控制,并且是使用关系数据库提供的功能进行检查,复杂的数据质量问题检测或者要在多个数据源的数据集成后(事后控制)才能进行检查的问题则需要在数据质量服务器中的质量检测服务中执行或检测。数据转换清洗数据集成引擎把各个数据源的数据提取后进行了集中存储共享,并建立唯一的数据标准,使用一致的方式向应
44、用提供数据;实际情况中,集中存储和共享的数据数据模型和数据源的模型大部分情况下都不会完全一致,这就需要在数据源的数据进入到目标数据库前进行转换或被清除掉不需要和无效的数据。数据转换清洗功能根据元数据模型中定义的转换和清洗规则进行数据自动转换清洗。目标数据加载目标数据加载(Target Data Loading)把经过了质量检查、数据转换与清洗后的数据加载到目标数据库中进行存储。目标数据存储可以是标准的关系型数据库或者数据文件(如XML、Excel等),在此方案建议书中使用Oracle关系数据库作为数据集成的目标数据存储库。质量检测数据质量检测是数据共享中心数据质量控制的核心,负责数据质量问题的
45、检测与收集,当检测到质量问题时,产生相应的事件并进行事件记录与通知,让用户可以快速和直观的了解到数据产生了质量问题并进行及时处理;对于系统可以按规则设定进行自动修正的质量问题,数据质量管理内置的自动数据修正(Auto Data Correct)功能将自动修正并记录修正日志。上图中的质量检测服务提供数据质量问题的自动检测功能,通过调用数据质量规则引擎执行预设的规则或者通过定制开发的检测代码,定时扫描检测目标数据库中的数据,当发现问题后如果可以进行自动修正则调用自动数据修正功能进行修正,否则直接通知质量监控引擎,告知产生一个质量问题事件。数据质量规则引擎是自动质量检测和自动数据修正的基础运行引擎,
46、可支持通过规则来设定与实现简单问题的检测和数据修正。质量监控引擎除了收集质量检测服务产生的质量事件,同时也会监控其他模块检测到的质量问题记录(如数据集成引擎中的数据质量检查)并转化为统一的质量事件,通过分析后,设定事件的等级、处理人等信息,然后进行事件处理(记录和告警)下面对几部分的功能进行详细描述。质量监控引擎质量监控引擎不负责具体的质量问题检测,而是对分布在各个环节中被检测出来的问题进行统一收集,经过分析处理,封装为统一的质量事件,并对事件进行处理。(1)质量事件收集在整个数据共享中心中有两个环节会产生质量问题,一个是数据集成引擎中的数据质量检查功能,该功能会在检测到质量问题后把问题描述保
47、存在数据库中的错误表中;另外一个事下面提到的同样是在数据质量服务器中内置的功能“质量检测服务”,该功能根据质量规则引擎的规则定期执行质量检测,发现问题后也会把问题描述存放在质量问题表中。事件收集提供主动监测和被动监听两种模式来收集质量问题并产生质量事件。对于数据集成引擎中的质量问题,事件收集功能使用主动监测模式,准实时的扫描数据库中的错误表,一旦发现新的错误产生,马上捕获并进行处理。对于数据质量服务器中的质量检测服务,事件收集功能使用被动监听模式,接受质量检测服务报告的质量问题,一旦收到信的通知,马上进行处理。除了内置的两种问题收集的实现,质量监控引擎的时间收集模型还提供了可扩展的主动监测开发
48、接口和面向其他模块或者应用的监听接口,主动监测使用API的方式进行扩展开发,而监听接口通过准实时扫描标准的质量事件队列表的方式实现,其他模块或者外部应用如果需要向数据质量服务器报告质量事件,直接通过数据库访问接口在质量事件监听表插入记录即可。(2)质量事件分析事件一旦被收集马上被创建并转到事件分析模块中进行分析,事件分析模块根据事件关联的数据实体找到该数据实体的质量元数据,分析出事件的严重等级、事件的处理人、事件的处理动作(EMAIL或短信通知等)和处理流程等信息,补充完成事件的详细属性信息并封装为完整的事件消息转交给事件处理模块进行处理。系统内置一条默认规则,如果质量问题是可以被系统自动修正
49、并且已经被质量服务器中的自动修正功能进行修正,那么该事件不需要后续的处理,只产生信息基本的事件记录。其他规则需要用户在数据管理系统中数据管控模块的质量管理功能中进行设置。(3)质量事件处理事件处理模块完成提供两个功能,一个是往数据管理系统中的质量事件通知表中保存事件的详细记录;另外一个是根据事件分析模块中获取到的事件处理动作信息执行事件处理动作。此方案建议实现以下三种类型的事件处理动作:1.发送邮件2.发送短信3.发送代办质量规则引擎质量规则引擎(Quality Rule Engine)中的质量规则分为问题检测规则和数据修正规则,规则引擎能根据配置的规则或简单的编码就可进行自动问题检测和自动数
50、据修正,而无须全部重新开发。对单条数据的基本约束规则检查,如属性是否为空,某字段是否符合范围等都在数据集成引擎中的数据质量检查功能完成,质量规则引擎执行的是事后检查,也就是数据已经经过基本检查并抽取到目标库后,规则引擎才通过质量检测服务的定期调度,对数据执行问题分析。在本次建设范围内,质量规则引擎会内置实现一些通过配置即可完成质量检查的规则实现;同时提供可扩展的开发模型,使得复杂的业务规则可以通过扩展开发来完成检测和数据修正,具体提供的功能如下:(1)内置实现规则内置实现规则按使用和数据检测修正逻辑的复杂度分为基本规则和高级规则,基本规则面向普通用户,使用上较为具体,如重复数据记录识别规则,参
51、数的配置也较为简单,高级规则面向专业用户或者维护人员,较为抽象,如下面提到的自定义公式规则,提供了强大和灵活的自定义质量检测与数据修正功能,相对基本规则来说,使用上也较为专业,下面分别对基本规则和高级规则支持的功能进行介绍:l 基本规则n 检测规则编号规则名称规则说明1重复数据记录识别规则根据配置的数据实体属性(可配置多个)的值完全相同来判断数据是否重复2数值内容匹配检查规则如果数据的某些字段等于、大于、小于或者包含指定的内容,那么认为该记录存在质量问题3n 修正规则编号规则名称规则说明1更改数据字段的值为固定内容可修改数据记录中的一个或多个字段的数值为指定的内容2执行删除对数据记录进行硬删除
52、或者软删除3l 高级规则质量规则引擎内置实现了基于元数据的自定义公式质量规则,用户或者开发人员通过表达式编辑工具或者手工编写表达式的方式可实现常规的质量自动检测和自动数据修正功能。自定义公式质量规则分为设计时(Design Time)和运行时(Runtime)功能,设计时面向最终用户或者维护人员,提供统一的规则配置模型,而运行时则根据执行环境分为数据库运行时和应用运行时。自定义公式规则的规则配置模型按数据检测和数据修正的用途而分为条件表达式配置和计算表达式配置,条件表达式用于判断数据是否符合设定的条件(检测),而计算表达式用于设定数据的数值如何计算(修正);统一的规则配置是指表达式是基于标准的
53、数学公式来进行设定和展现。自定义公式质量规则运行时指公式规则的运行是在什么环境中执行,由于数据共享中心的数据都存放在数据库中,所以自定义公式质量规则运行时内置支持在数据库中运行,数据库运行时负责把统一的数据公式翻译为数据库可执行的SQL语句,然后在数据库中执行。(2)扩展开发支持质量规则引擎设计上是基于接口的设计和开发,其核心的功能不实现任何检测和修正规则,只完成对外调用接口的实现(如给质量检测服务和自动数据修正功能进行调用),当出现内置规则不能支持的复杂检测或者修正规则时,可重新扩展开发新的规则,基本规则或高级规则都可进行扩展,实现上没有区别。通过扩展开发支持,即使将来引入了第三方的强大的规
54、则引擎,也可以在数据共享中心中实现的质量管理模型上进行统一调度、检测和管理。质量检测服务质量检测服务是一个调度程序,按照系统设定的时间周期定期对各个业务实体的数据记录执行检测规则并捕获检测规则返回的结果,判断是否存在符合检测规则的质量问题,如果发现出现问题,再判断该质量检测规则是否关联了自动修正规则,如果是,那么调用自动数据修正功能并传入修正规则和问题数据信息对问题进行自动修正。每次调用执行完成后,质量检测服务把执行的结果,是否出现问题,问题原因,执行时间,是否进行修正,修正动作等信息保存在质量检测问题表中进行日志记录。自动数据修正自动数据修正功能是一个控制程序,由质量检测服务进行调用,其功能
55、是调用质量规则引擎执行自动修正规则,传入规则执行所需的参数数据,执行完成后把结果返回给质量检测服务进行后续处理。数据管控数据管控是指对一个企业数据的可用性、实用性、完整性和安全性等的全面管理。一个有效的数据管控包括一个管控主体、定义好的一组程序和一个执行这组程序的计划。简要的说,数据管控的定义可以理解成对所有信息相关过程进行决策和管理。数据管控功能主要包括元数据管理、质量管理、数据管理和统计分析。元数据管理(1)元数据维护元数据维护提供对元数据的增加、删除、修改等基本操作。另外,还应支持实体和实体关系的建模、数据处理过程描述等功能。对于元数据的增量维护,要求能保留历史版本信息。在实施元数据维护操作的过程中,需要对这部分操作的过程进行一定的约束和限制。元数据定义为如下的四种状态:审核状态 对于需要进行维护的元数据,首先进入审核状态,等待审核人员的核查,确定该元数据是否需要进行修改;公示状态 审核通过后,进入公示状态,即处于对元数据定义征求意见的状态,尚未最后定稿,公示状态有一定的期限要求;发布状态 公示状态到期后,根据在公示状态期间回馈的意见,给出元数据维护的准确方案,进入发布状态;维护状态 发布状态结束后,相关元数据进入维护状态,对相关元数据的维护需要保留其历史版本信息。(2)实体查询实体查询指对元数据库中的数据实体基本信息进行查询的功能,通过该功能可以查询数据库表、维
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 腐蚀性化学品买卖
- 2024【农田租赁合同范本】租赁农田合同书
- 【语文课件】洲际导弹自述
- 公共设施运营计划管理考核试卷
- 洗煤厂劳务合同范例
- 物业土地授权合同模板
- 灰渣运输合同模板
- 买卖渔船合同范例
- 气体管道采购合同范例
- gmp委托生产合同范例
- 儿童康复治疗各个阶段
- GB/T 44712-2024国际间遗体转运基本要求
- 医疗美容诊所装修合同
- 中国石化刮刮卡合同范例
- 冬季准备活动预防伤害
- 广东省广州市(2024年-2025年小学五年级语文)人教版期中考试((上下)学期)试卷及答案
- 养老院服务评价与改进制度
- 基因组编辑技术专题
- GB/T 17395-2024钢管尺寸、外形、重量及允许偏差
- 自考《计算机应用基础》高等教育自学考试试题与参考答案(2024年)
- 大学生法律基础学习通超星期末考试答案章节答案2024年
评论
0/150
提交评论