数据库系统概念16章课后习题

合集下载

数据库系统原理教程课后习题答案

数据库系统原理教程课后习题答案

第1章绪论1 .试述数据、数据库、数据库系统、数据库管理系统得概念。

答:( l )数据( Data):描述事物得符号记录称为数据。

数据得种类有数字、文字、图形、图像、声音、正文等。

数据与其语义就是不可分得。

解析在现代计算机系统中数据得概念就是广义得。

早期得计算机系统主要用于科学计算,处理得数据就是整数、实数、浮点数等传统数学中得数据。

现代计算机能存储与处理得对象十分广泛,表示这些对象得数据也越来越复杂。

数据与其语义就是不可分得。

500 这个数字可以表示一件物品得价格就是500元,也可以表示一个学术会议参加得人数有500 人,还可以表示一袋奶粉重500 克。

(2)数据库( DataBase,简称DB) :数据库就是长期储存在计算机内得、有组织得、可共享得数据集合。

数据库中得数据按一定得数据模型组织、描述与储存,具有较小得冗余度、较高得数据独立性与易扩展性,并可为各种用户共享。

( 3 )数据库系统(DataBas。

Sytem ,简称DBS):数据库系统就是指在计算机系统中引入数据库后得系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。

解析数据库系统与数据库就是两个概念。

数据库系统就是一个人一机系统,数据库就是数据库系统得一个组成部分。

但就是在日常工作中人们常常把数据库系统简称为数据库。

希望读者能够从人们讲话或文章得上下文中区分“数据库系统”与“数据库”,不要引起混淆。

( 4 )数据库管理系统( DataBase Management sytem,简称DBMs ):数据库管理系统就是位于用户与操作系统之间得一层数据管理软件,用于科学地组织与存储数据、高效地获取与维护数据。

DBMS 得主要功能包括数据定义功能、数据操纵功能、数据库得运行管理功能、数据库得建立与维护功能。

解析DBMS 就是一个大型得复杂得软件系统,就是计算机中得基础软件。

目前,专门研制DBMS 得厂商及其研制得DBM S产品很多。

数据库系统课后习题及答案

数据库系统课后习题及答案

数据库系统课后习题及答案第1章绪论习题参考答案1、试述数据、数据库、数据库管理系统、数据库系统的概念。

(3、4、5页)答:描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于用户与操作系统之间的一层数据管理软件; 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

2.使用数据库系统有什么好处?(12页)答:数据库系统使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的阶段,这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。

3.试述文件系统与数据库系统的区别和联系。

(8、9、10页)答:1)数据结构化是数据库与文件系统的根本区别。

在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。

数据库系统实现整体数据的结构化,是数据库的主要特征之一。

2)在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。

而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。

3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。

而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。

5.试述数据库系统的特点。

(9、10、11页)答:数据结构化;数据的共享性高、冗余度低、易扩充;数据独立性高;数据由DBMS统一管理和控制。

6.数据库管理系统的主要功能有哪些? (4页)答:数据定义功能、数据操纵功能、数据库的运行管理、数据库的建立和维护功能。

7.试述数据模型的概念(13页)、数据模型的作用、数据模型的三个要素。

(14、15页)答:数据模型(Data Model)也是一种模型,它是现实世界数据特征的抽象。

(完整版)数据库课后习题及答案

(完整版)数据库课后习题及答案

第一章数据库系统概述选择题1实体-联系模型中,属性是指(C)A.客观存在的事物B.事物的具体描述C.事物的某一特征D.某一具体事件2对于现实世界中事物的特征,在E-R模型中使用(A)A属性描述B关键字描述C二维表格描述D实体描述3假设一个书店用这样一组属性描述图书(书号,书名,作者,出版社,出版日期),可以作为“键”的属性是(A)A书号B书名C作者D出版社4一名作家与他所出版过的书籍之间的联系类型是(B)A一对一B一对多C多对多D都不是5若无法确定哪个属性为某实体的键,则(A)A该实体没有键B必须增加一个属性作为该实体的键C取一个外关键字作为实体的键D该实体的所有属性构成键填空题1对于现实世界中事物的特征在E-R模型中使用属性进行描述2确定属性的两条基本原则是不可分和无关联3在描述实体集的所有属性中,可以唯一的标识每个实体的属性称为键4实体集之间联系的三种类型分别是1:1 、1:n 、和m:n5数据的完整性是指数据的正确性、有效性、相容性、和一致性简答题一、简述数据库的设计步骤答:1需求分析:对需要使用数据库系统来进行管理的现实世界中对象的业务流程、业务规则和所涉及的数据进行调查、分析和研究,充分理解现实世界中的实际问题和需求。

分析的策略:自下而上——静态需求、自上而下——动态需求2数据库概念设计:数据库概念设计是在需求分析的基础上,建立概念数据模型,用概念模型描述实际问题所涉及的数据及数据之间的联系。

3数据库逻辑设计:数据库逻辑设计是根据概念数据模型建立逻辑数据模型,逻辑数据模型是一种面向数据库系统的数据模型。

4数据库实现:依据关系模型,在数据库管理系统环境中建立数据库。

二、数据库的功能答:1提供数据定义语言,允许使用者建立新的数据库并建立数据的逻辑结构2提供数据查询语言3提供数据操纵语言4支持大量数据存储5控制并发访问三、数据库的特点答:1数据结构化。

2数据高度共享、低冗余度、易扩充3数据独立4数据由数据库管理系统统一管理和控制:(1)数据安全性(2)数据完整性(3)并发控制(4)数据库恢复第二章关系模型和关系数据库选择题1把E-R模型转换为关系模型时,A实体(“一”方)和B实体(“多”方)之间一对多联系在关系模型中是通过(A)来实现的A将A关系的关键字放入B关系中B建立新的关键字C建立新的联系D建立新的实体2关系S和关系R集合运算的结果中既包含S中元组也包含R中元组,但不包含重复元组,这种集合运算称为(A)A并运算B交运算C差运算D积运算3设有关系R1和R2,经过关系运算得到结果S,则S是一个(D)A字段B记录C数据库D关系4关系数据操作的基础是关系代数。

《数据库系统概论》课后习题及参考标准答案

《数据库系统概论》课后习题及参考标准答案

课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材 41页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。

数据:描述事物的符号记录称为数据。

数据的种类有文字、图形、图象、声音、正文等等。

数据与其语义是不可分的。

数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。

数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

数据库系统:数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。

数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。

数据库管理系统:数据库管理系统(DBMS)是位于用户与操作系统之间的一层数据管理软件。

用于科学地组织和存储数据、高效地获取和维护数据。

DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。

2.使用数据库系统有什么好处?使用数据库系统的好处是由数据库管理系统的特点或优点决定的。

使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。

为什么有这些好处,可以结合第 5题来回答。

使用数据库系统可以大大提高应用开发的效率。

因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由DBMS来完成。

此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。

数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。

从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。

使用数据库系统可以减轻数据库系统管理人员维护系统的负担。

因为DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。

数据库系统概论第五版课后习题完整答案王珊

数据库系统概论第五版课后习题完整答案王珊

数据库系统概论第五版课后习题完整答案第1章课后习题1.1 填空题1.关系数据库是一种______数据库______。

•关系•层次•网络•面向对象2.数据库系统的三级模式结构是______外模式______、______模式______和______内模式______。

•外模式•模式•内模式•逻辑模式•子模式1.2 选择题1.下列关于数据库系统的描述中,正确的是______B______。

A. 数据库系统是由软件、硬件、数据、人员和存储设备等部分组成的系统。

B. 数据库系统是一种计算机软件,用于管理和组织数据的集合。

C. 数据库系统的主要目标是提供对数据的有效存储、管理和访问。

D. 数据库系统一般包括文件系统、数据库管理系统和应用系统三大部分。

2.关于数据库系统中的数据模型,以下选项中错误的是______B______。

A. 数据模型描述了有关数据的概念和结构,是数据库系统中数据定义的工具。

B. 数据模型只有一种,不能根据不同的需求选择合适的数据模型。

C. 常见的数据模型有层次模型、网络模型、关系模型和面向对象模型等。

D. 数据模型可以帮助人们理解和使用数据库系统中的数据。

1.3 简答题1.数据库系统的特点有哪些?答:数据库系统具有以下特点:•数据独立性:数据库系统通过数据与应用程序之间的逻辑独立性和物理独立性,使得应用程序与数据的存储结构和存取方式解耦,提高了应对数据结构和存储方式变化的灵活性和可维护性。

•数据共享性:数据库系统能够支持多个用户对数据的并发访问,实现数据的共享与共用,提高了数据的利用率和工作效率。

•数据一致性:数据库系统通过强制数据完整性约束的方式,保证了数据的一致性,避免了数据冗余和不一致的问题。

•数据持久性:数据库系统能够对数据进行长期的持久性存储,确保数据的安全性和可靠性。

•数据的高效管理:数据库系统通过采用高效的数据存储结构和存取方式,提高了数据的管理和处理效率。

2.数据库系统的三级模式结构是什么?答:数据库系统的三级模式结构包括外模式、模式和内模式。

《数据库系统概论》课后习题及参考答案

《数据库系统概论》课后习题及参考答案

课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材41页)1.试述数据、数据库、数据库系统、数据库管理系统得概念。

数据:描述事物得符号记录称为数据。

数据得种类有文字、图形、图象、声音、正文等等。

数据与其语义就是不可分得。

数据库:数据库就是长期储存在计算机内、有组织得、可共享得数据集合。

数据库中得数据按一定得数据模型组织、描述与储存,具有较小得冗余度、较高得数据独立性与易扩展性,并可为各种用户共享。

数据库系统:数据库系统( DBS)就是指在计算机系统中引入数据库后得系统构成.数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。

数据库管理系统:数据库管理系统 (DBMS)就是位于用户与操作系统之间得一层数据管理软件.用于科学地组织与存储数据、高效地获取与维护数据.DBMS主要功能包括数据定义功能、数据操纵功能、数据库得运行管理功能、数据库得建立与维护功能.2.使用数据库系统有什么好处?使用数据库系统得好处就是由数据库管理系统得特点或优点决定得.使用数据库系统得好处很多,例如可以大大提高应用开发得效率,方便用户得使用,减轻数据库系统管理人员维护得负担等。

为什么有这些好处,可以结合第 5题来回答。

使用数据库系统可以大大提高应用开发得效率。

因为在数据库系统中应用程序不必考虑数据得定义、存储与数据存取得具体路径,这些工作都由DBMS来完成。

此外,当应用逻辑改变,数据得逻辑结构需要改变时,由于数据库系统提供了数据与程序之间得独立性。

数据逻辑结构得改变就是DBA得责任,开发人员不必修改应用程序,或者只需要修改很少得应用程序。

从而既简化了应用程序得编制,又大大减少了应用程序得维护与修改。

使用数据库系统可以减轻数据库系统管理人员维护系统得负担.因为 DBMS在数据库建立、运用与维护时对数据库进行统一得管理与控制,包括数据得完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。

数据库系统原理_华中科技大学中国大学mooc课后章节答案期末考试题库2023年

数据库系统原理_华中科技大学中国大学mooc课后章节答案期末考试题库2023年

数据库系统原理_华中科技大学中国大学mooc课后章节答案期末考试题库2023年1.数据库三级模式中,用户与数据库系统的接口是( )答案:外模式2.数据库领域三大经典数据模型是()答案:网状模型、层次模型及关系模型3.关系代数的五种基本运算是()答案:并、差、笛卡尔积、选择、投影4.在关系代数中,自然联接是由()组合而成的答案:投影、选择和笛卡尔积5.设有如下关系:职工关系EMP( E# ,ENAME,AGE,SEX),E#表示职工号,ENAME表示职工名,AGE表示职工年龄,SEX表示职工性别。

工作关系WORKS( E#,C#,SALARY) SALARY表示职工工资。

公司关系COMP(C#,CNAME,CITY) C#表示公司号,CNAME 表示公司名。

设工号为E6的职工在多个公司工作。

查询:至少在E6职工兼职的所有公司工作的职工工号。

下面关系代数表达式正确的是()答案:6.下列关系运算中花费时间可能最长的运算是()答案:笛卡尔积7.下列关于SQL语言的说法正确的是()答案:SQL是一种非过程化语言,无需了解存取路径8.以下关于模式与视图的关系,描述不正确的是()答案:如果建表时不定义表所属的模式,该表将不属于任何模式9.进行自然联结运算的两个关系必须具有()答案:公共属性组10.下列选项中与其它三个不属于同一种数据库保护机制的是()答案:级联删除11.授权定义经过编译后存储在()中答案:数据库12.若要允许将角色转授给其他用户,则相应的SQL授权语句中应包含的短语是()答案:WITH ADMIN OPTION13.数据库的强制存取控制机制禁止高许可证级别的用户更新低密级的数据对象是为了()答案:防止敏感信息的泄露14.下列选项属于数据完整性范畴的是()答案:数据相容性15.实体完整性的违约处理为()答案:拒绝执行16.关系的某个属性若有UNIQUE约束,则表示()答案:该属性的非空值不允许重复17.假设在某关系数据库中,选课表的外码“课号”参照课程关系的主码“课号”,且在创建该外码时包含了ON UPDATE CASCADE子句,则该子句意味着()答案:修改某门课程的课号会连带修改相关的选课记录中的课号18.假设在Student表上创建了一个AFTER UPDATE的行级触发器,若该表有1000条记录,执行语句:UPDATE Student SET Sno=Sno+10000; 则将执行触发动作次数为()答案:100019.已知关系模式R的属性全集U={X,Y,Z},且XY和YZ为R的候选码,则以下说法错误的是()答案:X→Z一定不成立20.已知关系模式R(XYZ)的函数依赖集F={Y→Z,Y→X,X→YZ },则在下列选项中,该关系满足的范式最高可达到()答案:BCNF21.以下关系模式中属于BCNF的是()答案:R(X,Y,Z) F={XY→Z}22.已知关系模式R(ABCD)的函数依赖集F={A→BC,C→B,C→D},则下列选项中,不被F逻辑蕴涵的是()答案:BC→AD23.答案:ABCD24.已知关系模式R(ABCD)的函数依赖集F={AB→C,BC→D,BD→A},则在以下选项中,R的候选码是()答案:BC25.已知关系模式R(ABCD)的函数依赖集F={A→BC,B→CD,C→AD},则在下列选项中,属于F的最小函数依赖集的是()答案:{A→B, B→C, C→A, C→D}26.已知关系模式R(U,F),其中U={A,B,C,D,E,F},F={AB→C,D→A,CD→E},现要将R分解为若干个具有依赖保持性和无损连接性的3NF,以下选项正确的是()答案:{ABC, AD, BD, CDE}27.在数据库设计中,关系规范化这一步骤属于()答案:逻辑设计阶段28.将以下E-R图转换成关系模式并进行适当的消解后,生成的关系模式中外码个数是()答案:2个29.现要设计一个高考志愿填报数据库,假设有如下语义:每个高校开设若干专业,不同高校可开设相同专业,每个考生可平行填报多个报考志愿,每个志愿需明确说明要报考哪个高校的哪个专业。

数据库系统概述习题及答案

数据库系统概述习题及答案

习题一第1章数据库系统概述一、填空题1. 在关系数据库中,一个元组对应表中。

解:一个记录(一行)2. 常用的数据模型有:、、和面向对象模型。

解:关系模型,层次模型,网状模型3. 用二维表来表示实体及实体之间联系的数据模型是。

解:关系模型4.关系模型数据库中最常用的三种关系运算是、、。

解:选择运算,投影运算,连接运算5. 在数据库系统中,数据的最小访问单位是。

解: 字段〔数据项〕对表进行水平方向的分割用的运算是。

解:选择运算7. 数据结构、和称为数据模型的三要素。

解:数据操作,数据约束条件8. 关系的完整性约束条件包括完整性、完整性和完整性三种。

解:用户定义,实体,参照二、单项选择题1. 对数据库进行规划、设计、协调、维护和管理的人员,通常被称为〔 D 〕。

A.工程师B. 用户C.程序员D. 数据库管理员2. 下面关于数据〔Data〕、数据库(DB)、数据库管理系统(DBMS)与数据库系统(DBS)之间关系的描述正确的选项是〔 B 〕。

A.DB包含DBMS和DBSB.DBMS包含DB和DBSC.DBS包含DB和DBMSD. 以上都不对3. 数据库系统的特点包括〔D 〕。

A.实现数据共享,减少数据冗余B. 具有较高的数据独立性、具有统一的数据控制功能C.采用特定的数据模型D. 以上特点都包括4. 以下各项中,对数据库特征的描述不准确的是〔 D 〕。

A.数据具有独立性B. 数据结构化C.数据集中控制D. 没有冗余5. 在数据的组织模型中,用树形结构来表示实体之间联系的模型称为( D )。

A.关系模型B. 层次模型C.网状模型D. 数据模型6. 在数据库中,数据模型描述的是( C ) 的集合。

A.文件B. 数据C.记录D. 记录及其联系7. 在关系数据库中,关系就是一个由行和列构成的二维表,其中行对应〔B 〕。

A. 属性B. 记录C.关系D. 主键8. 关系数据库管理系统所管理的关系是〔 C 〕。

A.一个二维表B. 一个数据库C.假设干个二维表D. 假设干个数据库文件9. 在同一所大学里,院系和教师的关系是〔 B 〕。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 假设两阶段锁定并不保证可串行性。

然后有一个组事务T0,T1……Tn−1,服从2pl和它产生的非序列化时间表。

一个非可序列化的时间表意味着一个周期在优先图,我们将显示,2pl 不能产生这种循环。

没有损失的通用性,假设以下循环存在于优先图: T0→T1→T2→……Tn−→1→T0。

让αi是Ti获得其最后一个锁(即Ti的锁点)的时间。

然后对所有事务,以便Ti →Tj,αi <αj。

然后我们有周期
α0 <α1 <α2 <……< <α0αn−1
因为α0 <α0是一个矛盾,没有这样的循环可以存在。

因此2pl无法产生非可序列化的时间表。

因为所有事物的属性,Ti→Tj,αi <αj,锁点排序的事务也是一个拓扑排序顺序图的优先级。

因此事物根据他们的锁点可以序列化。

2.a.锁定和解锁指令:
b执行这些事务可能导致死锁。

例如,考虑下面的部分计划:
现在的事务陷入死锁。

3. 严格的两阶段锁具有严格的2pl。

此外,它已经属性,对于两种相互冲突的交易,他们的提交订单是他们的可串行性秩序。

在一些系统中用户可能希望这种行为。

4. 证据就是Buckley和Silberschatz,并发控制在图协议通过使用边锁,Proc。

ACM SIGACT-SIGMOD的研讨会上数据库系统原理,1984。

5. 考虑下面的树型结构数据库图。

时间表可能在树协议但不低于2pl
6. 证据就是Kedem和Silberschatz,锁定协议:从独享共享锁,JACM卷。

30,4,1983。

7. 证据就是Kedem和Silberschatz,控制并发使用锁定协议,Proc。

年度IEEE研讨会的计算机基础科学,1979。

8. 证据就是Kedem和Silberschatz,控制并发使用锁定协议,Proc。

年度IEEE研讨会的计算机基础科学,1979。

9. 访问保护机制可以用于实现页面级锁。

考虑读第一,一个过程是允许读一页只有在它读-锁该页面。

这是通过使用mprotect实现最初关掉阅读所有页面的权限,因为这个过程。

当进程试图访问一个地址在一个页面上,保护违反发生。

处理程序关联保护违反然后请求一个页面上的读锁,锁后获得,它使用mprotect允许读访问页面的过程,最后允许过程继续。

写访问的处理是类似的。

10. 证据就是Korth,锁定原语在一个数据库系统,JACM卷。

30日,1983。

11. 它没有什么区别。

写协议是这样的,最近的写一项事务也是最大时间戳的那个。

12. 如果一个事务需要访问一个大的一组项目,多粒度锁需要更少的锁,而如果只有一个条目需要访问,单一的锁粒度系统允许这只有一个锁。

因为所有的所需的数据项锁和锁在一起的多个粒度方案,锁的开销很低,但并发也减少了。

13. 在并发性控制方案选择的16.3节(Ti)开始的时间戳的Ti给一个子集的日程允许通过选择验证(Ti)的时间戳。

使用Start(Ti)意味着,无论谁开始首先必须完成第一。

显然交易可以输入验证阶段在相同的顺序,他们开始执行,但这是过于限制。

既然选择验证(Ti)导致更少的非冲突性的事务重新启动,它提供更好的响应时间。

14.两相锁:用于简单的应用程序,一个单一的粒度是可以接受的。

如果有大的只读事务,多版本的协议将做得更好。

同样,如果死锁必须不惜一切代价加以避免,树协议将是可取的。

两相锁定与多个粒度锁:用于应用程序组合,一些应用程序访问单个记录和其他人访问整个关系或实质性的零部件。

2pl的瑕疵上面提到的同样适用于这一个。

这棵树协议:如果所有的应用程序可能会使用访问数据项在订单符合一个特定的偏序。

这个协议是免费的死锁,但事务将经常不得不锁不必要的节点来访问所需的节点。

时间戳排序:如果应用程序要求使用一个并发执行,相当于一个特定的序列排序(比如,到达的顺序),而不是任何串行订购。

但冲突是由回滚事务,而不是等待,和时间表是不可恢复的。

到让他们可恢复的,额外的开销和提高响应时间必须被容忍。

不合适的如果有长只读事务,因为他们会饿死,死锁缺席。

验证:如果两个并发执行事务冲突是低概率,这个协议可以用来方便地得到更好的并发性和良好的响应时间和低开销。

不适合高争用情况,许多浪费的工作被完成。

多版本的时间戳排序:使用时间戳排序是合适的,但如果是最理想的读请求永远等待。

共享时间戳排序协议其他的缺点的。

多版本两阶段锁定:该协议允许只读事务总是提交没有等待。

更新事务遵循2 pl,从而允许可恢复时间表与冲突解决等而不是回滚。

但问题的死锁回来,虽然只读事务不能参与他们。

保持多个版本添加空间和时间开销虽然,因此普通2pl可能在冲突情况下比低。

16. 一个事务等待A .磁盘I / O和b .获取锁的。

事务通常等待磁盘读取,而不是磁盘写,作为磁盘写操作是由缓冲机制在异步时尚和事务更新只有内存复制的磁盘块。

提出的技术本质上分离了等待时间为两个阶段。

第一阶段——事务是没有获得任何锁和执行不执行任何写数据库——占了几乎所有的等待时间对磁盘I/O,因为它读取所有数据块需要从磁盘如果他们不是已经在内存中。

第二阶段再执行的事务与严格的两阶段锁定账户上所有的等待时间获得锁。

第二阶段可能,虽然很少,涉及到一个小的等待时间对磁盘I/O如果一个磁盘块,事务需要刷新到内存(通过缓冲区管理器)在第二阶段的开始。

这项技术可能会增加并发事务花费几乎没有时间在磁盘I/O和持有的锁,因此锁持有时间缩短。

在第一阶段事务读取所有数据项的要求并不是已经在内存从磁盘。

获得的锁在第二阶段和事务并几乎没有磁盘I/O在这个阶段。

因此,事务避免花时间在磁盘I/O和持有的锁。

这项技术甚至可能增加磁盘吞吐量为磁盘I/O不是停滞不前的想要一个锁。

考虑下面的场景有严格的两阶段锁定协议:一个事务正在等待一个锁,磁盘是空闲的,有一些项目从磁盘读取。

在这种情况下,磁盘带宽都被浪费了。

但在提议的技术,事务将读取所有需要的物品从磁
盘没有获得任何锁和磁盘带宽可适当利用。

注意,该技术是最有用的,如果计算参与事务少,大部分的时间花费在磁盘I/O和等待锁,通常情况下就是在磁盘常驻数据库。

如果事务是计算密集型,可能会有浪费的工作。

一个优化是保存在一个临时的事务更新缓冲区,而不是重新执行事务,比较数据值的物品锁时使用的值之前。

如果两个值相同的所有商品,那么缓冲更新事务执行的,而不是重新执行整个事务
16. 考虑两个事务T1和T2如下所示。

让TS(T1)< TS(T2),让时间戳测试在每个操作除写(q)外是成功的。

当事务T1并时间戳测试编写(q)它发现,TS(T1)< r时间戳(q),因为TS(T1)< TS(T2)和r的时间戳(q) = TS(T2)。

因此写操作失败和事务T1回滚。

级联导致事务T2也被回滚,因为它使用的值项目p事务T1写的。

如果这种情况确实也是重复每次事务都是重新启动,这可能导致饥饿的两个事务。

17.在文本中,我们考虑了两种方法来处理虚位现象通过锁定。

粗粒度的方法显然也适合的时间戳。

B +树索引基础的方法可以适应时间戳,把指数桶的数据项与时间戳与他们相关联,并且要求所有的读访问使用索引。

我们现在表明,这个简单的方法是可行的。

假设一个事务Ti想访问所有元组与特定范围的搜索键值,使用B +树索引,搜索键。

Ti需要阅读所有的水桶,指数已键值在这个范围内。

可以看出,任何删除或插入一个元组的一个键-值在同样的范围将需要编写一个索引的水桶,Ti阅读。

因此,逻辑冲突转化为一个冲突在一个索引斗,虚位的现象是避免。

18. 注意:在这个问题中所提到的树协议的部分16 1 5中,不同于多粒度协议的16.4节和B +树协议并发性的协议在第16.9节。

一个策略是这里给出早期锁释放。

沿着树从根,如果当前访问节点的孩子不充分,释放锁上举行除了当前节点的所有节点,要求一个独占锁的子节点,之后让它释放锁在当前节点,然后下降到孩子。

另一方面,如果孩子满,保留所有持有的锁,要求一个独占锁上孩子,下降到它在得到锁。

在到达叶节点,开始插入过程。

这一战略的结果只持有锁的完整的索引树节点从叶向上,直到和包括第一非空节点。

一个优化上述策略是可能的。

即使当前节点的孩子已经满了,我们仍然可以释放锁在所有节点上,但当前的一个。

但在得到的子节点的独占锁,我们马上把它。

释放锁在当前节点和留住就锁在适当的分裂孩子,我们陷入这使它当前节点。

与这种优化,在任何时间最多举办两个锁一个父母和一个子节点。

相关文档
最新文档