谈谈数据建模和设计成功的三大能力
数据建模可以帮助标准化组织定义和描述其数据的方式,健全的数据模型能够加速数据目录的实施和数据质量计划的启动。根据数据建模经验,我们探讨组织如何通过关注三个关键子功能来增强其数据建模能力:元建模、概念和逻辑数据建模以及物理数据建模。对于每项子功能,它将描述高度成熟度是什么样子,并将以整体最佳实践和成功因素作为结尾。
一 数据建模的三个能力
让我们从数据建模的基本组件开始:
元建模——元建模是数据建模的一项子功能,涉及创建定义其他模型的结构、概念和关系的模型。元模型提供了一种定义和描述模型及其组件的标准化方法,这有助于确保这些模型的开发和使用的一致性和清晰度。元模型涵盖概念、逻辑和物理模型,并定义各个组件如何一致地链接在一起。
概念和逻辑数据建模——概念和逻辑数据建模是数据建模的子功能,包括创建面向业务的数据视图,捕获特定领域(例如客户、员工和产品)涉及的主要实体、关系和属性。逻辑数据建模通过添加更多细节(例如指定数据类型、键和实体之间的关系)以及将概念域分解为逻辑属性(例如客户名称、员工名称和产品 SKU)来细化概念模型。
概念模型在最高层次上解释了各自的领域或概念是什么,以及它们之间的关系。在以上示例中,可以看到交易形成了一个关键概念,其中每笔交易都可以链接到已售产品、购买产品的客户、付款方式以及购买所在的商店。其中每一项构成了自己的概念。此外,关系显示每个单独的交易最多可以有一个与之关联的客户、商店或员工,但这些反过来又可以与许多交易相关联。
在逻辑模型中,概念或域被分解为逻辑属性。这样的逻辑模型与底层元模型一致,现在可以转换为物理模型,其中添加了有关这些数据属性存在的确切位置,例如,在什么表中以及以什么格式存在的详细信息。
在物理模型中,进一步的技术细节被添加到逻辑模型中,例如澄清表名称、列名称和数据类型。
二 数据建模需要考虑的内容
数据建模的高度成熟需要考虑几个维度:
策略——组织的整体数据建模策略,包括数据建模工作与业务目标的一致性。
人员——明确特定角色及其职责,以及所需的专业知识、技能和培训。
流程——流程和工作流程,包括数据建模方法的文档、数据建模模板和标准的开发以及质量控制和审核流程的建立。
技术——支持数据建模工作所需的工具,例如数据建模软件和工具,以及数据建模工具与其他系统和应用程序的集成。
应用——在组织内部和整个组织内应用和使用数据建模实践。这可能包括应用计划、解决应用障碍以及衡量数据建模工作的有效性和影响的跟踪指标。
让我们将其应用到三个子能力中。
元模型
元建模的高度成熟是拥有一个定义明确且广泛采用的元模型,并在整个组织中一致使用。为了确认需要一个,而且只需要一个。如果没有适当的元模型(比方说,通用语言的基本语法和词汇),各种数据模型可能会涌现,导致跨领域、流程和系统的可解释性和互操作性问题。
需要了解元模型并且能够维护和解释元模型的人。建议由一个人对元模型拥有最终权力。他可以接受反馈并收集变更请求,以确保其符合并保持符合目的。
定义的过程应该描述如何在建模活动中使用元模型。它的采用应该在数据建模者、数据架构师和数据工程师中广泛采用。
数据目录或元数据管理系统等工具可以提供用于存储和管理元模型的集中存储库,并且可以支持协作和版本控制。
概念和逻辑数据建模
高成熟度是对概念和逻辑数据建模采用定义明确且一致的方法,并严格遵守元模型。概念域应该有一个所有者,并且应该有一个结构化的过程来创建新的逻辑属性,然后对其进行审查、批准和发布。
对域和逻辑属性进行建模是一项技能,而且是一项罕见的技能。它既需要核心数据建模专业知识,又需要能够将其映射到现实业务领域,以对业务和技术组织都有意义的逻辑属性进行描述。
概念数据模型应该明确与企业或业务架构保持一致,并与分配数据所有权的数据域保持一致。
数据建模软件可用于大规模创建和维护概念和逻辑数据模型。这些工具可以提供模型的可视化表示,并且可以支持协作、版本控制以及与其他系统(例如数据目录或元数据管理系统)的集成。业务术语表可用于定义和标准化模型中使用的业务概念和术语。
物理数据建模
物理数据建模的高成熟度级别通常包括拥有精心设计且高效的数据库模式,以满足适用的性能和可扩展性要求。这需要拥有能够设计和实现模式的人员、定义明确的模式开发和维护流程以及支持模式设计和实现的适当技术工具。
数据库设计软件可用于创建和维护物理数据模型。这些工具可以从逻辑数据模型生成数据库模式,并且可以支持协作、版本控制以及与其他系统(例如数据目录或元数据管理系统)的集成。数据字典还可用于定义和标准化技术细节,例如数据类型、约束和其他数据库对象。
三 最佳实践和成功因素
为了增强数据建模能力,组织可以遵循一些最佳实践和成功因素:
首先获得正确的元模型。元模型驱动整个企业的可重用性和一致性。它确保所有后续建模工作逐步构建整体模型。如果这些没有到位,那么面临一项艰巨的任务,即在未来调整和桥接现有的、不兼容的模型。
考虑预制的工业或通用模型。根据所处的阶段,可以考虑采用预先存在的数据模型。这可以推动与国际最佳实践和标准的一致,节省从头开始构建模型的时间和精力,并实现与外部各方高效、可靠的数据交换。例如,BIAN提供了标准化的银行服务参考模型,为银行业定义了通用语言、分类法和业务流程框架。
在概念、逻辑和物理之间进行迭代。数据建模需要时间,这项工作永远无法完成。建议对域进行优先级排序(客户和产品等参考域是很好的候选域),并从 1 或 2 开始,在进入下一个域之前,首先完成逻辑模型,然后是物理模型的指南。
不要过于复杂。数据建模可能很复杂、耗时,因此成本高昂。完成基本的概念和逻辑模型几乎总是绝对值得付出努力,但一旦进入物理领域,可能不需要集中指导和捕获所有物理模型。可能还想在这里确定优先级,例如,确定“关键任务”系统并记录这些系统的物理模型,但对于其他系统,确保本地应用程序所有者遵守特定的建模规范和标准可能就足够了。
战略性地实施技术。它们可能很昂贵,并且可能不需要它们用于第一个域,但最终数据模型的大小和复杂性将呈指数级增长。考虑数据目录、业务术语表和数据字典,或者可以充当所有这些的东西。没有它,数据价值创造将会很差。
四 小结
数据建模是一项关键能力,可帮助组织确保其数据设计良好、一致且有效支持业务需求。通过专注于元建模、概念和逻辑数据建模以及物理数据建模等子能力,组织可以提高其成熟度,并使业务用户和数据科学家能够始终如一地为各自的用例找到正确的数据。
往期推荐