新闻资讯

数据模型与数据治理(二)

之二企业数据建模


1970年Dr. Edgar F.Codd 发表《A Relational Model of Data for Large SharedData Banks 》提出了数据库关系模型基础理论,1976年Peter Chen发表《The Entity-RelationshipModel-Toward a Unified View of Data 》, ER模型使关系模型表达可视化。四十多年来,数据建模一直是理解复杂业务与数据,设计和部署具有高质量数据的关系数据库与支持应用开发的敏捷的、正确的、可靠的最佳方法。数据模型和建模行为具有组织的内在价值,让人们真正理解数据试图表达的信息,降低复杂性,降低与数据相关的风险,降低数据管理成本(数据建模也使得系统改造升级换代低成本、低风险),提高组织整体数据能力。

数据建模不仅仅用于设计数据库生产数据,还可以用于治理数据。虽然数据建模作为一门学科比数据治理要成熟得多,但数据建模的价值和对整个业务的影响范围仍然在较小的团队范围。在企业数据模型开发过程中,确定数据模型的定义与数据质量(是数据治理需要设置与执行的标准),发现需要治理与保护的关键数据,识别需要治理的问题,在新的设计中避免或减少类似的问题发生。安全、可信和透明的建模过程确保把良好的数据治理政策和规程构建在数据模型中,在模型中定义安全因素,可以预期潜在的安全问题。数据建模过程,遵循良好的数据治理政策和规程,可以提升数据建模中数据整合效率(如组织制定决策,所有客户数据的应用均以ECIF数据为准—决定数据源的选择与数据流,做出这样的决策依据—一方面来自组织的应用架构,另一方面还依赖广泛的建模信息调研结果以及对ECIF的治理建议)。

数据建模与数据治理在组织中哪个先出现?如果组织中先有数据治理而没有建模,则有大量数据问题需要治理,数据治理工作将不会有很高的效率,要付出很大的代价。如果先有数据建模,数据从其生命的产生开始即得到有序的管理,治理工作则容易得多。对于没有模型的数据的治理,问题多,改进难,见效慢,从无到有,从乱到治要付出很大的代价。

 

正是因为数据建模的缺失,更迫切需要数据治理。即使一个小的业务处理系统的建模设计,也可以减少或避免数据质量问题的产生,减少未来数据治理的代价。企业级的数据建模,可以带来更多的价值。数据治理通过实际的企业建模过程更能产生效果,提高数据治理工作的有效性。

没有源模型的源数据,可以测量的数据质量维度有限—主要是值域完整性。数据质量的问题,不应仅限于物理值域的检查,更关键更高级的质量维度还包括实体完整性、参照完整性等,只有把数据集中集成到一起,建立起数据关系—比如开发数据仓库数据模型,才能全面检验与发现这些质量方面的问题,使问题无处可藏。

设计企业级数据仓库逻辑模型时,一般基于成熟的行业数据模型,跳过主题模型与概念模型,经过信息探索直接到逻辑模型设计。


信息探索阶段

了解数据及其元数据对于数据治理、企业数据建模、数据仓库、商务智能分析等应用开发工作以及任何数据的移动工作都是至关重要的第一步。信息探索是对组织各业务源系统进行探索,识别其数据结构、业务含义、数据关系、数据流等的过程,使源数据能够转化为可用的信息。在业务源系统没有提供元数据的情况下,信息探索过程是一个提出假设再验证或推翻的实验过程。

•        探索、揭露不同数据元素的含义及其之间的联系。由于源系统很少提供源模型,在信息探索阶段,数据模型师作为数据考古学家必须深入穿透纷乱复杂的数据表象,过滤掉噪音,识别可能有价值的数据。

•        可视化业务源数据的源模型。因为建立了数据关系,可以更好地理解数据,更容易发现数据质量问题。源数据建模还有助于将源模型与现实世界进行比较,发现差异。

•        探索、验证跨系统的数据关系。建模思维提供了跨系统进行分析与标准化的能力,使数据的探索验证拓展到特定系统之外,把组织各业务系统通过数据与数据流(主要是主数据)建立关系串联起来-进行跨系统关联,验证跨系统的数据关系与数据流。

•        形成数据分布CRUD图,识别有用的关键数据,进一步确定黄金数据。发现与确定什么是以及为什么是关键数据,数据治理的目的是保护和管理这些关键数据。如果不知道要管理的数据是什么、数据的含义以及为什么对组织重要时,就不可能很好地保护和管理数据。

•        识别出冗余数据,区别垃圾数据,确定需要治理的问题。建模思维很容易发现业务系统应用架构、数据架构在主数据、数据流等各方面存在的问题。跨系统的数据问题-数据的不一致与缺失等,在大型数据建模中更容易被发现。

以上这些工作,本质都是数据治理工作的必须内容,其输出,都可以用于数据治理。数据仓库建模过程中的信息探索,实际是对数据资产进行盘点的过程,在盘点过程中,对数据资产进行分类,可能会发现大量的垃圾资产需要治理。

错误理解的数据或不完整的数据都可能造成恶劣的影响,使组织的企业数据模型的创建和维护显得尤为重要,是真正有益的工作。


模型设计阶段

数据建模可以做得很好,或者做得不够好。可能很轻率随意—未来需要治理,也可能很专业负责,精准设计—为企业提供黄金数据。一些模型设计者在数据建模过程中融入了数据管理思维,经过深思熟虑并验证了数据(定义、规则等),从而使数据的生产和使用具有无限的价值。

•        数据模型师与业务人员等一起定义数据模型。捕获业务如何描述和使用数据,创建和集成统一、共享的业务元数据,建立数据关系—为数据的使用提供上下文。在定义过程中及时记录不一致的数据,丰富、增强和加速数据智能和治理工作。

•        构建敏捷和可管理的数据架构。创建并实施通用数据设计标准,严格按照范式建模设计模式,进行适当的抽象,使设计任务标准化,改善业务一致性并简化数据整合。因为采用范式设计,必然会发现源系统很多因冗余造成的不一致性问题。采用范式与抽象思维设计稳定的数据模型,使模型收敛而不发散。采用维度模式设计模型可能会掩盖问题,不但不能发现问题,甚至可能产生新的问题。

•        可视化数据模型,为数据使用提供元数据,为业务与技术提供交互的接口,验证数据模型设计的准确性与完整性。

•        部署准确的高质量数据源。根据信息探索的结果,确定准确权威的数据源映射模型,执行完整的数据模型设计任务,确保数据完整性。

•        控制整个企业中数据的设计和部署,管理数据的设计和维护生命周期。控制并确保权威数据在下游得到全面的使用,不使垃圾数据流转泛滥。

•        从合规到商务智能应用,数据建模可保持自动回溯到源数据,提供准确的血缘。

•        数据仓库提供了集成的数据质量检查环境,基于数据模型进行全维度质量检查,把问题提交给治理团队安排治理,推动上游业务系统治理,在源头产生高质量的数据。

 

一定程度上企业级的数据建模就是数据治理,当然数据治理不完全是数据建模。

•        数据治理是对数据资产管理行使权威与控制,可以将数据建模视为对数据定义的权威与控制的执行和实施。企业数据建模的原则(在“正确的”时间,由“正确的”人员为组织定义“正确的”数据,数据仓库确保唯一正确的数据放在唯一正确的地方),必须要有规范/准则来确保数据设计符合其需要,这些规范由数据治理委员会委托相关职能团队设计并批准发布。创建数据模型的原因很多,一个主要原因是要为组织定义并灌输数据规范/准则。

•        数据管理职责描述数据管理岗位管理数据和流程的职责和责任, 确保有效控制和使用数据资产。数据管理专员职责的主要活动包括创建和管理核心元数据、记录规则和标准、管理数据质量问题、执行数据治理运营活动,企业数据建模活动实际包含了这些活动。企业级数据建模需要业务职能领域和 IT 组织协同工作,与数据建模人员一起工作提供信息并协助数据建模的人员一直在扮演数据管理专员角色,企业数据建模中的各类人员,覆盖了数据治理主要角色。

•        企业数据建模与数据治理工作存在很多交叉重叠的工作,特别是(为准备数据整合的)数据剖析与分析的大量工作,也是数据治理工作必须完成的任务。建模过程各阶段的输出,可以作为数据治理的问题输入,反之亦然,数据治理为数据建模的数据集成与整合提供决策输入。

•        企业数据建模与数据治理都希望在整个信息生态系统中的人员、流程和系统中定义和开发“正确的”数据行为,这是大多数组织的努力愿景。

 

在正式的数据治理组织建立之前,企业级数据仓库的模型建设实际上发挥了数据治理的作用,是数据治理的实践,主要区别在于数据的治理工作没有得到很好的效果,因为没有相关的组织、政策与制度等权威。数据建模不会直接导致数据受到治理,数据仓库的建设,有些主要由IT部门发起,业务仅是从数据应用的角度参与,数据问题没有相应的”司法“途径得到解决,某些数据仓库项目的失败原因正是由于缺少数据治理支持。

与单独进行不同的工作相比,企业数据建模与数据治理联合起来更好,更有效—开发和维护企业数据模型可以帮助数据治理工作的成功。


推荐阅读 查看更多