书签 分享 收藏 举报 版权申诉 / 58
上传文档赚钱

类型高级数据库技术课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:5172647
  • 上传时间:2023-02-16
  • 格式:PPT
  • 页数:58
  • 大小:608.04KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《高级数据库技术课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    高级 数据库技术 课件
    资源描述:

    1、Advanced Database Technologies金培权(金培权()金培权金培权2Advanced Database Technologies金培权(金培权()n掌握数据库设计和优化的方法掌握数据库设计和优化的方法n深入掌握深入掌握DBMS的原理和技术的原理和技术n了解了解DBMS实现技术实现技术数据库原理/数据库系统及应用本科课程硕士课程高级数据库技术Application-OrientedSystem-Oriented3Advanced Database Technologies金培权(金培权()nPart 1:Application-Oriented关系数据库理论回顾关系数据库

    2、理论回顾数据库设计方法与案例分析数据库设计方法与案例分析nPart 2:System-Oriented数据库文件与系统结构数据库文件与系统结构索引结构索引结构查询处理查询处理缓冲区管理缓冲区管理恢复恢复锁与并发控制锁与并发控制4Advanced Database Technologies金培权(金培权()linked inhttp:/ Database Technologies金培权(金培权()n讲课实验讲课实验50学时讲授,学时讲授,20学时实验学时实验n教材教材Database System Implementation(2th),H.Garcia-Molina,J.D.Ullman,J.

    3、Widom.机械工业出版社机械工业出版社n参考文献参考文献Database Management Systems(3rd),Raghu Ramakrishnan et al.et al,清华大学出版社清华大学出版社Database System Concepts(3rd),Abraham Silberschatz et al,机械工业出版社机械工业出版社A First Course to Database System,J.Ullman et al.,机械工业出版社机械工业出版社数据库系统概论数据库系统概论(第第4版版),萨师煊,王珊萨师煊,王珊.高教出版社高教出版社6Advanced Dat

    4、abase Technologies金培权(金培权()n考核考核期末考试期末考试60作业作业20实验实验20n预备知识预备知识数据库系统原理,数据库系统原理,SQL,数据库应用编程,数据库应用编程7Advanced Database Technologies金培权(金培权()n上机软件上机软件Oracle/Sybase ASE/MS SQL ServerSybase PowerDesignerC+/Java8Advanced Database Technologies金培权(金培权()Chp.1 数据库系统概述数据库系统概述Chp.2 关系数据库回顾关系数据库回顾Chp.3 数据库设计数据库设

    5、计Chp.4 数据存储数据存储Chp.5 数据元素表示数据元素表示Chp.7 查询编译查询编译Chp.6 索引结构索引结构Chp.8 查询优化查询优化Chp.9 故障与恢复故障与恢复Chp.10 事务管理事务管理Advanced Database Technologies金培权(金培权()10Advanced Database Technologies金培权(金培权()n数据库系统的基本概念数据库系统的基本概念nDBMS实现问题实现问题n数据库设计问题数据库设计问题n数据库存取问题数据库存取问题n数据库技术的发展数据库技术的发展11Advanced Database Technologies金

    6、培权(金培权()n数据数据n数据库数据库n数据库模式数据库模式n数据库管理系统数据库管理系统n数据库系统数据库系统12Advanced Database Technologies金培权(金培权()n数据数据(Data)是数据库中存储的基本对象是数据库中存储的基本对象n数据的定义数据的定义人们用来反映客观世界而记录下来的可以鉴人们用来反映客观世界而记录下来的可以鉴别的符号别的符号n数据的种类数据的种类数值数据:数值数据:09非数值数据:字符、文字、声音、图形、图非数值数据:字符、文字、声音、图形、图像等像等13Advanced Database Technologies金培权(金培权()n数据的

    7、特点数据的特点数据与其语义是不可分的数据与其语义是不可分的n例子例子1:93是一个数据是一个数据语义语义1:学生某门课的成绩:学生某门课的成绩语义语义2:某人的体重:某人的体重语义语义3:软件学院:软件学院2011级学生人数级学生人数 n例子例子2:学生档案记录(:学生档案记录(李明,李明,197205,中国科,中国科大,大,1990)语义语义1:学生,出生年月,所在学校,毕业年份:学生,出生年月,所在学校,毕业年份语义语义2:学生,出生年月,录取大学,入学时间学生,出生年月,录取大学,入学时间14Advanced Database Technologies金培权(金培权()n数据库的定义数据

    8、库的定义 数据库数据库(Database,简称简称DB)是是长期储存长期储存在计算机内、在计算机内、有组织有组织的、的、可共享可共享的的大量数据大量数据的集合的集合n数据库的基本特征数据库的基本特征 数据按一定的数据模型组织、描述和储存数据按一定的数据模型组织、描述和储存 可为各种用户共享可为各种用户共享 数据间联系密切,具有最小的冗余度和较高的独立性数据间联系密切,具有最小的冗余度和较高的独立性服务于某个特定的应用服务于某个特定的应用n例:图书馆的图书数据库、机场的航班数据库、例:图书馆的图书数据库、机场的航班数据库、银行数据库银行数据库15Advanced Database Technol

    9、ogies金培权(金培权()n数据库模式是数据库中全体数据的逻辑结数据库模式是数据库中全体数据的逻辑结构和特征的描述构和特征的描述数据库数据库模式数据数据的语义16Advanced Database Technologies金培权(金培权()年龄年龄姓名姓名学号学号22王五王五00321李四李四00220张三张三001年龄年龄姓名姓名学号学号22王五王五00321李四李四00220张三张三001学生(学号:char,姓名:char,年龄:int)模式数据库17Advanced Database Technologies金培权(金培权()nDBMS(Database Management Sys

    10、tem),是计算机程序的集合,用于创建和维),是计算机程序的集合,用于创建和维护数据库护数据库位于操作系统和用户应用之间位于操作系统和用户应用之间总是基于某种数据模型总是基于某种数据模型数据库厂商的产品通常数据库厂商的产品通常指指DBMS,如,如Oracle8i、Microsoft SQL Server 2000、DB2、Informix等等18Advanced Database Technologies金培权(金培权()nDBS(DataBase System),指在计算机系统),指在计算机系统中引入了数据库后的系统,即采用了数据库技术中引入了数据库后的系统,即采用了数据库技术的计算机系统的

    11、计算机系统19Advanced Database Technologies金培权(金培权()终端用户终端用户终端用户终端用户终端用户终端用户应用程序应用程序应用程序开发工具应用程序开发工具数据库管理系统数据库管理系统操作系统操作系统数据库数据库.NET,JAVAOracle/DB2/SQL ServerWindows/Linux20Advanced Database Technologies金培权(金培权()n数据结构化数据结构化 n数据的共享性高,冗余度低数据的共享性高,冗余度低n数据独立性高数据独立性高 n数据由数据由DBMS统一管理和控制统一管理和控制21Advanced Databas

    12、e Technologies金培权(金培权()n如何设计和实现一个如何设计和实现一个DBMS来高效的组织来高效的组织和管理数据库?和管理数据库?DBMS实现问题实现问题n如何针对特定应用的需求设计一个合理的如何针对特定应用的需求设计一个合理的数据库结构?数据库结构?数据库设计问题数据库设计问题n应用程序如何有效地存取数据库中的数据应用程序如何有效地存取数据库中的数据?数据库存取问题数据库存取问题22Advanced Database Technologies金培权(金培权()nOracle、Informix、DB2、MS SQL Server、Mysql 数据结构:关系数据结构:关系数据操作:

    13、关系代数数据操作:关系代数&SQL存储:文件存储:文件23Advanced Database Technologies金培权(金培权()nUNIX下的关系型下的关系型DBMS,支持,支持SQLn实现细节实现细节关系通过文件(关系通过文件(ASCII)存储,)存储,e.g.R存储在存储在/usr/db/R中中数据库模式存储在特定的文件(数据库模式存储在特定的文件(ASCII)中)中Smith#123#CSJones#522#EER1#A#INT#B#STR R2#C#STR#A#INT 24Advanced Database Technologies金培权(金培权()%MEGATRON2000

    14、Welcome to MEGATRON 2000!&quit%25Advanced Database Technologies金培权(金培权()&select*from R#name id dept SMITH 123 CS&26Advanced Database Technologies金培权(金培权()&select A,B from R,S where R.A=S.A and S.C 100#A B 123 CAR 522 CAT&27Advanced Database Technologies金培权(金培权()n执行执行“select*from R where condition”:读

    15、数据字典获取读数据字典获取R的属性的属性读读R对应的文件,对于每一行数据对应的文件,对于每一行数据:检查条件检查条件如果条件满足,则输出如果条件满足,则输出28Advanced Database Technologies金培权(金培权()n执行执行“select A,B from R,S where condition”:读数据字典获取读数据字典获取R和和S的属性的属性读读R文件,对于每一行数据文件,对于每一行数据:读读S文件,对于每一行数据文件,对于每一行数据:生成连接元组生成连接元组检查条件检查条件若条件满足,则输出若条件满足,则输出29Advanced Database Technolo

    16、gies金培权(金培权()n可以定义表可以定义表n可以进行数据操作可以进行数据操作数据更新数据更新数据查询数据查询30Advanced Database Technologies金培权(金培权()n元组平铺在磁盘上元组平铺在磁盘上将将 EE改为改为 ECON,需要重写整个文件,需要重写整个文件ASCII存储过于昂贵存储过于昂贵删除操作同样代价很高删除操作同样代价很高31Advanced Database Technologies金培权(金培权()n低级的查询处理低级的查询处理例,例,select*from Student S,SCwhere S.sno=SC.sno and SC.credit

    17、 3先做连接比先做选择效率要低先做连接比先做选择效率要低未考虑更高效的连接算法未考虑更高效的连接算法32Advanced Database Technologies金培权(金培权()n没有缓冲区管理没有缓冲区管理数据直接从磁盘存取,磁盘数据直接从磁盘存取,磁盘I/O的代价昂贵的代价昂贵需要需要Cache来加速数据存取效率来加速数据存取效率DiskCacheSelect*From R Where R.A=1User 1Select*From R Where R.A=1User 2MemoryDisk1 1I/Opage2 23 34 45 533Advanced Database Technol

    18、ogies金培权(金培权()n没有并发控制没有并发控制多用户同时存取数据时数据一致性得不到保证多用户同时存取数据时数据一致性得不到保证DiskCacheRead(A)A=A+100Write(A)User T1存100Read(A)A=A-100Write(A)User T2取100MemoryDisk2 2A=600A:6001 11 1A=600A=5004 4A:7003 3A:700A:5005 5执行顺序:执行顺序:R1(A)R2(A)W1(A)W2(A)R1(A)R2(A)W1(A)W2(A)A=50034Advanced Database Technologies金培权(金培权(

    19、)n没有索引;数据查询效率低没有索引;数据查询效率低不能快速地根据给定键值查询元组不能快速地根据给定键值查询元组总是要读入整个关系总是要读入整个关系若若 page size=8 KB,page I/O 10ms1 MB(128 pages)-2.56 s128 MB(16384 pages)-163.8 s1 GB(131072 pages)-1310.7 s 21.8 min35Advanced Database Technologies金培权(金培权()n没有可靠性没有可靠性发生数据库系统故障时没有恢复机制发生数据库系统故障时没有恢复机制易出现数据不一致的情形易出现数据不一致的情形36Ad

    20、vanced Database Technologies金培权(金培权()n没有应用程序编程接口(没有应用程序编程接口(API)应用如何存取数据库?应用如何存取数据库?37Advanced Database Technologies金培权(金培权()n糟糕的数据字典组织糟糕的数据字典组织38Advanced Database Technologies金培权(金培权()n一个糟糕的一个糟糕的DBMS39Advanced Database Technologies金培权(金培权()n如何把现实世界数据表达到数据库系统中如何把现实世界数据表达到数据库系统中?n针对一个具体应用,应该如何构造一个适针对

    21、一个具体应用,应该如何构造一个适合于它的数据库模式?合于它的数据库模式?40Advanced Database Technologies金培权(金培权()n数据库模式设计不规范会带来一系列的问数据库模式设计不规范会带来一系列的问题题数据冗余数据冗余更新异常更新异常插入异常插入异常删除异常删除异常41Advanced Database Technologies金培权(金培权()TnameAddrC#CnameT1A1C1N1T1A1C2N2T1A1C3N3T2A2C4N4T2A2C5N5T3A3C6N6示例关系模式示例关系模式 R(Tname,Addr,C#,Cname)一个教师只有一个地址(户

    22、口所在地)一个教师只有一个地址(户口所在地)一个教师可教多门课程一个教师可教多门课程一门课程只有一个任课教师一门课程只有一个任课教师因此因此R的主码是(的主码是(C)42Advanced Database Technologies金培权(金培权()n教师教师T1教了三门课程,他的地址被重复存教了三门课程,他的地址被重复存储了储了2次次TnameAddrC#CnameT1A1C1N1T1A1C2N2T1A1C3N3T2A2C4N4T2A2C5N5T3A3C6N643Advanced Database Technologies金培权(金培权()n如果如果T1的地址变了,则需要改变的地址变了,则需要

    23、改变3个元组个元组的地址;若有一个未更改,就会出现数据的地址;若有一个未更改,就会出现数据不一致。但不一致。但DBMS无法获知这种不一致无法获知这种不一致TnameAddrC#CnameT1A1C1N1T1A1C2N2T1A1C3N3T2A2C4N4T2A2C5N5T3A3C6N644Advanced Database Technologies金培权(金培权()n如果要增加一名教师,但他还未带课,则如果要增加一名教师,但他还未带课,则C#和和Cname为空,但由于为空,但由于C是主码,为是主码,为空违反了实体完整性,所以这名教师将无空违反了实体完整性,所以这名教师将无法插入到数据库中法插入到数

    24、据库中TnameAddrC#CnameT1A1C1N1T1A1C2N2T1A1C3N3T2A2C4N4T2A2C5N5T3A3C6N645Advanced Database Technologies金培权(金培权()n如果教师如果教师T3现在不带课了,则需将现在不带课了,则需将T3的元的元组删去,但同时也把他的姓名和地址信息组删去,但同时也把他的姓名和地址信息以及以及C6课程信息删掉了课程信息删掉了TnameAddrC#CnameT1A1C1N1T1A1C2N2T1A1C3N3T2A2C4N4T2A2C5N5T3A3C6N646Advanced Database Technologies金培权

    25、(金培权()n方法:模式分解方法:模式分解方法方法1:R分解为分解为R1(Tname,Addr)R2(C#,Cname)授课信息丢失了授课信息丢失了47Advanced Database Technologies金培权(金培权()n方法:模式分解方法:模式分解方法方法1:R分解为分解为R1(Tname,Addr)R2(C#,Cname)方法方法2R1(Tname,Addr,C#)R2(C#,Cname)授课信息丢失了授课信息丢失了R1中问题依然存在中问题依然存在48Advanced Database Technologies金培权(金培权()n方法:模式分解方法:模式分解方法方法1:R分解为分

    26、解为R1(Tname,Addr)R2(C#,Cname)方法方法2R1(Tname,Addr,C#)R2(C#,Cname)方法方法3R1(Tname,Addr)R2(Tname,C#,Cname)授课信息丢失了授课信息丢失了R1中问题依然存在中问题依然存在基本解决问题,但又带来联接基本解决问题,但又带来联接查询代价,可能会导致数据库查询代价,可能会导致数据库性能不能满足需求性能不能满足需求49Advanced Database Technologies金培权(金培权()n到底什么样的数据库模式才合理?怎么分到底什么样的数据库模式才合理?怎么分解才能满足要求?标准是什么?如何实现解才能满足要求

    27、?标准是什么?如何实现?数据库设计要解决的主要问题数据库设计要解决的主要问题50Advanced Database Technologies金培权(金培权()n数据库的存取?数据库的存取?增、删、改、查增、删、改、查n数据库模式的存取?数据库模式的存取?n数据库访问控制信息数据库访问控制信息的存取?的存取?51Advanced Database Technologies金培权(金培权()DBMS数据库用户52Advanced Database Technologies金培权(金培权()n用户与数据库的唯一接口用户与数据库的唯一接口数据库语言数据库语言nDBMS支持用户通过数据库语言进行数据支持

    28、用户通过数据库语言进行数据存取存取n有三类数据库语言有三类数据库语言数据定义语言(数据定义语言(Data Definition Language,DDL)存取数据库模式存取数据库模式数据操纵语言(数据操纵语言(Data Manipulation Language,DML)存取数据库数据存取数据库数据数据库控制语言(数据库控制语言(Data Control Language,DCL)存取访问控制信息存取访问控制信息53Advanced Database Technologies金培权(金培权()SQLDDLDMLDCLCreate Table/Alter Table/Drop Table:定义基

    29、本表定义基本表Create View/Drop View:视图操作视图操作Create Index/Drop Index:索引操作索引操作InsertDeleteSelectUpdateGrantRevoke数据记录操作数据记录操作访问控制访问控制54Advanced Database Technologies金培权(金培权()nDBMS实现问题实现问题n数据库设计问题数据库设计问题n数据库存取问题数据库存取问题 55Advanced Database Technologies金培权(金培权()n1961:GE的的C.W.Bachman设计了历史上第一个设计了历史上第一个DBMS网状网状数据库

    30、系统数据库系统IDS(Integrated DataStore)n1968:IBM设计了层次数据库系统设计了层次数据库系统IMSn1969:CODASYL的的DBTG发表了网状数据模型报告,奠定了网状发表了网状数据模型报告,奠定了网状数据库技术数据库技术n1970:IBM的的E.F.Codd提出了关系数据模型,奠定了关系数据库提出了关系数据模型,奠定了关系数据库理论基础理论基础n1974:IBM的的Boyce和和Chamberlin设计了设计了SQL语言语言n19731976:E.F.Codd设计了设计了System R,M.Stonebraker设计设计了了Ingresn1976:IBM的的

    31、Jim Gray提出了一致性、锁粒度等设计,奠定了事务提出了一致性、锁粒度等设计,奠定了事务处理基础处理基础n1977:Larry Ellison创建了创建了Oracle公司,公司,1979年发布年发布Oracle 2.0,1986年年Oracle上市上市n1983:IBM发布发布DB2Charlie BachmanEdgar CoddJim Gray56Advanced Database Technologies金培权(金培权()n1985:面向对象数据库技术提出:面向对象数据库技术提出n1987:Sybase 1.0发布发布n1990:M.Stonebraker发表发表“第三代数据库系统宣

    32、言第三代数据库系统宣言”,提出对象,提出对象关系数据模型关系数据模型n19871994:Sybase和和Microsoft合作,发布合作,发布 Sybase SQL Server 4.2。破裂后。破裂后Sybase继续发布继续发布Sybase ASE 11.0n1996:Microsoft发布发布Microsoft SQL Server 6.5n1996:开源的:开源的MySQL正式发布正式发布n1998:提出了半结构化数据模型(:提出了半结构化数据模型(XML1.0)n2005,M.Stonebraker等开发完成等开发完成C-Store,Column-based DBMSn2007,NoS

    33、QL(非关系型数据库非关系型数据库)在在Web领域大行其道。领域大行其道。Amazon(SimpleDB/Dynamo)、Google(BigTable)、Facebook(Cassandra)、Yahoo(PNUTS)、Yales(HadoopDB)Michael Stonebraker57Advanced Database Technologies金培权(金培权()n数据库系统的基本概念数据库系统的基本概念nDBMS实现问题实现问题n数据库设计问题数据库设计问题n数据库存取问题数据库存取问题n数据库技术的发展数据库技术的发展58Advanced Database Technologies金培权(金培权()n关系数据库回顾关系数据库回顾

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:高级数据库技术课件.ppt
    链接地址:https://www.163wenku.com/p-5172647.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库