数据库设计的阶段任务

数据库设计包括三个阶段:

1)概念设计

2)逻辑设计

3)物理设计

这三个阶段是什么意思?阶段任务是什么?

1、概念设计

也称为概念结构设计,任务是在需求分析阶段产生的需求规格说明书的基础上,将需求抽象为一个不依赖于任何DBMS的数据模型,即概念模型,表现形式为E-R模型。就是画E-R图吧。

2、逻辑设计

也称为逻辑结构设计,主要任务是将概念模型为某个特定DBMS上的逻辑模型。具体来说,就是设计库表。

3、物理设计

物理结构设计。为逻辑模型选取一个最适合应用环境的物理结构。就是创建物理数据库,建好相应的数据库文件、索引文件,做好各项系统配置等。

前不久,我学习到模式驱动这一概念。所谓模型驱动(MDA),就是先设计出平台无关模型,然后经过模型转换,建立平台相关模型,最后结合代码框架,自动生成源代码和文档,一个成品就出来了。模型驱动的好处之一,就是可移植性很高,从一个平台移植到另一平台,只需将平台无关模型转换一下就可以了。我感觉数据库的设计思想,跟模型驱动有类似之处。

说另外一个话题。

访问数据库,由外到内,有所谓三级模式-两层映射的机制。三级模式,外模式、逻辑模式、内模式;两层映射,外模式-逻辑模式映射,逻辑模式-内模式映射。

外模式是以一种对外的视角,称为用户视图,或者说,从外部的角度看到或理解的数据库样子。简单点吧,就是数据库里的视图。视图是虚拟表,它的行列数据均来自于一个或多个基本表。

逻辑模式,对应的就是基本表。

内模式,对应的是存放基本表的数据文件。

这是一种分层结构,类似网络的ISO7层模型,最上面,是面向用户和应用的外模式,屏蔽了大量细节;最下面,是底层的物理文件,内模式。内模式中的数据从这个数据文件转移到别的文件,对概念模式的基本表来说是透明的;同理,基本表的结构发生了改变,只要视图相应做适配,对外部的应用程序来说也是透明的,不必做任何修改。

大道不孤必有邻,活到老,学到老。

左直拳的博客
我还没有学会写个人说明!
上一篇

高性能MySQL学习总结二----常见数据类型选择及优化

下一篇

为什么猪牛羊肉是红色的,鸡肉是粉色的,而鱼肉是白色的?

你也可能喜欢

评论已经被关闭。

插入图片