软件设计师考试—第九章 数据库系统知识

第九章 数据库系统知识

1 基本概念

数据库系统DBS是一个采用了数据库技术,有组织地、动态地存储大量相关数据的集合,由数据库、硬件、软件和人员组成。

数据库管理系统DBMS是数据库系统的核心软件,主要实现对共享数据有效地组织、管理和存取。

  • 主要功能:数据定义DDL、数据操纵DML、数据库运行管理、数据的组织存储和管理、数据库的建立和维护等。
  • 特征:数据结构化且统一管理、有较高的数据独立性(包括逻辑独立、物理独立)、数据控制功能(包括数据的安全性、完整性、并发控制、故障恢复)
  • 分类:关系型数据库系统RDBS、面向对象的数据库系统OODBS、对象关系数据库系统ORDBS
1.1 数据库体系结构

1.集中式数据库系统:数据是集中的,数据管理是集中的;数据库系统的所有功能都集中在DBMS所在的计算机上。

2.客户端/服务器(C/S)结构:客户端负责数据表示服务,服务器负责数据库服务;数据库系统功能分为前端和后端,前端和后端交互通过SQL或应用程序接口(ODBC和JDBC)。

3.并行数据库系统:多个物理上连在一起的CPU,分为共享内存式多处理器、无共享式并行体系结构。

4.分布式数据库:包括物理上分布逻辑上集中、物理上分布逻辑上分布两种。

1.2 分布式数据库

分布式数据库:局部数据库位于不同的位置,使用一个全局DBMS对所有局部数据库进行联网管理。

在这里插入图片描述

分布式数据库特点:

  • 数据独立性:除数据逻辑独立性、数据物理独立性外,还有数据分布独立性(分布透明性);
  • 集中与自治共享结合的控制结构:各局部的DBMS可以独立地管理局部数据库,同时系统又设有集中控制机制,协调局部DBMS的工作,执行全局应用;
  • 适当增加数据冗余度:在不同的场地存储同一数据的多个副本,可以提高系统的可靠性和可用性,提高系统性能;
  • 全局的一致性、可串行性、可恢复性。

分布式数据库透明性

  • 分片透明:用户或应用程序不需要直到逻辑上访问的表数据是如何分片/分块存储的,他们对数据的操作在全局关系上进行。
  • 复制透明:用户或应用程序不必关心数据库在网络中各个节点的复制情况,被复制的数据的更新由系统自动完成。
  • 位置透明:用户不必知道所操作的数据存储的物理位置及位置变换情况。
  • 局部映像透明性(逻辑透明):最低层次的透明性,该透明性提供数据到局部数据库的映像,用户不必关心局部DBMS支持那种数据模型,使用哪种数据操纵语言,数据模型和操纵语言的转换是由系统完成的。

分片模式

  • 水平分片:将表中水平的记录分别存放在不同的地方。
  • 垂直分片:将表中垂直的列值分别存放在不同的地方。
1.3 三级模式结构

三级模式:

  • 内模式:又称存储模式,是数据物理结构和存储方式的描述;物理层,对应存储文件。
  • 概念模式:又称模式,是数据的逻辑结构和特征的描述;逻辑层,对应基本表。
  • 外模式:又称用户模式或子模式,是用户与数据库系统的接口;视图层,对应视图。

两级映像:

  • 外模式/模式映像:逻辑独立性,数据的逻辑结构发生变化,如修改了表中数据,用户程序可以不用修改,只需要修改外模式和概念模式之间的映像。
  • 模式/内模式映像:物理独立性,数据的存储方式发生变化时,应用程序、逻辑结构不需要变化,只需要修改概念模式和内模式之间的映像。

在这里插入图片描述

2 数据库设计

数据库设计过程

  • 需求分析:根据当前和未来应用的数据要求进行需求分析,产物有数据流图、数据字典、需求说明书
  • 概念结构设计:生成概念模型,设计E-R图
  • 逻辑结构设计:根据转换规则、规范化理论,将E-R图转换为关系模式
  • 物理设计:根据生成的表等,生成物理数据库 (聚簇索引是物理设计阶段的任务,属于内模式)

在这里插入图片描述

2.1 概念结构设计
2.1.1 概念结构设计过程

在这里插入图片描述

合并/集成的方法:

  • 多个局部E-R图一次集成。
  • 逐步集成,用累加的方式一次集成两个局部E-R图。

集成产生的冲突及解决方法(针对同一对象):

  • 属性冲突:包括属性域冲突和属性类型取值冲突
  • 命名冲突:包括同名异义和异名同义
  • 结构冲突:包括同一对象在不同应用中具有不同的抽象,以及同一实体在不同局部E-R图中所包含的属性个数和属性排列次序不完全相同。
2.2.2 E-R图

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值