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

上传人:无*** 文档编号:244214747 上传时间:2024-10-03 格式:PPT 页数:61 大小:533KB
返回 下载 相关 举报
2000数据库概述及数据库的物理设计_第1页
第1页 / 共61页
2000数据库概述及数据库的物理设计_第2页
第2页 / 共61页
2000数据库概述及数据库的物理设计_第3页
第3页 / 共61页
点击查看更多>>
资源描述
Slide Title,Body Text,Second level,Third level,Fourth level,Fifth level,第二讲,SQL Server 2000,数据库概述及数据库的物理设计,一、,SQL Server,概述,SQL Server,数据库,SQL Server,安全性,使用,SQL Server,数据库的类型,数据库对象,SQL Server,对象的引用,系统表,元数据检索,一、,SQL Server,概述,1,、数据库的类型,系统数据库,用户数据库,master,model,tempdb,msdb,pubs,Northwind,User1,distribution,EmpNum,LastName,FirstName,Extension,CtryCode,10191,10192,10202,Labrie,Labrie,Martin,Angela,Eva,Jose,x19891,x19433,x21467,SP,FR,FR,LastMod,HR,KarlD,HR,KarlD,HR,AmyL,聚集索引,Anderson,Anderson,Barr,.,2,、数据库对象,integer,longstring,varchar(20),char(6),char(2),longstring,触发器,EmployeePhoneView,SELECT,lastname,firstname, extension,FROM employee,存储过程,UpdatePhone,主键,外键,检查,x#,数据库对象概述,数据库,描述怎样使用数据库表示、管理和访问数据。,表,描述怎样使用表存储数据行和定义多个表之间的关系。,索引,描述怎样使用索引提高访问表中数据的速度。,视图,描述各种视图及其作用,它们的作用在于为查看一个或多个表中的数据提供变通方式。,存储过程,描述这些,Transact-SQL,程序是怎样将业务规则、任务和进程集中在服务器内的。,用触发器强制执行业务规则,描述作为特殊类型存储过程的触发器的功能,只有修改表中的数据时才执行这类存储过程。,全文索引,描述全文索引是如何提高对存储在基于字符的列中数据(如,varchar,和,text,)的查询功能的。,SQL Server,对象的引用,完全限定名,server.database.owner.object,部分限定名,Server,以本地服务器的当前实例为默认值,Database,以当前数据库为默认值,Owner,以当前登录账户在该数据库中对应的用户名为默认值,CREATE TABLE,Northwind.dbo.OrderHistory,.,.,.,3,、系统表,系统表存储与系统和数据库对象有关的信息(元数据),数据库目录存储与特定的数据库有关的元数据,数据库目录存储与整个系统和其他所有数据库有关的元数据,Master,数据库中的系统表,4,、元数据检索,系统存储过程,系统函数和元数据函数,信息架构视图,EXEC sp_help,E,mployees,SELECT USER_NAME(10),SELECT * FROM INFORMATION_SCHEMA.TABLES,一、,SQL Server,概述,SQL Server,数据库,SQL Server,安全性,使用,SQL Server,2,、,SQL Server,安全性,登录验证,验证模式,数据库用户账户和用户角色,角色的类型,权限验证,登录验证,验证,SQL Server,验证信任连接,SQL Server,验证账户名和密码,或,SQL,Server,Windows 2000,组或用户,Windows 2000,SQL Server,登录账户,数据库用户账户和角色,SQL Server,将登录分配,给用户账户和角色,数据库用户,数据库角色,Windows 2000,组用户,SQL Server,登录账户,SQL Server,验证信任连接,SQL Server,验证账户名和密码,SQL,Server,Windows,2000,或,角色类型,固定服务器角色,服务器级的管理权限分组,固定数据库角色,数据库级的管理权限分组,用户定义的数据库角色,创建自己的数据库角色来为公司里的一组职员分配权限,SQL Server,验证权限,权限验证,验证通过;,执行命令,验证没通过;,返回,错误,2,3,SELECT * FROM Members,数据库用户执行命令,1,一、,SQL Server,概述,SQL Server,数据库,SQL Server,安全性,使用,SQL Server,3,、使用,SQL Server,管理,SQL Server,数据库,实现,SQL Server,数据库,为,SQL Server,选择应用程序体系结构,用,API,设计应用程序,管理,SQL Server,数据库,常用管理任务,SQL Server,企业管理器,SQL Server,管理工具和向导,SQL Server,命令行提示符管理工具,SQL Server,帮助和,SQL Server,联机丛书,实现,SQL Server,数据库,实现数据库,创建数据库和数据库对象,测试和调整应用程序和数据库,计划调度,因特网,N,层,智能,客户端(,2,层),智能,服务器(,2,层),为,SQL Server,选择应用程序体系结构,表示层,业务层,数据层,浏览器,客户,表示层,业务层,数据层,表示层,业务层,数据层,业务层,数据层,表示层,多层应用模型,用,API,设计应用程序,数据对象接口,应用程序接口,ADO,OLE DB,其他数据源,关系型数据库,ADO .NET,对象模型,DataSet,SQL Server .NET,Data Provider,OLE DB .NET,Data Provider,SQL Server 7.0,(及后续版本),OLE,DB,数据源(,SQL Server 6.5,),实验 :进入,SQL Server,熟悉其操作界面,二、数据库的物理设计,数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统。,为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。,数据库的物理设计通常分为两步:,(1),确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;,(2),对物理结构进行评价,评价的重点是时间和空间效率。,数据库物理设计的步骤,数据库物理设计,确定数据库的物理结构,评价数据库的物理结构,逻辑结,构设计,数据库,实施,物理,模型,逻辑,模型,评价的重点是时间和空间效率,满足原设计要求,重新设计或修改,修改数据模型,数据库的物理设计,1,数据库的物理设计的内容和方法,2,关系模式存取方法选择,3,确定数据库的存储结构,4,评价物理结构,1,数据库的物理设计的内容和方法,设计物理数据库结构的准备工作,1.,充分了解应用环境,详细分析要运行的事务,以获得选择物理数据库设计所需参数,2.,充分了解所用,RDBMS,的内部特征,特别是系统提供的存取方法和存储结构,数据库的物理设计的内容和方法(续,),选择物理数据库设计所需参数,数据库查询事务,查询的关系,查询条件所涉及的属性,连接条件所涉及的属性,查询的投影属性,数据库的物理设计的内容和方法(续,),选择物理数据库设计所需参数,(,续,),数据更新事务,被更新的关系,每个关系上的更新操作条件所涉及的属性,修改操作要改变的属性值,每个事务在各关系上运行的频率和性能要求,数据库的物理设计的内容和方法(续,),关系数据库物理设计的内容,1.,为关系模式选择,存取方法,(,建立存取路径,),2.,设计关系、索引等数据库文件的,物理存储结构,数据库的物理设计,1,数据库的物理设计的内容和方法,2,关系模式存取方法选择,3,确定数据库的存储结构,4,评价物理结构,2,关系模式存取方法选择,数据库系统是多用户共享的系统,对同一个关系要建立多条存取路径才能满足多用户的多种应用要求。,物理设计的第一个任务就是要确定选择哪些存取方法,即建立哪些存取路径。,关系模式存取方法选择(续),DBMS,常用存取方法,索引方法,目前主要是,B+,树索引方法,聚簇(,Cluster,),方法,HASH,方法,一、索引存取方法的选择,选择索引存取方法的主要内容,根据应用要求确定,对哪些属性列建立索引,对哪些属性列建立组合索引,对哪些索引要设计为唯一索引,索引存取方法的选择(续),选择索引存取方法的一般规则,如果一个,(,或一组,),属性经常在查询条件中出现,则考虑在这个,(,或这组,),属性上建立索引,(,或组合索引,),如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引,如果一个,(,或一组,),属性经常在连接操作的连接条件中出现,则考虑在这个,(,或这组,),属性上建立索引,索引存取方法的选择(续),关系上定义的索引数过多会带来较多的额外开销,维护索引的开销,查找索引的开销,二、聚簇存取方法的选择,什么是聚簇(簇集),为了提高某个属性(或属性组)的查询速度,把这个或这些属性(称为聚簇码)上具有相同值的元组集中存放在,一个物理块内或物理上相邻的区域内,称为聚簇,例, 设有一关系,TEACHER(,教师,),, 其上建有,YR(,出生年份,),的索引。 若要查询,1948,年出生的教师, 设,1948,年出生的教师有,100,人,, 在极端情况下, 这,100,个教师所对应的元组分散在,100,个不同的物理块中。,在做这种查询时,即使不考虑访问索引的,I/O,次数,访问数据也得要,100,次,I/O,,,因为每访问一个物理块需要一次,I/O,操作。,如果按出生年份集中存放了,TEACHER,元组,则每取一个物理块,就可以获得多个合乎查询条件的元组,从而显著地减少访问磁盘的次数。,现代的,DBMS,一般允许按某一簇集键,(Cluster Key),集中存放元组, 这种簇集键可以是复合的。 具有同一簇集键值的元组, 尽可能放在同一物理块中。 如果放不下, 可以向预留的空白区发展, 或链接多个物理块。 簇集后的元组好像葡萄一样按串存放, 簇集之名由此而来。,建立,聚簇,索引 (复习),聚簇索引,建立聚簇索引后,基表中数据也需要按指定的聚簇属性值的升序或降序存放。也即聚簇索引的索引项顺序与表中元组的物理顺序一致。,例:,CREATE CLUSTER INDEX,Stusname,ON,Student(Sname,),;,在,Student,表的,Sname,(,姓名)列上建立一个聚簇索引,,而且,Student,表中的记录,将按照,Sname,值的升序存放,建立,聚簇,索引 (复习),在一个基本表上最多只能建立一个聚簇索引,聚簇索引的用途:对于某些类型的查询,可以提高查询效率,聚簇索引的适用范围,很少对基表进行增删操作,很少对其中的变长列进行修改操作,聚簇存取方法的选择(续),聚簇的用途,1.,大大提高按聚簇属性进行查询的效率,2.,节省存储空间,聚簇以后,聚簇码相同的元组集中在一起了,因而聚簇码值不必在每个元组中重复存储,只要在一组中存一次就行了,聚簇存取方法的选择(续),聚簇的局限性,1.,聚簇只能提高某些特定应用的性能,2.,建立与维护聚簇的开销相当大,对已有关系建立聚簇,将导致关系中元组移动其物理存储位置,并使此关系上原有的索引无效,必须重建。,当一个元组的聚簇码改变时,该元组的存储位置也要做相应移动。,聚簇存取方法的选择(续),聚簇的适用范围,1.,既适用于单个关系独立聚簇,也适用于多个关系组合聚簇,例:假设用户经常要按系别查询学生成绩单,这一查询涉及学生关系和选修关系的连接操作,即需要按学号连接这两个关系,为提高连接操作的效率,可以把具有相同学号值的学生元组和选修元组在物理上聚簇在一起。这就相当于把多个关系按“预连接”的形式存放,从而大大提高连接操作的效率。,聚簇存取方法的选择(续),2.,当通过聚簇码进行访问或连接是该关系的主要应用,与聚簇码无关的其他访问很少或者是次要的时,可以使用聚簇。,尤其当,SQL,语句中包含有与聚簇码有关的,ORDER BY,,,GROUP BY,,,UNION,,,DISTINCT,等子句或短语时,使用聚簇特别有利,可以省去对结果集的排序操作,聚簇存取方法的选择(续),选择聚簇存取方法,1.,设计候选聚簇,对经常在一起进行连接操作的关系可以建立组合聚簇;,如果一个关系的一组属性经常出现在相等比较条件中,则该单个关系可建立聚簇;,如果一个关系的一个,(,或一组,),属性上的值重复率很高,则此单个关系可建立聚簇。即对应每个聚簇码值的平均元组数不太少。太少了,聚簇的效果不明显。,聚簇存取方法的选择(续),2.,检查候选聚簇中的关系,取消其中不必要的关系,从独立聚簇中删除经常进行全表扫描的关系;,从独立,/,组合聚簇中删除更新操作远多于查询操作的关系;,从独立,/,组合聚簇中删除重复出现的关系,当,一个关系同时加入多个聚簇,时,必须,从这多个聚簇方案,(,包括不建立聚簇,),中选择一个较优的,即在这个聚簇上运行各种事务的总代价最小。,三、,HASH,存取方法的选择,哈稀(,HASH,),文件又称为散列文件, 是一种支持快速存取的文件存储方法。 如果用该方式存储一个文件, 必须指定文件的一个(或一组)域为查询的关键字, 该域常称为,HASH,域, 然后定义一个,HASH,域上的函数, 即,HASH,函数, 以此函数的值作为记录查询的地址。,选择,HASH,存取方法的规则,当一个关系满足下列两个条件时,可以选择,HASH,存取方法,该关系的属性主要出现在,等值连接,条件中或主要出现在,相等比较,选择条件中,该关系的大小可预知,而且不变;或,该关系的大小动态改变,但所选用的,DBMS,提供了动态,HASH,存取方法。,数据库的物理设计,1,数据库的物理设计的内容和方法,2,关系模式存取方法选择,3,确定数据库的存储结构,4,评价物理结构,3,确定数据库的存储结构,确定数据库物理结构的内容,1.,确定数据的存放位置和存储结构,关系,索引,聚簇,日志,备份,2.,确定系统配置,1.,确定数据的存放位置,影响数据存放位置和存储结构的因素,硬件环境,应用需求,存取时间,存储空间利用率,维护代价,这三个方面常常是相互矛盾的,例:消除一切冗余数据虽能够节约存储空间和减少维护代价,但往往会导致检索代价的增加,必须进行权衡,选择一个折中方案,。,确定数据的存放位置(续),基本原则,根据应用情况将,易变,部分与,稳定,部分,存取频率较高,部分与,存取频率较低,部分,分开存放,,,以提高系统性能,确定数据的存放位置(续),例:,数据库数据备份、日志文件备份等由于只在故障恢复时才使用,而且数据量很大,可以考虑存放在磁带上。,如果计算机有多个磁盘,可以考虑将表和索引分别放在不同的磁盘上,在查询时,由于两个磁盘驱动器分别在工作,因而可以保证物理读写速度比较快。,确定数据的存放位置(续),例(续):,可以将比较大的表分别放在两个磁盘上,以加快存取速度,这在多用户环境下特别有效。,可以将日志文件与数据库对象(表、索引等)放在不同的磁盘以改进系统的性能。,2.,确定系统配置,DBMS,产品一般都提供了一些存储分配参数,同时使用数据库的用户数,同时打开的数据库对象数,使用的缓冲区长度、个数,时间片大小,数据库的大小,装填因子,锁的数目,等等,确定系统配置(续),系统都为这些变量赋予了合理的缺省值。但是这些值不一定适合每一种应用环境,在进行物理设计时,需要根据应用环境确定这些参数值,以使系统性能最优。,在物理设计时对系统配置变量的调整只是初步的,在系统运行时还要根据系统实际运行情况做进一步的调整,以期切实改进系统性能。,数据库的物理设计,1,数据库的物理设计的内容和方法,2,关系模式存取方法选择,3,确定数据库的存储结构,4,评价物理结构,4,评价物理结构,评价内容,对数据库物理设计过程中产生的多种方案进行细致的评价,从中选择一个较优的方案作为数据库的物理结构,4,评价物理结构,评价方法,定量估算各种方案,存储空间,存取时间,维护代价,对估算结果进行权衡、比较,选择出一个较优的合理的物理结构,如果该结构不符合用户需求,则需要修改设计,本章结束,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!