2000数据库概述及数据库的物理设计

上传人:宝路 文档编号:47970612 上传时间:2018-07-07 格式:PPT 页数:61 大小:533.78KB
返回 下载 相关 举报
2000数据库概述及数据库的物理设计_第1页
第1页 / 共61页
2000数据库概述及数据库的物理设计_第2页
第2页 / 共61页
2000数据库概述及数据库的物理设计_第3页
第3页 / 共61页
2000数据库概述及数据库的物理设计_第4页
第4页 / 共61页
2000数据库概述及数据库的物理设计_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《2000数据库概述及数据库的物理设计》由会员分享,可在线阅读,更多相关《2000数据库概述及数据库的物理设计(61页珍藏版)》请在金锄头文库上搜索。

1、 第二讲 SQL Server 2000数 据库概述及数据库 的物理设计一、SQL Server 概述nSQL Server 数据库nSQL Server 安全性n使用 SQL Servern数据库的类型n数据库对象nSQL Server 对象的引用n系统表n元数据检索一、SQL Server 概述1、数据库的类型系统数据库用户数据库master modeltempdbmsdbpubsNorthwindUser1distributionEmpNumEmpNumLastNameLastNameFirstNameFirstNameExtensionExtensionCtryCodeCtryCode

2、101911019210202LabrieLabrieMartinAngelaEvaJosex19891x19433x21467SPFRFRLastModLastModHRKarlDHRKarlDHRAmyL聚集索引聚集索引 Anderson Anderson Barr.2、数据库对象integerlongstringvarchar(20)char(6)char(2)longstring触发器EmployeePhoneView SELECT lastname, firstname, extension FROM employee存储过程 UpdatePhone主键外键检查 x#数据库对象概述n

3、数据库描述怎样使用数据库表示、管理和访问数据。n表描述怎样使用表存储数据行和定义多个表之间的关系。n索引描述怎样使用索引提高访问表中数据的速度。n视图描述各种视图及其作用,它们的作用在于为查看一个或多个表 中的数据提供变通方式。n存储过程描述这些 Transact-SQL 程序是怎样将业务规则、任务和进 程集中在服务器内的。n用触发器强制执行业务规则描述作为特殊类型存储过程的触发器的 功能,只有修改表中的数据时才执行这类存储过程。n全文索引描述全文索引是如何提高对存储在基于字符的列中数据( 如 varchar 和 text)的查询功能的。SQL Server 对象的引用n完全限定名server

4、.database.owner.objectn部分限定名lServer 以本地服务器的当前实例为默认值lDatabase 以当前数据库为默认值 lOwner 以当前登录账户在该数据库中对应的 用户名为默认值CREATE TABLE Northwind.dbo.OrderHistory .3、系统表n系统表存储与系统和数据库对象有关的信息(元 数据)n数据库目录存储与特定的数据库有关的元数据n数据库目录存储与整个系统和其他所有数据库有 关的元数据Master数据库中的系统表4、元数据检索n系统存储过程n系统函数和元数据函数n信息架构视图EXEC sp_help EmployeesSELECT U

5、SER_NAME(10)SELECT * FROM INFORMATION_SCHEMA.TABLES一、SQL Server 概述nSQL Server 数据库nSQL Server 安全性n使用 SQL Server2、SQL Server 安全性n登录验证n验证模式n数据库用户账户和用户角色n角色的类型n权限验证登录验证验证SQL Server 验证信任连接SQL Server 验证账户名和密码或SQL ServerWindows 2000 组或用户Windows 2000SQL Server 登录账户数据库用户账户和角色SQL Server 将登录分配 给用户账户和角色数据库用户数据库

6、角色Windows 2000 组用户SQL Server 登录账户SQL Server 验证信任连接SQL Server 验证账户名和密码SQL ServerWindows 2000或角色类型n固定服务器角色l服务器级的管理权限分组n固定数据库角色l数据库级的管理权限分组n用户定义的数据库角色 l创建自己的数据库角色来为公司里的一组职 员分配权限SQL Server 验证权限权限验证 验证通过; 执行命令验证没通过; 返回 错误2 2 3 3SELECT * FROM Members数据库用户执行命令1 1一、SQL Server 概述nSQL Server 数据库nSQL Server 安全

7、性n使用 SQL Server3、使用 SQL Servern管理 SQL Server 数据库 n实现 SQL Server 数据库 n为 SQL Server 选择应用程序体系结构 n用 API 设计应用程序 管理 SQL Server 数据库n常用管理任务nSQL Server 企业管理器nSQL Server 管理工具和向导nSQL Server 命令行提示符管理工具 nSQL Server 帮助和 SQL Server 联机丛书 实现 SQL Server 数据库n实现数据库n创建数据库和数据库对象n测试和调整应用程序和数据库n计划调度因特网因特网N N 层层智能智能 客户端(客户端

8、(2 2 层)层)智能智能 服务器(服务器(2 2 层)层)为 SQL Server 选择应用程序体系结构表示层业务层数据层浏览器客户表示层业务层数据层表示层业务层数据层业务层数据层表示层多层应用模型用 API 设计应用程序数据对象接口应用程序接口ADOADOOLE DBOLE DB其他数据源其他数据源关系型数据库关系型数据库ADO .NET 对象模型DataSetSQL Server .NET Data ProviderOLE DB .NET Data ProviderSQL Server 7.0 (及后续版本)OLE DB 数据源 (SQL Server 6.5)实验 :进入SQL Ser

9、ver 熟悉其操作界面二、数据库的物理设计n数据库在物理设备上的存储结构与存取方法 称为数据库的物理结构,它依赖于给定的计 算机系统。n为一个给定的逻辑数据模型选取一个最适合 应用要求的物理结构的过程,就是数据库的 物理设计。n 数据库的物理设计通常分为两步:n (1)确定数据库的物理结构,在关系数据 库中主要指存取方法和存储结构;n (2)对物理结构进行评价,评价的重点是 时间和空间效率。 数据库物理设计的步骤数据库物理设计确定数 据库的 物理结 构评价数据 库的物理 结构逻辑结 构设计数据库 实施物理 模型逻辑 模型评价的重点是时间和空间效率满足原设计要求重新设计或修改修改数据模型数据库的

10、物理设计1 数据库的物理设计的内容和方法2 关系模式存取方法选择3 确定数据库的存储结构4 评价物理结构1 数据库的物理设计的内容和方法n设计物理数据库结构的准备工作l 1. 充分了解应用环境,详细分析要运行的事务,以获得选择物理数据库设计所需参数l 2. 充分了解所用RDBMS的内部特征,特别是系统提供的存取方法和存储结构数据库的物理设计的内容和方法(续)n选择物理数据库设计所需参数l 数据库查询事务查询的关系查询条件所涉及的属性连接条件所涉及的属性查询的投影属性数据库的物理设计的内容和方法(续)n选择物理数据库设计所需参数(续)l数据更新事务被更新的关系每个关系上的更新操作条件所 涉及的属

11、性修改操作要改变的属性值l 每个事务在各关系上运行的频率和性能要 求数据库的物理设计的内容和方法(续)n关系数据库物理设计的内容l1. 为关系模式选择存取方法(建立存取路径)l2. 设计关系、索引等数据库文件的物理存储结构数据库的物理设计1 数据库的物理设计的内容和方法2 关系模式存取方法选择3 确定数据库的存储结构4 评价物理结构2 关系模式存取方法选择n数据库系统是多用户共享的系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。n物理设计的第一个任务就是要确定选择哪些存取方法,即建立哪些存取路径。关系模式存取方法选择(续)nDBMS常用存取方法l索引方法,目前主要是B+树索引

12、方法l聚簇(Cluster)方法lHASH方法一、索引存取方法的选择n选择索引存取方法的主要内容根据应用要求确定l 对哪些属性列建立索引l 对哪些属性列建立组合索引l 对哪些索引要设计为唯一索引索引存取方法的选择(续)n选择索引存取方法的一般规则l如果一个(或一组)属性经常在查询条件中出现,则考虑在 这个(或这组)属性上建立索引(或组合索引)l如果一个属性经常作为最大值和最小值等聚集函数的参数 ,则考虑在这个属性上建立索引l如果一个(或一组)属性经常在连接操作的连接条件中出现 ,则考虑在这个(或这组)属性上建立索引索引存取方法的选择(续)n关系上定义的索引数过多会带来较多的额 外开销l 维护索

13、引的开销l 查找索引的开销二、聚簇存取方法的选择n什么是聚簇(簇集)l为了提高某个属性(或属性组)的查询速度,把这个或这些属性(称为聚簇码)上具有相同值的元组集中存放在一个物理块内或物理上相邻的区域内称为聚簇l例, 设有一关系TEACHER(教师), 其上建有YR(出生年份)的索引。 若要查询1948年出生的教师, 设1948年出生的教师有100人, 在极端情况下, 这100个教师所对应的元组分散在100个不同的物理块中。n在做这种查询时,即使不考虑访问索引的I/O次数 ,访问数据也得要100次I/O,因为每访问一个物 理块需要一次I/O操作。 n如果按出生年份集中存放了TEACHER元组,则

14、每 取一个物理块,就可以获得多个合乎查询条件的 元组,从而显著地减少访问磁盘的次数。n现代的DBMS一般允许按某一簇集键(Cluster Key) 集中存放元组, 这种簇集键可以是复合的。 具 有同一簇集键值的元组, 尽可能放在同一物理块 中。 如果放不下, 可以向预留的空白区发展, 或链接多个物理块。 簇集后的元组好像葡萄一样 按串存放, 簇集之名由此而来。 建立聚簇索引 (复习)n聚簇索引l建立聚簇索引后,基表中数据也需要按指定的聚簇 属性值的升序或降序存放。也即聚簇索引的索引项顺 序与表中元组的物理顺序一致。例:CREATE CLUSTER INDEX Stusname ON Stude

15、nt(Sname);在Student表的Sname(姓名)列上建立一个聚簇 索引,而且Student表中的记录将按照Sname值的升序存放 建立聚簇索引 (复习)l在一个基本表上最多只能建立一个聚簇索引l聚簇索引的用途:对于某些类型的查询,可 以提高查询效率l聚簇索引的适用范围很少对基表进行增删操作很少对其中的变长列进行修改 操作 聚簇存取方法的选择(续)n聚簇的用途l1. 大大提高按聚簇属性进行查询的效率l2. 节省存储空间聚簇以后,聚簇码相同的元组集中在一起了,因而聚簇码值不必在每个元组中重复存储,只要在一组中存一次就行了聚簇存取方法的选择(续)n聚簇的局限性l1. 聚簇只能提高某些特定应

16、用的性能l2. 建立与维护聚簇的开销相当大 对已有关系建立聚簇,将导致 关系中元组移动其物理存储位置,并 使此关系上原有的索引无效,必须重 建。 当一个元组的聚簇码改变时, 该元组的存储位置也要做相应移动。聚簇存取方法的选择(续)n聚簇的适用范围l1. 既适用于单个关系独立聚簇,也适用于多个 关系组合聚簇 例:假设用户经常要按系别查询学生成绩 单,这一查询涉及学生关系和选修关系的连接操作 ,即需要按学号连接这两个关系,为提高连接操作 的效率,可以把具有相同学号值的学生元组和选修 元组在物理上聚簇在一起。这就相当于把多个关系 按“预连接”的形式存放,从而大大提高连接操作的 效率。聚簇存取方法的选择(续)l2. 当通过聚簇码进行访问或连接是该关系的主要应用,与聚簇码无关的其他访问很少或者 是次要的时,可以使用聚簇。尤其当SQL语句中包含有与聚簇 码有关的ORDER BY,GROUP BY, UNION,DISTINCT等子句或短语时,使用聚簇特别有利,可以省去对结果集 的排序操作聚簇存取方法的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号