什么是数据建模

什么是数据建模,第1张

数据建模是一个用于定义和分析在组织的信息系统范围内支持商业流程所需的数据要求的过程。简单来说,数据建模是基于对业务数据的理解和数据分析的需要,将各类数据进行整合和关联,使得数据可以最终以可视化的方式呈现,让使用者能够快速地、高效地获取到数据中有价值的信息,从而做出准确有效的决策。

之所以数据建模会变得复杂且难度大,是因为在建模过程中会引入数学公式或模型,用于确定数据实体之间的关联关系。不同的业务逻辑和商业需求需要选择不同的数学公式或模型,而且,一个好的数据模型需要通过多次的测试和优化迭代来完成,这就使得数据建模的难度变得很高。但是,数据分析中的建模并没有想象中的那么高深莫测,人人都可以做出适合自己的模型。

数据建模总归是为了分析数据从而解决商业问题。如下图数据建模的流程图,数据建模核心部分是变量处理和模型搭建。

变量处理

在建模之前,首先要决定选择哪些变量进行建模,主要从业务逻辑和数据逻辑两方面来考虑。业务逻辑需要了解数据来源的背景,通过了解业务知识来判断哪些变量在业务上很有价值的,哪些变量是可以选择的。数据逻辑则是从数据的完整性,集中度,是否与其他变量强相关等角度来考虑。

除了选择变量,对于一些变量的重构也是需要在建模前进行。例如客户的满意度有“满意”“不满意”,可以将其重构成数字“0”和“1”,便于后续建模使用。除此以外,还有将变量单独计算(取平均值)和组合计算(如A*B)也是常用的重构方法,例如,缺失值以数据取平均值的方式替换。

模型搭建

在模型搭建时,会经历选择算法、设定参数、加载算法、测试结果四个过程。在这个过程中,测试结果会引导调整之前设定的参数,加载算法会对应调整之前选择的算法,而选择算法时会考虑到已定的变量,如果变量不满足算法要求,还需回到选择/重构变量,直至得到最合适的模型。

在优化模型的过程中,模型的解释能力和实用性会不断地提升。在结果输出之后,还需接收业务人员的反馈,看看模型是否解决了他们的问题,如果没有,还需进一步修改和调整。

MicroStrategy在数据领域深挖企业需求,经过多年的研究和沉淀,结合众多复杂的应用场景,不断更新体验,深入开发各种数据辅助功能,使客户可以一站式链接各类型数据资源,完成数据导入和数据建模。在MicroStrategy 平台中,既支持传统方式数据建模,即通过Project Schema 来进行建模,又支持自助式数据导入的建模方式。

建立数据模型

1、建立实体联系模型

1.1、实体联系模型的基本构成

实体联系(ER)数据模型所采用的三个主要概念是:实体集、联系集和属性。

实体集是具有相同类型及相同性质(属性)的实体集合。联系集是指同类联系的集合。

在ER模型中,用矩形框表示实体集(矩形框中写上实体名),用椭圆表示属性(椭圆中标上属性名),实体的主码用下划线表示。实体集之间的联系集用菱形表示,并用无向边与相关实体集连接,菱形中写上联系名,无向边上写上联系集的类型。

实体集之间的联系类型有一对一,一对多,多对多

1.2、多元联系

在ER模型中,可以表示两个以上实体集之间的联系,称为多元联系。

一个多元联系集总可以用多个不同的二元联系集来替代。考虑一个抽象的三元联系集R,它联系了实体集A、B、C。可引进一实体集E替代联系R,然后,为实体集E和A、B、C建立三个新的二元联系集,分别命名为RA、RB、RC。可以将这一过程直接推广到n元联系集的情况。所以,理论上可以限制E R模型中只包含二元联系集。

1.3、联系的属性

联系也可以具有单独的属性。

1.4、自身联系

在一个联系中,一个实体集可以出现两次或多次,扮演多个不同角色,此种情况称为实体集的自身联系。一个实体集在联系中出现多少次我们就从联系到这个实体集画多少条线,到实体集的每条线代表该实体集所扮演的不同角色。

1.5、子类和Is-a层次联系

在信息世界中,常常需要描述这样的实体集A,A属于另一实体集B。A中的实体都有特殊的属性需要描述,并且这些特殊属性对B中其他的实体无意义。在ER模型中,称A是B的子类,或B是A的父类。两类实体之间存在一种层次联系——Is-a(属于)。

如果A和B存在Is-a联系,则A中的每个实体a只和B中的一个实体b相联系,而B中的每一个实体最多和A中的一个实体相联系。从这个意义上说,A和B存在一对一的联系。但事实上,a和b是同一事物。A可以继承B中的所有属性,又可以有自己特殊的属性说明。用来区分A的主码也就是B的主码。

2、ER模型向关系模型的转化

ER模型是概念模型的表示。要使计算机能处理模型中的信息,首先必须将它转化为具体的DBMS能处理的数据模型。ER模型可以向现有的各种数据模型转换,而目前市场上的DBMS大部分是基于关系数据模型的, ER模型向关系数据模型的转换方法

关系模型的逻辑结构是一系列关系模式(表)的集合。将ER模型转化为关系模式主要需解决的问题是:如何用关系表达实体集以及实体集间的联系。

ER模型向关系模型转换的一般规则和步骤:

(1)将每一个实体集转换为一个关系模式,实体集的属性转换成关系的属性,实体集的码即对应关系的码。

(2)将每个联系集转换成关系模式。对于给定的联系R,由它所转换的关系具有以下属性:

联系R单独的属性都转换为该关系的属性;

联系R涉及到的每个实体集的码属性(集)转换为该关系的属性。转换后关系的码有以下几种情况:

· 若联系R为1∶1联系,则每个相关实体的码均可作为关系的候选码;

· 若联系R为1∶ n联系,则关系的码为n端实体的码;

· 若联系R为m∶ n联系,则关系的码为相关实体码的集合。

有时,联系本身的一些属性也必须是结果关系的码属性。

(3)根据具体情况,把具有相同码的多个关系模式合并成一个关系模式。

1、打开mysqlworkbench,来到工作主面板,点击红色框内的菜单

2、点击红色框内选项,就会马上新建一个名为mydb的数据库,现在可以也就可以添加数据表

3、数据表名,引擎类型都可以自行选择

4、也可以在这里对表进行右击来编辑

5、点击红色框内选项,可以添加数据库视图模型

6、点击红色框内选项,可以新建数据表

7、右击表,可以编辑表

8、表名,表的引擎以及表的字段

9、在视图模型下,可以进行表的链接,链接完成会生产一个对应的外键


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10803432.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存