工业数据分析 | 范式建模和维度建模,你pick谁?
来源: | 作者:pmod6d781 | 发布时间: 2022-03-04 | 701 次浏览 | 分享到:


3)数据分析从单点到全面转换。工业数据分析在企业中的应用逐渐广泛,其价值开始体现,越来越多的企业从单点应用开始考虑有规模、有计划的建设数据分析能力,这就需要一个能够持续积累数据资源的数据底座,使得数据仓库能够在多个数据分析课题中得到复用,减少重复建设浪费。


数据仓库建模体系

数据仓库从产生到今日,其建模体系和思路是不断发展的。本文我们着重探讨其中两种最为基础和常用的建模体系:范式建模和维度建模。在了解其基本方法之后,我们讨论如何在工业场景中选择和应用这两种方法。


值得强调的是,任何数据模型都是对要解决的业务问题领域的抽象,强依赖于业务领域中的基本概念和业务规则,因此数据建模一定需要业务专家、数据管理技术专家全程参与创建和更新。


范式建模

数据仓库的范式建模是从OLTP数据库设计中衍生而来,范式建模使用实体-关系模型(Entity-Relationship Model)作为建模语言。在OLTP数据库设计中,范式建模主要强调数据的插入和更新一致性,而数据仓库的范式建模主要强调对业务领域的基本概念、规则的辨析和准确表达。


实体(Entity)指业务领域中我们感兴趣的那些对象和事件,实体可能是物理上的存在,例如一台设备,一条产线,一个产品,也可能是逻辑上的存在,例如一个订单,一次销售。因为笔者主要从事的是以工业设备为核心的生产运行过程的数据智能应用,所以主要涉及的都是前者,我们称为“工业物理对象”。


实体类型(Entity Type)指一批具有相同类型的实体的集合。严格来说,在数据建模的过程中,我们从一个特定的实体(实例)出发,去抽象和定义的是他所属的实体类型。实体及其类型一定是一个名词,命名之后最重要的工作就是仔细辨析这个名称(概念)的内涵和外延,最后定义实体的属性来反映这个概念。


工作组中所有人都应该对模型中的实体类型表达的概念理解一致无歧义。举个例子,在生活中我们提到“物料”和“产品”,通常认为“物料”是原材料,“产品”是最终产品,然而在特定的工业数据模型中,例如ISA95生产信息整合模型,“物料”被定义为可以是原料、半成品或者成品(因为从更大的范围来看,一个生产段产生的“成品”其实是下阶段的“原材料”)。如果不把这个概念表达清楚,工作组中的沟通就会变得失真、低效,甚至南辕北辙。


针对同一个业务问题,数据模型也不是只有一个正确答案,换一个抽象的层次和角度,把“原料”和“最终产品”分开定义当然也是对的。笔者强调的是在一个特定的模型版本中,所有的概念都应该是清晰无歧义,形成共识的;如果模型更新了,所有人的共识都要跟着更新。