第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > e-r数据建模-概念模型 逻辑模型 物理模型-总结

e-r数据建模-概念模型 逻辑模型 物理模型-总结

时间:2022-09-22 05:15:36

相关推荐

e-r数据建模-概念模型 逻辑模型 物理模型-总结

作为一名合格的Java程序员,公司要求要掌握的知识面越来越多。特别对于一些小型公司岗位并没有分的很细化,所以在平时开发中就要求各种技能同时兼顾。一般从产品对接业务确定以后,后面就要设计数据库建模了。但在日常项目中,常常公司初级、中级研发同事在系统表结构设计或数仓表结构设计过程中,很多人都没有听说过概念模型、逻辑模型、物理模型或者了解一点不够透彻,所以今天这篇文章和大家一起梳理下,什么是概念模型、逻辑模型、物理模型。

推荐大家使用powerDesigner进行概念模型、逻辑模型、物理模型设计,powerDesigner是一款很好的数据库建模工具。

一、概念模型阶段

概念模型阶段要做的事,总结一句话来说,"找到你开发设计的系统,业务层面核心的实体和关系

举个例子,我们准备要开发一个校园管理系统,通过和产品经理、需求方沟通,这个系统主要目的是为了解决学生、班级、老师之间归属关系录入、统计和查看。

在概念模型阶段,我们可以将我们涉及到业务层面的核心的三个实体1、学生 2、班级 3、老师;

归属关系 :

1、班级与学生是属于一对多的关系:一个班级至少有一个或多个学生,每个学生只能归属于一个班级;

2、老师与班级是属于多对多的关系:一个班级至少有一个或多个老师,一个老师至少属于一个或多个班级;

3、老师与课程是属于一对多的关系:一个老师只能教授一门课程,多个老师可以教授同一门课程;我们使用powerdesigner画出来的概念模型如下:http://img-02./view/image?&type=2&guid=7b71fb3e-3130-eb11-8da9-e4434bdf6706&url=/mmbiz_png/69xapJbwNNicicf1gC8TAoePqrVZCn0PLCBAHtibVTiaJRtkJiaLlsj6kq0F3tKNhicx6YtFwEAPN4ogs5YR1ZgrM7JA/640?wx_fmt=png

二、逻辑模型阶段

逻辑模型阶段要做的事,总结一句话来说,“整理完善系统所有实体、实体间的关系,给实体添加字段属性”;

例如班级这个实体,我们需要将班级ID、班级名称等 班级实体下的所有字段属性梳理出来,并将这些字段的长度和约束确定下来;

实体字段属性定义要尽量满足三范式定义,在下一个章节我们会讲到什么是三范式,为什么要遵循三范式

此时多对多的关系,例如老师与班级的归属关系,我们需要单独建立一张关系表,进行处理;我们使用powerdesigner画出来的逻辑模型如下:

http://img-02./view/image?&type=2&guid=7b71fb3e-3130-eb11-8da9-e4434bdf6706&url=/mmbiz_png/69xapJbwNNicicf1gC8TAoePqrVZCn0PLCAWXSkUYSotjj0aJiaia8GJaqATwHavWuwOGQicCxrJdAWGxhl4WDTFiaibg/640?wx_fmt=png

三、物理模型阶段

物理模型阶段要做的事,总结一句话来说,"通过case工具(例如:powerdesigner)由逻辑模型自动生成物理模型(可生成不同数据库类型的DDL语句、数据字典)",生成的逻辑模型如下:

http://img-01./view/image?&type=2&guid=7b71fb3e-3130-eb11-8da9-e4434bdf6706&url=/mmbiz_png/69xapJbwNNicicf1gC8TAoePqrVZCn0PLCMaPITlKXBZD8icrs3qwgrdvAqhicddHvwxs7STCqLCibxHgNTTuJ6Bysw/640?wx_fmt=png

可直接生成DDL语句

http://img-03./view/image?&type=2&guid=7b71fb3e-3130-eb11-8da9-e4434bdf6706&url=/mmbiz_png/69xapJbwNNicicf1gC8TAoePqrVZCn0PLCoyKGNMoAOWT2Aib63LuTd134uoQXjYg3wuVIAfLqtN3ZzJ8uleIRiaNA/640?wx_fmt=png

四、优点总结:

1、减少团队成员间日常沟通成本:一般想要快速熟悉系统和业务,从数据库梳理是最快的,但如果只有数据库DDL语句注释,那最多了解到6、7成,因为表之间关联关系,只看DDL是看不出来,那就需要去问,新同事入职要问老同事,数据团队要问要问系统研发团队。。。

2、数据治理的关键,数据模型管理是数据治理最重要的一个环节之一,按规范来设计,可以将研发->dba->数据分析团队职能高效的串联起来,保证平台数据质量的可控性。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。