世纪怡嘉ETL管理软件V1.0方案
数仓建设方案
1总体框架
1.2 ETL处理
针对各个应用系统中的客户信息,在进行数据的过程中定义完善的清洗与合并规则,对客户信息进行抽取、转换和加载等清洗程序,对客户数据进行归并和唯一性识别,制定数据覆盖规则,数据更新处理规则,并且对客户历史信息操作轨迹保留功能,建立客户信息模型和客户统一视图,保证模型的性能、扩展性和其他应用系统的集成性。
通过建立客户视图来保存客户基本信息、客户联系信息和客户概貌信息,体现客户与前海财险之间的各项业务活动、及客户之间的因活动形成的相互关系。
在进行ETL处理的时候,首先对客户数据进行客户数据归集与关联集成、数据梳理与转换和数据质量清洗几方面的处理来完成ETL的处理过程。
1.3 数据归集与关联集成
在进行数据归集和关联集成的时候,搭建ETL数据集成管理平台,通过该平台对各种数据源进行数据集成和管理,可面向传统数据及大数据环境。
同时,该平台能够实现大数据集成和非结构化数据处理,提供数据集成过程中的数据探索归集与关联集成服务。在作业设计、任务调度及数据处理过程中,通过内嵌多种数据处理引擎、采用流式数据处理技术以及软件的轻量级实现,极大的提高了数据处理的效率以及作业设计维护上的易用性。
1.4 数据集成管理
ETL作为梳理客户数据的一个重要环节,负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
1.5. 数据抽取
数据抽取是从源数据源抽取到目的数据源系统需要的数据,将分布的、异构数据源中的数据如关系数据、平面数据文件、EXCEL文件、XML文件抽取到中间层的过程。因此,抽取方式主要分为六种:抽取EXCEL、抽取平面文件、抽取数据库、抽取 HDFS、抽取 XML、抽取Hive。
另外,在数据抽取基础上,用户可以根据业务需求,自定义一些特定的变量或者常量,可通过“抽取-自定义数据”节点来实现。
其中,抽取EXCEL、抽取 XML两个文件节点均支持VFS文件系统(本地文件、FTP、SFTP、ZIP/JAR、HTTP、HTTPS、HDFS)访问文件,并且支持正则表达式和变量匹配多文件。
抽取平面文件支持VFS文件系统(本地文件、FTP、SFTP、ZIP/JAR、HTTP、HTTPS)访问文件,并且支持正则表达式和变量匹配多文件。
抽取 HDFS节点支持VFS文件系统(HDFS)访问文件,并且支持正则表达式和变量匹配多文件。
1)抽取EXCEL
数据源是EXCEL文档形式,可通过“抽取EXCEL”实现数据抽取。
2)抽取平面文件
数据源是平面文件形式,可通过“抽取平面文件”实现数据抽取。
3)抽取数据库
数据源是数据库(oracle、db2、sqlserver、postgre、MySQL、Sybase等),可通过“抽取数据库”实现数据抽取。
4)抽取HDFS
主要用于抽取HDFS文件系统中的文件。
5)抽取XML
数据源是XML文件形式,可通过“抽取XML”实现数据抽取。
6)自定义数据
用户自行创建数据的字段名称,数据类型,长度和精度的属性,并且为每个字段添加数据,方便用户进行其它的操作。
7)抽取HIVE
主要用于抽取存储在 Hadoop 服务器中大数据量的数据。
8)抽取 URL
将FTP远程文件抽取到本地进行数据流的操作。
1.6 数据质量
主要是指通过“智能模糊匹配”、“人工模糊匹配”或者“精确匹配”,找出数据中重复的记录来提高数据质量。
1)智能模糊匹配
智能模糊匹配是处理在一个数据集里找出表示相同实体的记录,数据集里的数据可能来自不同的数据源。
其有两个最基本的应用:一是去重,即在同一个文件里找出重复的记录;二是用在数据融合,即在两个文件里识别出重复的记录。
2)人工模糊匹配
人工模糊匹配的匹配标准是由手工输入的。匹配标准由一个规则集组成,每条规则又由多个规则项(规则项数目介于1到字段个数之间)组成。其匹配方式如下:
1、记录对只要满足规则集中的一条规则,就认为该记录对匹配;
2、记录对只有满足规则里的所有规则项,才认为记录对满足该规则。
3)精确匹配
精确匹配是通过实体的唯一性属性(比如:数据库里表的主键)识别出完全相同的实体。
1. 7数据转换
数据转换:将从源数据源获取的数据按照业务需求,转换成目的数据源要求的形式,并对错误、不一致的数据进行清洗和加工。
数据清洗任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是否过滤掉还是由业务单位修正之后再进行抽取。不符合要求的数据主要是有不完整的数据、错误的数据、重复的数据三大类。
数据转换任务主要进行不一致的数据转换、数据粒度的转换、一些商务规则的计算。
数据转换主要包括:取样、字段处理、排序、聚合、记录合并、记录比对、记录过滤、连接、自定义SQL、序列生成、流文件转换。
1.8 数据装载
数据装载时将转换和加工后的数据装载到目的库中通常是ETL过程的最后步骤。装载数据的最佳方法取决于所执行操作的类型以及需要装入多少数据。一般来说,有四种装载方式:装载EXCEL、装载平面文件、装载数据库、装载缓存入库、转载HDFS。
其中,装载平面文件节点支持VFS文件系统(本地文件、FTP、SFTP)进行文件装载。
装载 HDFS节点支持VFS文件系统(HDFS)进行文件装载、装载 Hive节点支持VFS文件系统(HDFS)进行文件装载。
1)装载EXCEL
将处理过的数据装载进Excel表进行结果保存。
2)装载平面文件
将处理过的数据装载进平面文件进行结果保存。
3)装载数据库
将处理过的数据装载进数据库中的数据表进行结果保存。
4)装载HDFS
将数据装载到HDFS文件系统。
5)装载HIVE
主要用于将大数据量的数据装载进Hadoop服务器中。
6)空节点
主要用于代替数据流中的装载节点对数据流中的非装载节点进行调试。
2.3 ETL操作
2.1 权限控制
在进行ETL数据操作的时候,根据操作系统人员的不同职位,设定相应的操作权限,提供数据操作权限管理,以此达到权限的集中管理,根据不同用户角色实现对不同服务类型的控制。
实现平台的基础管理和维护功能,包括用户管理、权限管理、安全管理、日志管理和系统配置。
1. 用户管理
实现用户和角色的增删改查等维护操作的管控,用户和角色是一对一的关联关系。
2. 权限管理
通过建立角色与功能的一对多的关联,实现用户的访问权限管理。用户只能操作与对应角色关联的功能。
3. 日志管理
支持对日志记录级别、存放路径、文件大小和存储方式的定义。
4. 系统配置
实现对系统的部署参数和运行参数的配置管理,如部署机器IP、端口、预置内存大小、JRE路径、运行路径等。
2.2 规则配置管理
根据企业级不同应用系统的特定功能,综合考虑各方面的业务情况,制定尽可能符合所有应用系统的清洗规则、匹配规则、分割规则、合并规则、更新规则的配置功能。
ETL在操作过程中利用自动化地字典规则、函数依赖规则、值域规则(连续、枚举、正则表达式规则)剖析算法获取数据规则,在数据整合前或后应用数据规则对数据质量进行检查,并可将质量检测节点融合到ETL流程中,及时发现质量问题并根据控制策略自动调整ETL流程,能够避免因数据质量问题浪费有限的资源或时间。
2.3 数据管理
系统提供数据管理界面给系统管理和业务管理的相关人员,使得特定具有相关权限的人员,可以登录并对客户数据进行维护(查询、新增、修改、删除),实现人工增加用户,人工修改客户信息等功能。包括用户访问安全、数据存储和传输安全。通过身份校验识别用户,以保证得到合理授权的用户才可以访问对应的资源。数据存储和传输安全需要考虑关键敏感数据(如用户密码、元数据库连接信息等关键系统配置参数、身份校验信息等)的加密存储和传输。
提供数据审核功能,针对人工数据合并、合并客户拆分、人工数据修改和新增进行审核,加强客户信息的准确性。
建立数据质量防火墙机制,实际就是对数据质量的提前防范措施。
1)数据采集录入关。数据在入库之前严格按照规则,首先要符合一般数据规则,同时还要符合数据监测规则以及数据业务规则,切实把好数据入库第一关。
2)数据审核关。严格按照数据审核的机制来对数据进行审核,只有通过审核的数据才算合格数据。
3)数据检查关。为确保数据的可靠性,在前面两步的基础上,还要加强数据检查。将数据问题尽可能降低,才能保证数据使用的准确。
运用了操作系统AIX 6.1IBM Systems: Power,硬件与软件支持服务,IBM Information Management、 Information Management、DB2 Universal Database for Linux, IBM System Storage DS8000 系列 DS8100 。