目录
数字化建设通关指南专栏原价99,现在活动价29.9,按照阶梯式增长,直到恢复原价
近期跟一些读者聊,好多读者表示对数据建模这一概念不是很理解,理解起来很抽象,那么到底什么是数据建模?今天我们就聊聊这一话。
1 什么是数据?
数据是对事实的反应,将客观存在的事物用数值的形式反应出来。以35°C为例,“温度是35°C”代表不了任何东西。它有可能是今天的天气,也有可能是水温,我们一般认为它只是一个数字事实,而“2024年9月4号上午10点,重庆市的温度是40°C”则是一个更加场景化的数据。实际上,大部分数据都是依赖于场景,我们不能脱离场景来看数据。以连锁零售行业为例,两个门店日销售额分别达到5000元和8000元,仅凭这两个数字来单独评判其经营情况,其实是有失公平的。我们要看它在一线还是二线城市?它是 CBD 商圈店、学校店或是公园店?它是旗舰、直营店或是加盟店?所以我们在描述一个数据的时候,一定要基于某些具体的场景。因此数据加场景,场景化的数据才有意义,也就是数据的数值前面必须带有必要的限定修饰语,有维度信息才有意义。
2 什么是信息?
重庆气温到达40度时候会比我们平时热,市政府会进行红色预警,这就是信息。所以数据和信息最大的区别是:信息是有比较的,有场景的,同时也是有判断标准的。从某种角度来看,我们可以将信息想象成红黄绿灯。为了认定某事物为信息,你必须要告诉我,它是好是坏?它是红灯、黄灯还是绿灯?这是数据到信息的一个重要转变,因此我们将信息抽象为它是数据+场景+规则的体现。
3 什么是模型?
从软件设计角度, 百度百科给出了定义:通过主观意识,借助实体或者虚拟表现,构成客观阐述形态和结构的一种表达目的的事物,事物可以是虚拟可以是实体的,可以理解为就是一种输入输出的框架。
从数学角度,模型就是描述输入与输出关系的东西(公式、方程、关系式等),也即函数。
从生物学角度:模型是人们为了特定的目的,对认知对象所作的简化的概括的描述,这种描述可以是定性的,也可以是量化的;有的借助具体的事物或者其他形象化的手段,有的则是通过抽象的形式表达。
也有人认为,模型用以表征现象、概念、过程、事件或者物体,它可以以不同的表征方式来呈现(如图像、文字等多元方式),以达到不同的功能与目的(如解释性、描述性等)。
依据上面众多的定义,我们可以看出模型就是输入输出转换的规则或规律,是对现实事物各种关系以及特征进行的一种抽象描述。比如linux的进程的内存模型,说的就是创建一个进程时,进程的内存模型生成的规则是什么样的。输入就是创建进程的接口比如fork或clone,输出就是进程数据结构和按照内存模型搞的内存布局。
4 什么是数据建模?
数据模型咋一听觉得很高大尚,很多初学者或对初次接触这个概念的人往往容易会和数学模型联系上,以为是关于算法、数学的一些高深的东西,觉得很神秘,其实他只是数据建设、数据组织中的一种术语,是对现实世界中物理实体之间关系的数据反应,通过数据来组织实体与实体,对象与对象之间的关系和行为。
再来说数学模型,数学也是对现实世界各种复杂关系、活动的抽象,这种抽象用数学的语言表达出来,就是各种数学符合组成的数学公式,只不过用数学公式来描述现实中的逻辑、规律和活动,因此我们可以得到凡是把这种关于抽象的过程、活动都可以定义为建模的过程。又比如在数仓建设初期,我们要首先要进行指标体系的构建,指标体系的构建实际上就是将业务目标进行拆解并用数据来反映事实的过程,本质上也是业务抽象的过程,我们往往也把这一阶段称为业务建模过程或BI建模过程。
数据模型是与数据相关的,是对业务逻辑、业务关系、业务活动、业务属性的深层次的数据抽象,而把这种数据抽象称为数据模型。数据建模的过程反应到数据库中,其实就是表设计的过程,通过一张表来反应业务活动、业务关系、业务逻辑及业务属性,把这些信息通过数据的形式呈现出来。
因此我们给出结论:数据建模就是表设计组织数据的过程,而这种组织数据过程总结下来就是事实+规则+场景的反应,业务活动即事实,业务关系+业务逻辑 即规则,业务属性反应场景。
5 小结
本文主要对数据建模相关概念进行了深入探讨,注意不要把业务流程建模与数据建模混为一谈。业务建模与数据建模,都存在抽象设计,业务建模是对业务流程的抽象,数据建模是对数据的抽象,不同业务流程可以使用相同的数据,表现为数据在业务中流转,业务建模方法可以帮助设计概念数据模型。如果仅从业务视角看数据,实现数据模型,不可能实现企业数据的单一真相。数据建模应独立于业务流程建模,不能因业务流程的变更而影响数据模型的稳定性。比如,维度建模第一步“选择过程”,是基于现有的业务流程中产生的数据,而不是未来期望构建的业务流程,维度建模以“选择”为主,更适合业务用户。
如果觉得本篇文章对你还有点帮助,那么不妨也可以选择去看看我的博客专栏文章,里面内容更精彩。具体专栏内容如下(部分展示):
数字化建设通关指南专栏原价99,现在活动价29.9,按照阶梯式增长,直到恢复原价
主要内容包括:
1 SQL进阶实战技巧
可以参考如下教程,具体链接如下
SQL很简单,可你却写不好?也许这才是SQL最好的教程_sql语句写的很烂怎么办-CSDN博客
上面链接中的文章及技巧会不定期更新。
2 数仓建模实战技巧和个人心得
文章部分标题展示如下:
1)新人入职新公司后应如何快速了解业务?
2)以业务视角看宽表化建设?
3) 维度建模 or 关系型建模?
4)业务模型与数据模型有什么区别?业务阶段的模型该如何建设?
5)业务指标体系该如何建设?指标体系该如何维护?指标平台应如何建设?指标体系 该由谁来搭建?
6)如何优雅设计DWS层?DWS层模型好坏该如何评价?
7)指标发生异常,该如何排查?应从哪些方面入手寻找问题点?
8) 数据架构的选择,mpp or hadoop?
9)数仓团队应如何体现自己的业务价值,讲好数据故事?
10)BI与大数据有什么关系?BI与信息化、数字化之间有什么关系?BI与报表之间的关 系?
11)数据部门如何与业务部门沟通,并规划指引业务需求?
文章不限于以上内容,有新的想法也会及时更新到该专栏。
具体专栏链接如下:
标签:数据,模型,建模,业务,抽象,提问,数据模型 From: https://blog.csdn.net/godlovedaniel/article/details/141888977