🤾
MLStudy
  • README
  • Linux
    • command
    • Basic_commands
    • Advanced_commands
    • Linuxvirtual_machine_operate
    • virtual machine
  • Python
    • Deploy_Issue
    • Model_Analysis
    • Model_concept
    • Model_Grammar
    • Python_print_format
    • Model_ComFuc
    • Deep_learning_know
  • Theoretical knowledge
    • MLE_MAP_Bayesian
    • TV_denoise
  • Research
    • Writing
    • How to read
  • To_be_classified
    • tqdm
    • fast_visit_github
    • windows_issue
    • Zotero
    • data_struct
    • dataset
      • chapter_1
      • chapter_2
      • chapter_3
      • chapter_4
      • chapter_5
      • chapter_6
      • chapter_7
Powered by GitBook
On this page
  • 数据库设计
  • 概念结构设计
  • 逻辑结构设计
  • 物理结构设计
  1. To_be_classified
  2. dataset

chapter_6

数据库设计

数据库设计是基于应用系统需求分析中对数据的需求,解决数据的抽象、数据的表达和数据的存储等问题,其目标是设计出一个满足应用要求,简洁、高效、规范合理的数据库。最终得到能在DBMS中存储的数据库的逻辑结构和物理结构。

数据库设计方法从早期根据经验进行直观设计,到运用软件工程的思想进行规范化设计,已发展到用计算机进行辅助设计,和使用设计工具软件自动进行设计。

以基于E-R模型的规范设计方法为基础,通常将数据库设计分为需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施、数据库的运行、维护阶段等六个阶段。

需求分析是整个数据库设计的基础,主要来准确了解与分析用户以及应用系统的数据需求,明确在数据库中需要存储和管理哪些数据,明确用户对数据的安全性和完整性方面的需求,以及用户的存取权限的设置等。

概念结构设计是整个数据库设计的关键。在需求分析的基础上,需要借助概念模型,如E-R模型,来表达数据抽象的结果,得到一个独立于具体的DBMS的概念模型。

逻辑结构设计把概念结构设计得到的概念模型转换为选定的DBMS支持的数据模型所对应的数据库模式,如关系数据库模式,并对其进行优化。

物理结构设计为逻辑结构设计得到的数据库模式,利用选定的DBMS支持的数据定义语言描述数据库的三级模式结构,确定适合应用环境的存储结构和存取方法。

数据库实施阶段,在具体的DBMS上,实现物理结构设计的结果,建立数据库,进行数据库编程,组织数据入库,并进行测试操作等。

对正式投入使用的数据库,在系统运行过程中需要不断地对其进行评估与完善。

数据库设计是上述六个阶段的不断反复迭代,逐步求精的过程。数据库设计同时伴随着数据库系统应用软件的设计,在设计过程中需要把两者加以结合,相互完善。

数据流程图是用于描述数据库结构化设计方法中(需求分析)阶段的工具。

信息需求表示一个组织需要管理的数据及其结构

处理需求表示一个组织需要经常对数据进行的处理操作

问:关系数据库设计的理论支撑:在关系数据库设计过程中是如何运用前面所学的数据库理论的?

答:在概念设计阶段,用E-R模型设计数据库的概念模型;在逻辑设计阶段,用关系规范化理论设计数据库模式

概念结构设计

数据库概念结构设计阶段得到的结果是**:E-R图表示的概念结构**

E-R图来描述信息结构但不涉及信息在计算机中的表示

步骤:

1.抽取实体和实体的属性并绘制ER图

2.确定实体间的关系,以及发生联系后产生 的属性特征,绘制

3.组合实体与联系的ER图,构造完整的ER图

在合并分E-R图时必须消除各分图中的不一致,即冲突。各分E-R图之间的冲突主要有三类,

即属性冲突、命名冲突和结构冲突。

  • 命名冲突:同名异义或同义异名

  • 属性冲突:属性类型冲突

  • 结构冲突:属性取值单位冲突

逻辑结构设计

逻辑结构设计阶段得到的结果是:某个DBMS所支持的数据逻辑结构

关系数据库的规范化理论主要用来指导(构造数据库逻辑结构 )。

设计关系模式是( 逻辑结构设计 )阶段的任务。

  • 1:1联系可以转换为一个独立的关系模式,也可以与联系任意一端实体所对应的关系模式合并

比如:两个关系:班级(班级号,所在系,专业,人数) 班长(学号,姓名)

第一种:增加负责人(学号,班级号) 或者

第二种:班级(班级号,所在系,专业,人数,班长学号) 班长(学号,姓名)

  • 1:n联系可以转换为一个独立的关系模式,也可以与联系的n端实体所对应的关系模式合并

比如两个关系:班级(班级号,所在系,专业,人数) 学生(学号,姓名)

第一种:新增 表(属于):(学号,班级号)

第二种:班级(班级号,所在系,专业,人数) 学生(学号,姓名,所在班级号)

  • m:n联系 只能 转换为一个独立的关系模式

比如两个关系:课程(课程号,课程名,学分) 学生(学号,姓名)

选课成绩(学号,课程号,成绩)

  • 三个或三个以上的实体间的多元联系要单独转换为一个关系模式

  • 子实体和ISA实体联系的转换

从E-R模型、向关系模式转换时,一个M:N联系转换为关系模式时,该关系模式的候选键是( M端实体关键字与N端实体关键字的组合 )

在E-R模型中,如果有3个不同的实体型,3个m:n联系,根据E-R模型转换为关系模式的规则,转换后关系的数目为( 7 )。

关系数据库逻辑结构设计阶段的主要完成的任务有( )。

​ ER模型转换为关系模式->关系模式规范化->关系模式优化->设计用户模式

物理结构设计

设计解决的问题:数据库存储结构的设计+数据库存储方法的设计;确保对磁盘的I/O操作次数最少

设计的目标是:得到存储空间占用少、数据访问效率高和维护代价低的数据库物理模式

此阶段得到的结果是:包括存储结构和存取方法的数据库物理结构

确定数据库存储结构,即确定关系、索引、聚簇、日志、备份等数据的存储安排和存储结构,这是数据库设计的(物理结构设计 )的任务。

(物理结构设计 )可以得到用SQL语言定义的数据库模式。

其中:

  • 定义用户外模式

    • 主要为了定义视图

  • 定义内模式

    • 索引是DBMS采用的主要存方法,DBMS可以基于索引定制优化查询计划

    • 索引的创建的可以确定数据文件的存储结构

  • 定义数据库

问:为什么创建索引属于内模式的定义内容?

答:内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如:数据存储的文件结构、索引、集簇及hash等存取方式与存取路径。所以创建索引属于内模式的定义内容。

Previouschapter_5Nextchapter_7

Last updated 2 years ago

image-20210122223025881
image-20210122223138337
image-20210122225324101
image-20210122230421114
image-20210122222949942