第三章 数据库结构设计

第一节 数据库概念设计


  • 引言
    【1】数据库设计三步:概念设计,逻辑设计,物理设计
    【2】概念设计:概念设计是由分析用户需求到生成概念产品的一系列有序的、可组织的、有目标的设计活动组成的,它表现为一个由粗到精、由模糊到清晰、由抽象到具体的不断进化的过程。
    【3】逻辑设计:把一种计划、规划、设想通过视觉的形式通过概念、判断、推理、论证来理解和区分客观世界的思维传达出来的活动过程。逻辑设计比物理设计更理论化和抽象化,关注对象之间的逻辑关系,提供了更多系统和子系统的详细描述。
    【4】物理设计:数据库的物理设计指数据库存储结构和存储路径的设计即将数据库的逻辑根型在实际的物理存储设备加以实现,从而建立一个具有较好性能的物理数据库,该过程依赖于给定的计算机系统。

1.数据库概念设计目标

  • 定义与描述应用领域涉及数据范围
  • 定义信息模型
  • 描述数据属性特征
  • 描述数据之间的关系
  • 定义与描述数据约束
  • 说明数据安全性要求
  • 支持用户各种数据处理需求
  • 保证信息能转化为数据逻辑结构

2.概念设计依据以及过程

  • 依据:以需求分析结果为依据(需求说明书、DFD、需求阶段收到的报表)
  • 过程:
    【1】明确建模目标(模型覆盖范围)
    【2】定义实体集(自底向上标识与定义实体集)
    【3】定义联系(实体间关联联系)
    【4】建立信息模型(E-R)
    【5】确定实体集属性(属性是实体的特征或体质)
    【6】对信息模型集成与优化(检查与消除命名不一致与结构不一致)
    【概念模型是对现实世界模拟】
  • 结果:概念模型(E-R图)与概念设计说明书

3.概念模型设计ER(Entity-relationship model)

  • 概念:
    【1】实体(entity)或实例(instance):可以在现实世界客观存在活动
    【2】实体集(entity set):同性实体集合
    【3】属性(attribute):实体所具有某一特性,每个属性取值范围称为域
    【4】码(key):实体集中唯一标识每个实体属性或属性组合,用来区别统一实体集中不同实体属性称为主码,一个实体任意两个实体在主码上取值不能相同
    【5】 联系(relationship):
    -实体之间关系联系也可以有名字、属性
    -三类1:1;1:n;n:m;
    -图例:
    在这里插入图片描述

4.IDEF1X建模方法

IDEF1X是IDEF系列方法中IDEF1的扩展版本,是在E-R(实体联系)方法的原则基础上,增加了一些规则,使语义更为丰富的一种方法。概念模型设计常用IDEF1X方法,它就是把实体-联系方法应用到语义数据模型中的一种语义模型化技术,是数据建模方法

5.实例

建模目标->定义实体集-> 定义联系 -> 建立信息模型-> 确认实体属性 ->对信息模型集成优化

第二节 数据库逻辑设计

1.逻辑设计的任务:

  • 将概念模型(E-R图)转换为DBMS支持数据模型(如关系模型),并对其进行优化

2.逻辑设计依据与阶段目标

按图例所示:
在这里插入图片描述

3.补充相关概念

  • 关系模型:简单灵活,常用流行,用二维表格结构表示实体及实体之间的联系
    ·关系模式由五元组R(U,D,DOM,F)组成,可以简化为三元组R(U,F)
    分别是:
    R:关系名字;U:属性名集合;D:属性所来自域;DOM:属性到域映射;F:数据依赖;
    【1】关系数据库设计核心:关系模式设计
    【2】设计目标:作出一组既好的反映现实世界而又有良好操作性能关系模式
    【3】方法(新奥尔良法):需求分析->概念结构设计(E-R图)->逻辑结构设计(关系模式设计)->物理设计
  • 数据依赖
    【1】定义:x函数确定y函数,或y函数依赖于x,记作x->y;
    【2】关系内部属性与属性一种约束关系,是完整性约束表现形式
    【3】数据依赖模式{函数依赖(FD),多值依赖(MD)}
    【4】函数依赖几种特例:

1.平凡函数依赖与非平凡函数依赖(x->y且y属于x/x->y且y∉x )
2.完全函数依赖与部分函数依赖(x-f->y/x-p->y)
3.传递函数依赖(若x->y且y->z则x->z)

  • 候选码,主码,外码
    【1】候选码:其属性能唯一确定整个元组的值
    【2】主码:候选码中的一个码
    【3】外码:在此关系模式中的一个属性是另一个关系模式的主码
  • 数据规范化
    关系模式规范化:把低一级关系模式分解为高一级关系模式
    关系数据库规范化理论是数据库逻辑设计工具
    目的:尽量消除插入删除异常,修改复杂,数据冗余问题
  • 范式
    【1NF】:所有属性都是不可再分的基本数据项
    【2NF】:非主属性完全函数依赖于主码
    【3NF】:每个非主属性不传递依赖于主码
    【4NF】:消除非平凡且非函数依赖的多值依赖

4.数据库逻辑设计方法

  • 三步:
    【1】将概念结构转换为一般关系模式
    【2】将关系模式向特定DBMS支持下数据模式转换
    【3】优化
  • 逻辑模型产生

1.一个实体型转换为一个关系模式
2. 一个1:1联系转换为一个关系模式与另一端合并
3.1:n联系
【1】形成一个独立的关系模式(常用)
【2】与n端口对应关系合并
4.n:m联系:联系单独为一个关系模式
5.三个及以上的实体间联系:联系为一个关系模式
6.同实体集,无论联系的类型是什么都单独转换为一个关系模式

第三节 物理设计

1.物理设计概述

  • 设计数据库存储结构与物理实现方法
  • 目的:将逻辑描述转换为实现技术要范设计数据存储方案

2.数据库物理结构

  • 物理设备上存储结构与存储方法
  • 数据库中数据以文件形式存储外设存储介质上
  • 物理结构解决以下问题:文件组织,文件结构,文件记录,索引技术

3.索引(index)

  • 索引是数据库独立存储结构
  • 作用:无需扫描每个页面快速访问数据库
  • 索引技术(indexing):快速数据库访问设计
  • 关键:建立记录域取值到记录物理地址映射域,确保性能提高程度与代价
  • 分类:╭ 有序索引:利用索引文件利用地址头查找映射关系
              │
               ╰ 散列索引(hash)索引机制
  • 有序索引:
    【1】聚集索引\非聚集索引
    【2】稠密索引\稀疏索引

4.数据库物理设计

  • 目标:空间占用少,访问效率高,维护代价低的物理模式
  • 模式:5个环节
    【1】数据库逻辑模式描述

根据数据库逻辑结构信息设计,目标是DBMS可支持关系表
SQL SERVER采用T-SQL语言
使用文件结构:堆文件,顺序文件,聚集文件,索引文件,散列文件

【2】文件组织存取设计

基本元杂:将易变部分,稳定部分,存取斌度高部分,存取频度低部分分开以提高系统性能
影响数据文件存取结构因素:存取时间,存取空间利用率,维护代价
解决办法:适当冗余,增加聚簇功能
DBMS常用的存取方法:索引方法,聚簇方法,Hash方法
建立索引原则:一个(组)属性常在操作条件中出现
       一个(组)属性经常在连接操作连接条件中
       一个(组)属性经常作为聚簇函数参数
建立聚簇索引原则:检索数据时,以某个(组)属性作为排序分组条件
         检索数据时,常以某个(组)属性作为检索限制条件返回大量数据
         表中某个(组)值重复次数多

【3】数据分布设计

不同类型数据物理分布
应用数据划分分部:特征,时间,地点,水平,垂直,派生属性分布,去规范化
【水平划分】:将一张表分为多张具有相同属性,结构完全相同的字表
【垂直划分】:将一张表分成多张子表,子表包含属性为其子集

【4】确定系统配置
【5】物理模式评估(重点:时间,空间,效率)

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页