《数据库的物理设计》PPT课件.ppt_第1页
《数据库的物理设计》PPT课件.ppt_第2页
《数据库的物理设计》PPT课件.ppt_第3页
《数据库的物理设计》PPT课件.ppt_第4页
《数据库的物理设计》PPT课件.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020 2 7 1 第6章数据库的物理设计 讲课内容前面重点讲述了数据库的高层模型 主要集中在概念层 E R模型 和逻辑层 关系模型 上 本章将简单地介绍与DBMS底层密切相关的数据库的物理设计 数据库性能的好坏很大程度上取决于数据库的物理设计 而不仅仅是关系模式设计的好坏 SQL语句写的好坏 数据库设计的六阶段 数据的存储结构 物理库的物理组织 数据的存取路径 物理设计的内容 物理设计的相关因素 物理设计的目标 本章总结 2020 2 7 2 第6章数据库的物理设计 什么是数据库设计 对于一个给定的应用环境 构造最优的数据库模式 建立数据库及其应用系统 使之能够有效地存储数据 满足用户的各种需求 信息要求和处理要求 是建立数据库及其应用系统的技术 是信息系统开发和建设的核心技术 既是一项涉及多学科的综合性技术 又是一项庞大的工程项目 三分技术 七分管理 十二分基础数据 是数据库建设的基本规律 2020 2 7 3 第6章数据库的物理设计 问题一应用系统的设计与数据库设计之间的关系是什么 2020 2 7 4 第6章数据库的物理设计 传统上数据库设计只是应用系统设计的一部分 软件工程 课会讲述 二者可以同时进行 二者要相互参照 相互补充 发展趋势数据库设计是核心 应用系统设计以数据库设计为中心 围绕着数据库的设计而进行 2020 2 7 5 第6章数据库的物理设计 问题二数据库系统 DBS 或者说应用系统的性能调整可以在几个层次上进行 2020 2 7 6 第6章数据库的物理设计 硬件不同的硬件 PC 小型机 大型机 机群同一硬件 内存 CPU 硬盘大小 阵列系统软件与硬件密切相关 WINDOWS UNIX LINUXDBMS的选择与参数调整 缓冲区大小 检查点的频率数据库的高层设计逻辑设计 模式的规范化与数据划分 物理设计 存储结构 索引 数据分布 2020 2 7 7 第6章数据库的物理设计 数据划分Course schema course name course location course capacity 水平划分根据课程容量为小于30人 30 80人 80人以上将相关的表划分成三个子表 以便排课 垂直划分Course schema course name course location Course schema course name course capacity 2020 2 7 8 6 1数据库设计的六阶段 数据库设计的六个阶段需求分析 数据 功能和性能概念结构设计 E R模型与E R图逻辑结构设计 将E R图转换成关系表数据库物理设计 存储结构与存取路径 数据的划分与分布数据库的实施 编程 测试和试运行数据库运行与维护 监控与分析 备份与恢复 重组织与重构造 安全性控制与完整性控制等等 2020 2 7 9 6 1数据库设计的六阶段 图示 2020 2 7 10 6 1数据库设计的六阶段 数据库设计的三个主要阶段概念设计 逻辑设计 物理设计数据库的三级模式结构外模式 子模式 用户模式 是数据库用户看到自己的数据视图模式 逻辑模式 是数据库中全体数据的逻辑结构和特性的描述 是所有用户的公共数据结构内模式 物理模式 存储模式 是数据库全体数据的内部表示或者底层描述 用来定义数据的存储方式和物理结构 2020 2 7 11 6 2数据库的物理组织 数据库与操作系统文件数据库系统是文件系统的发展 数据库实现的基础是操作系统的文件 对数据库的任何操作最终都要转化为对操作系统文件的操作 物理组织的基本问题如何设计数据库的文件组织如何设计文件中记录的组织方式 2020 2 7 12 6 2数据库的物理组织 举例在MSSQLServer2000中 一个数据库是由三个操作系统文件构成的 它们分别是 主数据文件 MDF次数据文件 NDF日志文件 LDF这些信息存储在sysfiles系统表中 在MSSQLServer2000中 一个表中的记录按以下两种方式进行组织 堆 Heap 无序具有簇集索引的表 B 树文件结构 有序 2020 2 7 13 6 2数据库的物理组织 物理组织的对象元数据数据统计数据索引日志物理组织的目标存储效率要高 能节省存储空间 存取效率要高 速度快 代价小 可节省存取时间 2020 2 7 14 6 3物理设计的内容 物理设计的内容确定数据的存储结构 选择DBMS 确定数据的物理分布 包括数据划分 为数据选择存取路径 即索引的设计 调整和优化数据库的性能 如调整DBMS的某些选项和参数的设置 物理设计的特点不直接面向最终用户 一般的用户不需要了解物理设计的细节 物理设计可以不考虑用户理解的方便性 2020 2 7 15 6 4物理设计的目标 主要的设计目标有一是提高数据库的性能 特别是满足主要应用的性能要求 二是有效地利用存储空间 在这两个目标中 第一个目标更为重要 因为性能依然是当今数据库系统的薄弱环节 而存储介质却越来越便宜 2020 2 7 16 6 5数据的存储结构 数据库文件组织及其结构 按照数据 索引 日志来组织文件 在逻辑上数据库文件是页的集合 记录的组织与结构文件中记录的组织有多种形式 堆 散列 簇集 顺序 B树类记录的存储结构 定长记录变长记录混合记录 2020 2 7 17 确定数据的存储结构的过程就是一个选择什么样的DBMS的过程 网状层次关系集中式分布式并行的移动的XML DB2 双引擎 6 5数据的存储结构 一旦DBMS确定之后 数据库的存储结构就确定了 数据库设计人员在这方面能做的事情有限 有些DBMS也提供了一定的灵活性 如createcluster createindex等 2020 2 7 18 6 5数据的存储结构 确定存储结构的主要因素存取时间维护代价存储空间利用率数据库设计人员常常要对这些因素进行权衡 一般的DBMS也总是具有一定的灵活性供你选择 例如 簇集是把有关的记录集中在一个物理块内或物理上相邻的区域内存放 2020 2 7 19 6 6数据的存取路径 为什么需要存取路径 数据库必须支持多个用户的多种应用 因而也就必须提供对数据访问的多个入口 也就是说 对存储在磁盘上的同一数据要提供多条存取路径 存取路径的实现方法索引方法 INDEXB 树索引方法是关系数据库中经典的索引存取方法 使用非常普遍 簇集方法 CLUSTER ORACLE 哈希方法 HASH 内存 外存 2020 2 7 20 6 6数据的存取路径 关系数据库中存取路径的特点存取路径和数据是分离的 对用户来说是不可见的 存取路径可以由用户建立 删除 也可以由系统动态地建立 删除 例如 在执行查询时 DBMS的查询优化器会根据优化策略自动地建立索引 以提高查询的执行效率 存取路径的物理结构通常是顺序文件 树文件或散列文件的形式 2020 2 7 21 6 7物理设计的相关因素 应用的需求应用中事务的内容和事务出现的频率如何 应用需求如何随着应用环境的变化而变化 数据的特性数据库中某个属性值的分布 记录的长度及个数等等 数据的特性是如何随着数据库状态和应用需求的变化而变化 但是 在数据库设计的开始阶段很难准确估计数据的特性 2020 2 7 22 6 7物理设计的相关因素 综合因素在进行数据库的物理设计时还必须考虑DBMS 操作系统及计算机硬件的特性 DBMS只是整个计算机系统负荷的一部分 DBS的性能不但取决于数据库的设计 而且与计算机系统的运行环境有关 计算机系统是单用户的还是多用户的 数据库系统是分布的还是集中的 磁盘是数据库系统专用的 还是全系统共享的 诸如此类的问题 2020 2 7 23 6 7物理设计的相关因素 物理设计的调整在进行数据库的物理设计时 可供选择的方案很多 例如 各种文件结构和存取路径的选择 就可以形成庞大的组合 要穷尽各种可能 寻求最佳设计 是不可能的 数据库设计和一般产品的设计不一样 数据库设计只提供一个初始设计 在数据库运行过程中根据用户的要求和实际情况不断地调整 过分追求所谓的精确设计 企图一次成功 不符合数据库应用的特点 2020 2 7 24 6 7物理设计的相关因素 物理设计的过程不断变化的需求贯穿着整个应用的开发 物理设计是一个螺旋上升的过程 当然有时也会有反复 即推倒重来 物理设计的工具直到最近DBMS才提供工具帮助人们进行数据库的物理设计和调整 微软的SQLServer有一个调整向导 它可以对索引的生成和删除给出建议 IBMDB2V6也有一个调整向导 OracleExpert对全局的参数给出一个推荐的值 2020 2 7 25 举例 全国人口查询系统 2020 2 7 26 全国人口查询系统 问题描述公安部准备将全国各省市的人口基本信息采集入库 目前已确定每个具有身份证的年满16岁的中华人民共和国公民的基本信息包括两部分 文本信息 大约150K个字节图象信息 大约50K个字节建成后的系统供全国所有可能的用户使用 企业 学校 政府 旅店和其他 系统的主要功能就是按照条件进行查询 系统中的数据不会频繁地被更新 2020 2 7 27 全国人口查询系统 设计问题对于这样一个要求十分简单的查询系统 你认为数据库设计的难点是什么 2020 2 7 28 全国人口查询系统 海量信息的问题如果系统只包含13万人口的信息 那么系统的设计将会比较简单 假设数据库将全国13亿人口的信息都将存入系统 那么这个数据库的容量将达到多少 量变引起了质变系统的响应速度问题 要在很短的时间内响应每个事务系统的吞吐量问题要在单位时间内处理大量事务 2020 2 7 29 全国人口查询系统 采用什么样的硬件结构 因为同时访问这个系统的并发用户非常多 为了保证用户查询的响应时间 系统必须支持并行计算 因此可以采用支持并行计算的大型计算机 IBM的大型机机群系统同时还要考虑系统总线的吞吐量和磁盘阵列I O的吞吐量 2020 2 7 30 全国人口查询系统 选用什么样的DBMS 有没有商用的DBMS可以管理这样容量达几百T的数据 ORACLE号称可以管理1024TB的数据库 但是实际应用的一个最大数据库只有5 15TB SQLSERVER号称可以管理1048516TB的数据库 但目前最大的数据库是JimGray 解决办法需要将这些数据放到几十个数据库管理系统中去 而不是一个DBMS下的几十个数据库 必须选择那些支持数据分布和并行计算 并具有良好数据划分功能的数据库管理系统 2020 2 7 31 全国人口查询系统 数据分布与划分全国31个省市自然而然就构成了数据的一种分布方式 31个DBMSs 而在一个省内的数据库系统中 数据可以按照性别和年龄等属性进行划分 将数据放在不同的磁盘上 查询系统可以充分利用数据的分布与划分来满足性能上的要求 例如 查找一个名叫冯建华的男性青年 索引 数据集中存放 2020 2 7 32 全国人口查询系统 应用逻辑的处理如何在31个独立的数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论