1. 前言 数据集成包含了ETL、主数据管理、数据质量监控、元数据管理、数据生命周期管理等多个不同的功能模块(图1)。在前面两篇公众号中主要介绍了ETL的流程和技术架构,并给出了基于元数据驱动的分布式ETL架构。本文将基于个人理解对主数据和主数据管理系统的基本概念进行简要介绍,供大家参考 2. 主数据的概念 说到数据分类,很多人都会被主数据(Master Data)、元数据(Meta Data)、引用数据(Reference Data)、事务数据(Transaction Data)等概念弄糊涂,为了更好的说明这些数据的差异,本文引用Information Management网站中的一张图[1]并结合电信行业的实际数据进行说明: 图2 数据模型分类
经过上面的介绍,我们可以得到对于主数据更为准确的定义:主数据是用来描述企业核心业务实体的数据,这些信息具有高业务价值的、可以在企业内部跨越不同的部门被重复使用,并且存在于多个异构的应用系统或平台中。进一步的,主数据特点归纳如下:
以电信行业为例,用户、小区、基站等实体都是业务系统中的关键数据,在不同的系统中共享(O域运维、B域计费、M域管理),且本身不会发生频繁的数据变化,所以可以归纳为主数据的范畴。下面以用户主数据模型为例进行介绍,内容可以分为五部分:
基于这样的用户主数据模型,我们可以实现用户感知、用户画像、终端分析、用户\终端\网络联合分析等多个应用专题的BI分析。 3. 主数据管理(Master Data Management) 由于主数据存在于不同的管理系统中,如果一个BI系统需要基于某类主数据实现上层业务分析时,就需要实现对不同业务系统的访问,也相应会带来很多问题:1)系统间数据编码不一致(例如上一节中提到对用户编码不一致);2)数据不同步,缺乏一致性; 3)需要实现与不同系统的对接,实现难度和工作量随系统数量提升;4)不同的BI系统都需要接入同一个业务系统,也对业务系统本身带来压力。 图3 无主数据管理时对主数据的访问 所以我们需要通过从各个操作/事务型应用以及分析型系统中分离出主数据的相关信息,创建并维护整个企业内主数据的单一视图(SingleView),这样上层的BI系统只需要访问这个单一视图,而非各个业务系统。同样单一视图更方便的提供准确性、一致性以及完整性,从而保证了数据质量,并提高了业务的响应速度。
在具体实现上,主数据管理与数据仓库类似,都是构建于ETL或者EII(EnterpriseInformation Integration)等技术之上,也包含了数据抽取、数据加载、数据转换、数据质量管理、数据复制和数据同步等功能。所以企业数据集成系统发展前期,如果没有足够的资金单独实现一个主数据管理平台,也可以将部分主数据功能通过数据仓库中实现。 4. 小结 在本文中,我们简要介绍了主数据和主数据管理的概念,并以电信行业的用户主数据模型为例进行了说明。需要特别说明的是,以目前现有的大数据处理技术和架构,对于主数据管理平台的实现本身,并没有太大的技术难点,IBM、SAP、Oracle等各大厂商也提供了成熟的解决方案。但是在项目的具体实践中,主数据信息的标准化(信息代码标准化、主数据编码标准化、维护体系标准化等)和管理流程的规范化将决定主数据的准确性,有效性和一致性,也是主数据管理能否充分发挥作用的关键。 参考资料链接: [1] Master Data versus Reference Data, MALCOLM CHISHOLM,http://www./issues/20060401/1051002-1.html [2] 数据集成之主数据管理 , http://blog.csdn.net/woohooli/article/details/3726040 [3]主数据管理和实施,IBM, http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0904loulj [4] 基于全生命周期的主数据管理——MDM详解与实践,赵飞, 清华大学出版社 |
|