多源数据融合平台建设方案.docx
- 文档编号:3335674
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:34
- 大小:811.93KB
多源数据融合平台建设方案.docx
《多源数据融合平台建设方案.docx》由会员分享,可在线阅读,更多相关《多源数据融合平台建设方案.docx(34页珍藏版)》请在冰点文库上搜索。
多源数据融合平台建设方案
多源数据融合平台建设方案
2019年12月
一、元数据管理子系统
1.元数据管理
元数据的范围包括数据结构、数据词典、字段维度、程序映射逻辑、数据生命周期等。
元数据管理包括元数据定义、存储、查询、维护、检查和分析应用。
2.数据定义
元数据的定义可参考以下步骤:
(1)基础分类信息制定
设置基本的分类编码信息。
如主题的分类,层次的分类,表级别分类配置管理。
(2)元模型制定
根据管理需要,自定义元模型信息。
元模型是指管理数据的基本信息模型,配置了表元模型的信息要素,规范管理要素等。
(3)数据分层定义
归纳分类是认识和理解对一个复杂的对象的最有效的办法,在对数据进行管理我们认为从分层、再分主题对数据进行分类是行之有效的方法,制定好数据分层分主题,每个表归属到层次和主题上。
(4)数据主题管理
根据数据交换共享数据目录为基础,按照相关业务,划分主题并对各主题进行管理。
通过分类来约定表数据资源的存储周期;预置多个表资源分类(层次、主题、存储周期等),分类可动态扩展,通过分类的表命名规则,可以快速把表资源归属到各个分类下。
(5)模型规范制定
制定表的命名规范,字段的命名规范。
解决各源系统不规范的命名方式,避免同名不同义,同义不同名的现象。
(6)维表管理
从各层次、主题,提取出公共维度和维度的统一编码,以了解系统数据的非常关键的内容。
(7)指标管理
从各层次、主题提取基础的指标,并定义其业务含义,技术口径。
另外,元数据定义主要需实现两类规则定义:
标准化的命名规则和统一的扩展规则。
(8)标准化的命名规则
标准化数据的名称、编码、层级、层的属性名称,确保协调一致,统一管理,解决各源系统不规范的命名方式,避免同名不同义,同义不同名的现象,解决系统之间数据集成的标准,解决跨部门数据分析时数据一致理解,同时也是沟通IT和业务的一致理解。
(9)提供统一数据扩展规则
系统对指标代码,元数据,子类等扩展要素的扩展规则进行统一限定,保证后续数据的持续规范管理。
3.元数据存储
元数据存储的信息管理范围:
数据源接口、ETL和前端展现等全部数据处理环节,并提供对技术元数据及业务元数据存储。
(1)业务元数据
面向业务分析人员,是数据中心数据处理规则的业务化描述,主要包括业务规则、业务术语、业务指标、信息分类等;
业务指标基本属性包括:
指标标识、指标名称、指标描述、指标数据来源、指标业务口径、指标统计周期、指标度量单位、指标创建日期、指标最后修订日期和指标备注等。
维度数据基本属性包括:
维度标识、维度名称、维度描述、维度层级数、维度生效时间和维度失效时间等。
(2)技术元数据
面向运维技术人员,偏重数据结构和数据处理细节方面的技术化描述,是用于开发和维护的基本信息,主要包括源系统接口规范、数据结构的描述以及数据处理过程的描述等信息。
4.元数据查询
元数据查询必须支持对元数据库中的元数据基本信息进行查询与检索的功能,可查询数据库表、维表、指标、过程及参与的输入输出对象信息,以及其它纳入管理的对象基本信息,查询的信息按处理的层次及业务主题进行组织,查询功能返回实体及其所属的相关信息。
提供可视化的界面,实现元数据信息的查询展现,支持按照元数据的查询、按指标定义和指标名称的查询。
查询的信息内容包括:
数据字典、数据目录、服务目录等。
提供对历史信息的查询,方便维护人员了解具体对象的历史变更情况。
查询功能包括快速查询功能和属性查询。
查询功能表
查询功能
描述
快速查询
以关键字为核心,通过对元数据的关键属性进行模糊查询,返回符合条件的元数据列表,查看某一元数据的详细信息。
属性查询
指定元数据类型、元数据属性,并输入查询属性的值,对该类型元数据进行模糊查询,返回符合条件的元数据列表,查看某元数据的详细信息。
5.元数据维护
随着本项目的深入,元数据是动态更新的,因此元数据的维护需提供对元数据的增加、删除和修改等基本操作。
对于元数据的增量维护,可以保留历史版本信息。
用户使用元数据基本维护功能,可以统一管理所有系统中的元数据。
元数据的维护操作是原子操作,这些原子操作可通过服务封装的形式向性能管理系统的其它模块提供元数据维护接口。
使用者可基于业务和管理的层面对业务、管理需求进行建模,定义元数据的属性;支持Excel批量操作和外部接口导入功能。
6.元数据检查
数据质量检查机制能及时发现、报告和处理元数据的数据质量问题,因此,平台应提供对元数据数据质量的检查手段,在元数据上线时,对元数据进行稽核检查,保证元数据信息的完整性,合理性。
元数据检查应包括SQL解析成功率、表级关系完整率、字段关系完整率等评估指标进行元数据质量检查。
7.元数据分析
当数据出现问题时,元数据管理能够通过血缘分析和影响分析,定位数据问题产生的路径,并评估出该问题对平台其他数据或应用的影响。
二、数据采集子系统
1.采集方式
通过多源数据采集接口,与其他系统对接,系统提供多种类型的采集手段,以满足IT系统对数据采集现状的要求,如:
采集手段可包括“推”模式、“拉”模式、web上传模式、直连模式等,如下图所示:
数据采集方式示意图
2.采集技术
如何快速从业务系统获取采集实时数据,而不能对源业务系统产生大的性能影响。
数据共享交换平台数据采集可参考以下关键技术:
(1)服务接口的数据采集
服务接口数据采集
方法
原理
优点
缺点
基于快照法
快照是数据库中存储对象在某一时刻的即时映像。
周期性的提取源数据库系统中的数据快照加载到目标数据库中
它不需要依赖于特别的机制,系统资源占用较小,容易管理和操作
由于对于快照对象并不区分具体的变动记录,而且采用快照集合完全刷新,因此效率较低
基于触发器法
在源数据库为同步对象创建相应的触发器,当对同步对象进行修改、插入或删除等DML命令时,触发器被唤醒,将变化传播到目标数据库
极大提高了系统效率
使用的系统资源比较多,需要对系统进行改动
基于日志法
数据库日志作为维护数据完整性和数据库恢复的重要工具,其中已经包含了全部成功提交的数据库操作记录信息。
基于日志法就是通过分析数据库日志的这些信息来捕获复制对象的变化序列。
基于日志法不仅方便,而且也不会占用太多额外的系统资源,对任何类型的复制都适合,不但能提高效率和保证数据的完整性,还能在对等式复制时提供详细的控制信息
数据库日志的格式是不公开的,因而不得不基于某一同定的数据库日志分析工具或接口,这给异构数据库复制带来了问题。
基于API法
在大部分应用程序和数据库之间引入一类中间件,由它提供一系列API(包括ODBC/JDBC驱动程序),这些中间件在完成应用程序对数据库修改的同时,也把复制对象的变化序列记录下来,从而达到捕获的目的
不需要改变现有的数据库,也不依赖具体的数据库
对那些不经过API操作进行的SQL语句而产生的数据变化
基于影子表法
影子表法是在初始化时为复制对象表T 建立一张影子表S,也就是作一份当时的拷贝,以后就可在适当时机通过比较当前T 和S 的内容来获取净变化信息
能在任何数据库上实现
资源开销比较大
基于时间戳法
基于表中数据的时间戳增量提取变化的内容
能在任何数据库上实现
依赖于源系统表结构设计
(2)FTP文件采集
文本文件输入:
处理有列分隔符(限定符、逃逸字符)的文本文件。
功能选项丰富、有错误处理机制。
CSV文件输入:
简化了文本文件输入通过NIO、并行、延迟转换提高性能
固定宽度:
列固定宽度的文件,不用解析字符串,性能好。
(3)Socket消息采集
Socket消息采集模块主要功能:
1、Socket客户端接收流量系统提供的A信令消息保存到本地文件。
2、Socket服务端将接收的A信令消息实时传输数据给下游其他系统,同时支持将本地文件转为消息后转发。
(4)Sqoop数据高速同步采集
可采用开源的Sqoop来实现大数据平台和DB2库、HBASE的高效数据同步。
共用基础平台数据分发的功能。
应用场景:
可以使用于数据抽取,或从数据中心同步到其他数据库。
3.采集功能
(1)离线采集
离线采集,即非实时采集;采集可分为“推”模式和“拉”模式两种。
离线采集“推”模式:
即,各行政单位定期将数据推送到数据交换共享平台指定的前置机存储设备进行存储,可采用FTP可SFTP等相关方式;平台负责周转前置机设备实现数据的入库等相关操作。
离线采集“拉”模式:
即,各行政单位具备自有IT系统数据缓冲前置机的,由数据交换共享平台定期到指定设备进行数据采集。
(2)实时采集
实时采集主要以“推”模为主,即在数据交换共享平台前置设备建立数据监听机制,监听各行政单位是否将数据推送到数据交换共享平台指定的前置机存储位置,当发现存储设备有数据产生时,实时地将数据采集到数据交换共享平台,用于数据的处理工作。
(3)WEB服务采集
针对各行政单位IT系统无法提供数据文件的,通过数据交换共享平台提供WEB采集系统,用户登录系统,可进行数据录入或直接上传文件数据。
基于WEB的采集,系统提供自定义表单的功能,以满足不同行政单位数据采集的需要。
(4)接口服务采集
基于各行政单位IT系统提供的数据接口,数据交换共享平台通过调用接口服务,实现数据文件的采集。
(5)采集异常处理
系统提供采集异常处理机制,包括:
采集任务中断、采集数据失败等相关异常现象时,实现相关的补采机制,或通过告警的方式通知系统用户;如采集各行政单位数据时,系统监听采集任务中断或网络中断等异常故障时,系统可智能触发补采机制,若无法补采,可通知系统用户进行故障检查,以保障源数据采集的可靠性。
(6)配置管理
配置触发采集的方式,如:
实时采集、按小时采集、按天采集、按月采集等不同的时间方式。
配置各行政单位数据采集的存储位置,以便于安全存放与管理。
三、数据清洗加工子系统
处理采集过来的数据,实现数据的清洗、转换、加载功能,一方面保障采集的数据能正确、完整、规范地加载到目的地;另一方面,实现数据整合过程中的异常处理机制,如:
处理传输异常、数据加载异常、数据结构与质量异常等。
图5-42数据清洗整体能力结构图
建议采用成熟的ETL工具实现数据的清洗整理过程。
数据清洗结构设计
1.清洗转换
数据清洗转换指对前端采集过来的数据进行清洗与转换处理,包括数据过滤、数据剔重、类型转换、编码映射、文件拆分与合并、维度转换等功能。
数据清洗转换的任务主要是进行不一致的数据转换、数据粒度的转换、数据去脏和一些转换规则的计算。
其中不一致转换过程是数据整合的过程,侧重于将来源于不同业务系统的相同类型的数据进行统一处理;数据粒度转换需要对数据进行统一归整;转换规则计算按照设计的计算归则对数据进行重新计算。
系统支持批量清洗和实时清洗,针对批量离线数据进行分布式并行清洗转换,针对实时数据进行不落地清洗转换。
(1)转换规则配置
数据清洗系统提供数据转换规则配置,以图形化的界面来实现灵活的数据处理规则配置,主要提供的数据转换规则设置包括:
对数据进行计算、合并、拆分的规则配置、对空值替换规则的配置、对数据格式化规则的配置等。
(2)处理过程记录
数据清洗系统提供数据处理过程记录功能,支持对数据处理过程的日志进行记录,记录的信息主要包括:
元数据记录、转换后数据记录、运用的转换规则、转换的时间等内容。
(3)数据转换组件
数据清洗系统提供丰富的数据转换处理组件,主要包含如下:
1)支持任意合理的数据格式转换,包括但不限于:
时间类型的转换、字符编码转换、数据类型转换;
2)支持统一编码映射,为了保障数据的一致性,需要对不同来源的数据进行统一的编码,如公民唯一标识,各种纬度参数等。
3)支持多字段的混合运算,运算规则可灵活配置,包括但不限于:
sum、max、min、avg等;
4)支持各种字符操作,包括但不限于:
字符替换、字符截取、字符连接;
5)支持数据粒度的转换,保证转换后的误差在规定的范围内;
6)支持数据格式化,包括时间、数值、字符、计量单位等数据;
7)支持复杂条件过滤,过滤条件可灵活配置;
8)支持数据去重处理,可按照用户定义的规则自动判断重复数据,并按照用户定义的规则处理重复的数据;
9)支持记录间合并、支持将一条记录按照可配置的规则拆分为多条记录;
10)支持行、列变换;
11)支持数据清洗及标准化;
12)支持处理过程支持各种字符集的转换等。
13)硬编码数据转换
14)基于硬编码实现数据转换依托于插件方式来实现,采用将不同的数据转换过程通过硬编码的形式封装为相应的处理插件置入到数据处理工作流程,针对此类模式主要支撑以下应用场景:
15)时间类型的转换;
16)码表映射;
17)记录拆分;
18)字符集转换
(4)库外数据转换
基于库外计算进行数据转换操作,需要借助Hadoop、流式计算引擎等海量数据计算处理平台来完成,借助并行计算处理能力来满足复杂数据转换来进行。
主要支撑以下业务应用场景:
1)多字段的混合运算。
2)过滤、去重、清洗。
3)复杂条件过滤。
4)排序、统计、合并计算、行列变换等。
2.数据加工
数据加工是指对采集数据库和基础数据库中的数据进行加工,汇总到综合指标数据库,并在此基础上进一步挖掘分析,按照主题逻辑设计和转换规则设计,形成主题数据库的过程。
如下图所示,包含了主题加工流程管理、数据加工设计、数据加工实现。
建议采用成熟的ETL工具实现数据加工的过程。
在实现数据加工活动时,定义数据加工相关的元数据并将元数据存储于元数据库中,与基于数据仓库的其他应用元数据统一进行管理和使用。
数据加工元数据主要可分为:
对象描述元数据和运行管理元数据。
对象描述元数据用于描述主题派生分组、主题派生指标、主题转换规则、流程定义等信息。
运行管理元数据用于描述流程执行记录等操作信息。
3.数据加载
数据加载主要指将采集与清洗转换的数据,准确、及时地存储到不同目标库中(如:
RDBMS、MPP、Hadoop等)中,依据数据的加载方式包括文件加载、流加载、压缩加载、不落地加载等。
依据数据加载技术特点,可分为全量数据加载、流式(实时)数据加载、文件落地双加载、内存不落地加载。
对于不同的数据库加载、不同的方式加载,在数据加载过程的工作原理基本相同,数据加载能力要求包含:
1)默认情况下提供基础通用的加载控件,支持将数据源加载到不同的数据库中,加载的数据支持接口、文件加载策略或流式策略。
2)加载方式支持全量或实时方式,全量加载方式则采用落地加载策略,并且需要结合运用不同平台的加载工具;实时加载与实时采集必须配套使用,二者之间共享内存实现同步数据交换,通过引入插件机制来屏敝不同数据源差异性。
3)支持加载时事物提交的参数配置,允许设定数据文件相关输入路径与加载文件匹配规则等信息,由数据装载完成发现文件、文件获取、加载数据、数据校验等操作流程后完成数据入库操作。
4)在加载实现过程中支持提供SQL、HQL、SHELL等不同类别的行为定义脚本,数据加载执行组件将根据定义行为脚本类型调起相应的脚本执行来加载到数据。
5)数据加载结束或失败时,都需要记录操作日志,为后续数据稽核与问题排查提供详细信息。
6)在加载触发模式上支持自动加载与手工执行的二大类型。
支持数据自动加载的设计与执行,当数据加载出错时,应提供操作界面以人工干预的方式来重新启动数据的接收和加载。
(1)全量数据加载
全量加载是将数据一次性加载到接口机上,是准实时加载,主要应对数据加载数据源以较大文件形式对外提供数据时可采用此种采集模式,全量数据加载取具备多协议数据加载和并发加载控制两种能力,多协议数据加载提供了文件和数据库等多种目标数据库进行加载,包括支持:
高性能关系型数据仓库、MPP分布式数据仓库、HDFS等,接口协议可以根据需要随时添加;并发加载控制是运用大规模并行计算多个加载任务发布到集群中并行处理,可控制并发数和任务优先级。
(2)流式(实时)数据加载
流式数据加载主要应对海量数据,采用流式计算方法进行高性能的实时计算实时加载。
(3)文件落地双加载
包括文件从接口机到ETL服务器不同的传输方式;管道、FTP传输、CFS传输等传输方式;双进程异步方式读取接口文件多节点/多分区加载到双库,两个进程互不影响。
(4)内存不落地加载
不落地实时加载主要是采用分布式内存数据计算,以多进程管道方式并行读取不同的接口文件,每个接口文件以KEY
(5)数据加载过程控制
数据装载过程中,针对数据加载中断或者出错,支持采用断点续传、一致性保障等方法进行过程控制,避免重新启动数据的接收和加载。
数据装载过程控制主要包括如下功能:
1)断点续传:
由于网络中断或者其他原因造成传输中断,提供断点续传功能,在下次传输时能够接着前面的传输进度继续进行,节省时间,提高速度。
2)一致性保障:
支持两阶段提交,提供访问的多种数据源发起两阶段提交任务,两阶段提交可以保证在多个数据源上执行的任务包含在一个事务中,当一个数据源加载失败时,其他数据源可做数据回滚,确保多个数据源的数据保持一致。
4.数据校验
数据校验包括数据采集、数据加载、数据分发等过程中数据校验。
在数据采集过程中通过对数据源与目标数据库之间的数据进行对比分析,从而进一步来分析、发现与解决在数据抽取过程可能产生的异常错误信息。
数据校验包含以下能力:
数据校验能力
序号
功能
功能描述
1
数据校验记录文件获取与信息解析
支持对数据抽取过程中记录的文件进行获取,并对信息记录进行解析提取,为后续分析提供输入数据;
2
提供丰富的数据校验手段
支持数据文件级校验;
支持数据文件分隔符校验;
支持记录级校验;包括但不限于:
格式校验、类型校验、取值范围校验、长度校验、非空校验、字段关系校验、异常值校验、按照用户定义的逻辑规则校验等。
3
提供灵活的数据校验规则设置
支持对数据校验规则进行灵活定义,可以自定义数据校验规则结构;
提供图形化数据校验规则设置功能,允许对校验规则进行维护、优化等处理。
4
依托数据校验提供全面的数据质量监控管理
能够根据设置的数据校验与监控规则或算法,对需要进行校验的数据进行采集后执行相应校验检查,并依据稽核和检查过程中发现的数据质量异常情况进行告警过程。
数据校验从校验对象细粒度维度分析,支持文件级校验与记录级校验二大类。
数据校验模块还内置了部分的数据检查功能,如数据唯一性检查、外键完整性检查。
数据校验内容有类型,长度,是否为空,精度,范围,格式等信息。
如果数据不符合,会进行过滤,只有正确的数据才能继续使用。
对于错误的数据,可以进行输出,包括错误原因和错误字段序号等信息。
相关的错误类型和数量等统计信息也会绑定到流程变量中,以便后续节点进行判断使用。
5.异常处理
在数据整合过程中会出现不同种类的异常现象,如:
数据节点异常、数据清洗转换异常、数据加载异常等,系统通过异常处理机制来保障系统的稳定性。
(1)计算节点异常
针对数据计算节点异常,如:
作业过程采用分布式多节点并发作业来提升系统处理速度,在作业过程中某个节点失效会导致作业中断或挂起现象,处理机制如下:
1)Agent节点与Master节点通过Heartbeat进行状态通信,使Master第一时间掌握节点状态。
2)Agent节点所有Task皆由Master分发,并周期性向Master汇报每个Task执行状态。
3)当Agent1节点出现异常,将由Master重新将Task分发到其它节点重新运行。
(2)数据清洗转换异常
针对数据清洗转换:
支持校验点,当外部数据记录特别庞大时,如果因为某种原因发生故障中断后,可以从最近的校验点开始恢复处理。
(3)数据加载异常
针对数据装载过程中异常:
支持异常自动重试、超时重试、将任务转移到其它节点执行、任务挂起等待人工介入等异常处理机制,执行器数据转载支持分布式数据转载,在单一节点数据转载异常情况下,可实现将转载工作转发到其它节点重新执行。
在任务内数据装载,采用双向加载线程同时检查、汇报机制,只有最终状态一致,工作任务才宣告完成,否则将进行重试等操作。
6.数据标准化
对清洗后的数据进行标准化处理,以解决系统之间数据差异问题,解决跨部门数据调用时数据一致问题。
通过技术工具实现标准化数据处理,是对政府数据交换共享标准规范体系的有效执行,也是沟通业务和IT一致理解、有机融合的关键。
标准化处理过程包括标准的执行、标准的控制、标准执行和稽核,以及标准化问题的管理。
四、数据质量管理子系统
1.数据质量
(1)质量规则管理
1)质量规则配置
依据质量需求,灵活配置质量规则。
如开发质量规则(如命名不规范、不必要的跨层数据访问、不合理的大表关联操作)、数据波动规则(接口/指标数据同环比)。
2)质量规则自动优化
根据历史运行信息,自动给出调整监控算法、阀值、优先级建议,使得规则更合理。
(2)质量规则执行
依据质量规则执行的时机需求,配置执行方式,依据执行规则,管控平台自动执行质量规则检查。
质量规则执行触发方式支撑按固定时间周期(如月、周、日)、事件触发等执行方式。
(3)数据质量监控
依据质量检查规则对数据质量进行监控,如接口波动率的监控,如果发现异常现象可及时告知或预警相关人员
可参考检查方法列表
数据质量检查方法
检查方法
检查描述
适用场景
数值检查
指标数值与阈值上下限的比较,阈值可以手工录入经验值或采用n个周期内指标的最大最小值作为阈值的上下限,需要考虑周末和节假日对指标的影响等
主要适用变化趋势平稳的业务关键指标
波动检查
波动检查包括同比波动检查和环比波动检查,先计算指标的同比或环比波动率,然后与预定的波动率上下限(阈值)进行比较,阈值可以手工录入经验值或采用n个周期内指标的最大最小值作为阈值的上下限,需要考虑周末和节假日对指标的影响等
如业务发展类指标、用户数类指标等
平衡性检查
通过对若干个指标值的简单四则运算(加、减、乘、除),来检验各个指标间潜在的平衡或其他比较关系
需要进行相关性检查的指标,如日指标汇总与月指标的平衡检查
加权波动检查
通过对单个指标的基础检查结果和影响因素的加权计算分析,综合检查指标的波动和变化情况
关联性检查
定义相关性指标,和指标相关系数,如正强相关,负相关,定义两个指标当前值是否满足相关性的特点
主要用于考察多个指标之间的逻辑关系是否符合规律,如量收匹配的问题
一致性检查
计算一个指标在不同的采集计算点的值是否一致
在仓库底层的值,在应用汇总表值,在前台应用1,应用2中的值是否一致
值域评判
直接对某个值进行评判或是否在允许的取值范围内容进行评判
(4)质量问题管理
统一收集数据质量问题、形成数据质量知识库,提升数据质量问题解决效率。
(5)质量评估报告
依据质量检查评估规则对数据质量进行评估,形成数据质量评估报告,定期对评估报告进行分析得出优化建议,并付诸优化动作,持续改进数据质量。
2.数据评估
(1)数据使用评估
对数据及应用使用情况进行评估,并据此数据存储、处理、应用进行优化。
以下为数据评估示例:
数据评估方法
科目
分摊方法
数据评估
前台应用使用次数
应用的点击次数平均分摊给应用链路上的所有表
分发给外部系统接口数据
(分发给外部表,平均分摊给分发接口表链路上的所有表)*加权系数
采集外部系统数据
(采集外部表,平均分摊给采集接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 融合 平台 建设 方案