分布式数据库系统其应用(徐俊刚 第三版)重点课后习题
- 格式:doc
- 大小:29.50 KB
- 文档页数:6
第一章习题参考答案一、选择题1. C2. B3. D4. C5. D6. A7. A8. B9. D 10. B 11. C 12. D 13. A 14. D 15. B16. C 17. D 18. A 19. D 20. A二、填空题1. 数据库系统阶段2. 关系3. 物理独立性4. 操作系统5. 数据库管理系统(DBMS)6. 一对多7. 独立性8. 完整性控制9. 逻辑独立性10. 关系模型11. 概念结构(逻辑)12. 树有向图二维表嵌套和递归13. 宿主语言(或主语言)14. 数据字典15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构第2章习题参考答案一、选择题1. A2. C3. C4. B5. B6. C7. B8. D9. C 10. A11. B 12. A 13. A 14. D 15. D二、填空题1. 选择(选取)2. 交3. 相容(或是同类关系)4. 并差笛卡尔积选择投影5. 并差交笛卡尔积6. 选择投影连接7. σf(R)8. 关系代数关系演算9. 属性10. 同质11. 参照完整性12. 系编号,系名称,电话办公地点13. 元组关系域关系14. 主键外部关系键15. R和S没有公共的属性第3章习题参考答案一、选择题1. B2. A3. C4. B5. C6. C7. B8. D9. A 10. D二、填空题结构化查询语言(Structured Query Language)数据查询、数据定义、数据操纵、数据控制外模式、模式、内模式数据库、事务日志NULL/NOT NULL、UNIQUE约束、PRIMARY KEY约束、FOREIGN KEY约束、CHECK约束聚集索引、非聚集索引连接字段行数定义系统权限、对象权限基本表、视图12.(1)INSERT INTO S VALUES('990010','李国栋','男',19)(2)INSERT INTO S(No,Name) VALUES('990011', '王大友')(3)UPDATE S SET Name='陈平' WHERE No='990009'(4)DELETE FROM S WHERE No='990008'(5)DELETE FROM S WHERE Name LIKE '陈%' 13.CHAR(8) NOT NULL14.SCo=Co15.ALTER TABLE StudentADDSGrade CHAR(10)第4章习题参考答案一、选择题1. B2. B3. D4. B5. C6. D7. B8. D9. C 10. A二、填空题1. 超键(或超码)2. 正确完备3. 属性集X的闭包X + 函数依赖集F的闭包F +4. 平凡的函数依赖自反性5. {AD→C} φ6. 2NF 3NF BCNF7. 无损连接保持函数依赖8. AB BC BD9. B→φ B→B B→C B→BC10. B→C A→D D→C11. AB 1NF12. AD 3NF第5章习题参考答案一、选择题1. B2. B3. C4. A5. C6. D7. A8. C9. D 10. D11. B 12. B 13. A 14. D 15. A二、填空题1、安全性控制、完整性控制、并发性控制、数据库恢复2、数据对象、操作类型3、授权粒度、授权表中允许的登记项的范围4、原始数据(或明文)、不可直接识别的格式(或密文)、密文5、事务、原子性、一致性、隔离性、持久性6、丢失更新、污读、不可重读7、封锁、排它型封锁、共享封锁8、利用数据的冗余9、登记日志文件、数据转储10、事务故障、系统故障、介质故障11、完整性12、登录账号、用户账号13、public14、服务器、数据库第6章习题参考答案一、选择题1. B2. C3. C4. A5. C6. B7. C8. B9. D 10. C11. D 12. B 13. B 14. D二、填空题1、数据库的结构设计、数据库的行为设计2、新奥尔良法3、分析和设计阶段、实现和运行阶段4、需求分析5、概念结构设计6、自顶向下、自底向上7、属性冲突、命名冲突、结构冲突8、逻辑结构设计9、确定物理结构、评价物理结构10、数据库加载11、运行和维护12、物理13、数据字典14、需求分析15、载入第7章习题参考答案一、选择题1. B2.C3.B4.D5.A二、填空题1.局部变量、全局变量2.- -、/*……*/3.DECLARE4.SQL、流程控制5.AFTER 触发器、INSTEAD OF 触发器6.插入表、删除表7.数据库备份、事务日志备份、差异备份、文件和文件组备份8.简单还原、完全还原、批日志还原9.硬盘、磁带、管道。
分布式数据库原理与应用题库1. 引言随着互联网的快速发展和大数据时代的到来,数据量的爆炸式增长对数据库的存储和处理能力提出了更高的要求。
传统的单节点数据库已经难以满足这一需求,而分布式数据库应运而生。
本文将介绍分布式数据库的原理和应用,并提供一些应用题供读者练习,加深对该主题的理解。
2. 分布式数据库的原理分布式数据库是将数据存储在多个物理节点上的数据库系统,节点之间通过网络进行通信和协作。
它具有以下几个核心原理:2.1 数据分片和副本为了实现数据的分布式存储和高可用性,分布式数据库将数据进行分片处理,并将每个分片的副本存储在不同的节点上。
这样可以提高数据访问的并发性和容错性。
2.2 数据一致性和并发控制在分布式数据库中,多个节点同时操作数据可能会造成数据的不一致。
因此,分布式数据库需要实现一致性协议来保证数据的一致性,并使用并发控制技术来处理并发操作。
2.3 数据通信和数据同步分布式数据库中的节点通过网络进行数据通信和数据同步。
节点之间的通信可以通过消息传递、RPC(Remote Procedure Call)等方式实现。
数据同步可以通过数据复制和数据冗余等方式实现。
3. 分布式数据库的应用分布式数据库广泛应用于互联网、云计算、物联网等领域,它具有高可用性、可扩展性和容错性等优势。
以下是一些分布式数据库的常见应用案例:3.1 电商平台在电商平台中,用户的购物行为产生了大量的交易数据,而这些数据需要快速地进行存储和分析。
分布式数据库可以实现海量数据的存储和查询,并提供高性能的数据处理能力,从而提高用户的购物体验。
3.2 物联网物联网设备产生的数据通常具有大规模、高并发的特点。
分布式数据库可以实现对这些数据的实时监控和存储,同时提供高可靠性和高性能的数据处理能力。
3.3 金融系统金融系统需要处理大量的交易数据,并保证数据的安全和一致性。
分布式数据库可以有效地管理和存储金融数据,并提供高度可靠的事务处理能力。
数据库原理及应用(第三版)钱雪忠等主编北京邮电大学出版社2010.05第第11章章 绪绪论论一、选择题1、A2、A3、A4、A5、B6、C7、C8、A9、A10、C1、( )是位于用户与操作系统之间的一层数据管理软件。
数据库在建立、使用和维护时由其统一管理、统一控制。
A .DBMSB .DBC .DBSD .DBA2、文字、图形、图像、声音、学生的档案记录、货物的运输情况等,这些都是( )A .DATAB .DBSC .DBD .其他3、目前( )数据库系统已逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统。
A .关系B .面向对象C .分布D .对象-关系4、( )是刻画一个数据模型性质最重要的方面。
因此在数据库系统中,人们通常按它的类型来命名数据模型。
A .数据结构B .数据操纵C .完整性约束D .数据联系5、( )属于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。
A .数据模型B .概念模型C .非关系模型D .关系模型6、当数据库的( )改变了,由数据库管理员对( )映象作相应改变,可以使( )保持不变,从而保证了数据的物理独立性。
(1)模式 (2) 存储结构 (3)外模式/模式 (4)用户模式 (5)模式/内模式A .(1)和(3)和(4)B .(1)和(5)和(3)C .(2)和(5)和(1)D .(1)和(2)和(4)7、数据库的三级体系结构即子模式、模式与内模式是对( )的三个抽象级别。
A .信息世界B .数据库系统C .数据D .数据库管理系统8、英文缩写DBA 代表( )A .数据库管理员B .数据库管理系统C .数据定义语言D .数据操纵语言9、模式和内模式( )。
A .只能各有一个B .最多只能有一个C .至少两个D .可以有多个10、在数据库中存储的是( )。
A.数据 B.信息 C.数据和数据之间的联系 D.数据模型的定义二、填空题1、数据库就是长期储存在计算机内_有组织的__、_可共享__的数据集合。
一、何为分布式数据库系统?一个分布式数据库系统有哪些特点?答案:分布式数据库系统通俗地说,是物理上分散而逻辑上集中的数据库系统。
分布式数据库系统使用计算机网络将地理位置分散而管理和控制又需要不同程度集中的多个逻辑单位连接起来,共同组成一个统一的数据库系统。
因此,分布式数据库系统可以看成是计算机网络与数据库系统的有机结合。
一个分布式数据库系统具有如下特点:物理分布性,即分布式数据库系统中的数据不是存储在一个站点上,而是分散存储在由计算机网络连接起来的多个站点上,而且这种分散存储对用户来说是感觉不到的。
逻辑整体性,分布式数据库系统中的数据物理上是分散在各个站点中,但这些分散的数据逻辑上却构成一个整体,它们被分布式数据库系统的所有用户共享,并由一个分布式数据库管理系统统一管理,它使得“分布”对用户来说是透明的。
站点自治性,也称为场地自治性,各站点上的数据由本地的DBMS管理,具有自治处理能力,完成本站点的应用,这是分布式数据库系统与多处理机系统的区别。
另外,由以上三个分布式数据库系统的基本特点还可以导出它的其它特点,即:数据分布透明性、集中与自治相结合的控制机制、存在适当的数据冗余度、事务管理的分布性。
二、简述分布式数据库的模式结构和各层模式的概念。
分布式数据库是多层的,国内分为四层:全局外层:全局外模式,是全局应用的用户视图,所以也称全局试图。
它为全局概念模式的子集,表示全局应用所涉及的数据库部分。
全局概念层:全局概念模式、分片模式和分配模式全局概念模式描述分布式数据库中全局数据的逻辑结构和数据特性,与集中式数据库中的概念模式是集中式数据库的概念视图一样,全局概念模式是分布式数据库的全局概念视图。
分片模式用于说明如何放置数据库的分片部分。
分布式数据库可划分为许多逻辑片,定义片段、片段与概念模式之间的映射关系。
分配模式是根据选定的数据分布策略,定义各片段的物理存放站点。
局部概念层:局部概念模式是全局概念模式的子集。
第1章数据库概论1.1 基本内容分析1.1.1 本章的重要概念(1)DB、DBMS和DBS的定义(2)数据管理技术的发展阶段人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库技术阶段等各阶段的特点。
(3)数据描述概念设计、逻辑设计和物理设计等各阶段中数据描述的术语,概念设计中实体间二元联系的描述(1:1,1:N,M:N)。
(4)数据模型数据模型的定义,两类数据模型,逻辑模型的形式定义,ER模型,层次模型、网状模型、关系模型和面向对象模型的数据结构以及联系的实现方式。
(5)DB的体系结构三级结构,两级映像,两级数据独立性,体系结构各个层次中记录的联系。
(6)DBMSDBMS的工作模式、主要功能和模块组成。
(7)DBSDBS的组成,DBA,DBS的全局结构,DBS结构的分类。
1.1.2本章的重点篇幅(1)教材P23的图1.24(四种逻辑数据模型的比较)。
(2)教材P25的图1.27(DB的体系结构)。
(3)教材P28的图1.29(DBMS的工作模式)。
(4)教材P33的图1.31(DBS的全局结构)。
1.2 教材中习题1的解答1.1 名词解释·逻辑数据:指程序员或用户用以操作的数据形式。
·物理数据:指存储设备上存储的数据。
·联系的元数:与一个联系有关的实体集个数,称为联系的元数。
·1:1联系:如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么E1和E2的联系称为“1:1联系”。
·1:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中一个实体有联系,那么E1和E2的联系是“1:N联系”。
·M:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1和E2的联系称为“M:N联系”。
·数据模型:能表示实体类型及实体间联系的模型称为“数据模型”。
《数据库原理与应用》(第三版)习题参考答案第 1 章数据库概述1.试说明数据、数据库、数据库管理系统和数据库系统的概念。
答:数据是描述事物的符号记录。
数据库是长期存储在计算机中的有组织的、可共享的大量数据的集合。
数据库管理系统是一个专门用于实现对数据进行管理和维护的系统软件。
数据库系统是指在计算机中引入数据库后的系统,一般由数据库、数据库管理系统(及相关的实用工具)、应用程序、数据库管理员组成。
2.数据管理技术的发展主要经历了哪几个阶段?答:文件管理和数据库管理。
3.与文件管理相比,数据库管理有哪些优点?答:与文件系统管理数据相比,数据库系统管理数据带来了如下好处:将相互关联的数据集成在一起,较少的数据冗余,程序与数据相互独立,保证数据的安全可靠,最大限度地保证数据的正确性,数据可以共享并能保证数据的一致性。
4.在数据库管理方式中,应用程序是否需要关心数据的存储位置和存储结构?为什么?答:不需要。
因为数据库管理系统提供了逻辑独立性和物理独立性。
5.在数据库系统中,数据库的作用是什么?答:数据库是数据的汇集,它以一定的组织形式保存在存储介质上。
6.在数据库系统中,应用程序可以不通过数据库管理系统而直接访问数据文件吗?答:不能7.数据独立性指的是什么?它能带来哪些好处?答:数据独立性是指应用程序不会因数据的物理表示方式和访问技术的改变而改变,即应用程序不依赖于任何特定的物理表示方式和访问技术,它包含两个方面:逻辑独立性和物理独立性。
物理独立性是指当数据的存储位置或存储结构发生变化时,不影响应用程序的特性;逻辑独立性是指当表达现实世界的信息内容发生变化时,不影响应用程序的特性。
8.数据库系统由哪几部分组成,每一部分在数据库系统中的作用大致是什么?答:数据库系统一般包括数据库、数据库管理系统(及相应的实用工具)、应用程序和数据库管理员四个部分。
数据库是数据的汇集,它以一定的组织形式保存在存储介质上;数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能;应用程序专指以数据库数据为基础的程序,数据库管理员负责整个数据库系统的正常运行。
数据库原理及应用教程第三版课后答案1. 数据库原理概述。
数据库是指按照数据结构来组织、存储和管理数据的仓库,它是存储数据的集合,是数据按照一定的数据模型组织、描述和存储的仓库。
数据库原理是指数据库的基本概念、基本理论和基本方法。
数据库原理主要包括数据库的基本概念、数据库的基本结构、数据库的基本操作、数据库的基本设计和数据库的完整性、安全性等方面的内容。
2. 数据库应用教程第三版课后答案。
2.1 数据库原理基础知识。
数据库原理是数据库领域的基础理论,它主要包括数据模型、数据库结构、数据库设计、数据库语言和数据库管理系统等内容。
数据库原理是数据库应用的基础,它的学习对于理解数据库的工作原理和实际应用具有重要意义。
2.2 数据库原理及应用教程第三版课后答案。
1) 数据库的基本概念包括数据、数据库、数据库管理系统、数据库系统和数据库技术等内容。
2) 数据库的基本结构包括数据模型、数据结构、数据操作和数据完整性等内容。
3) 数据库的基本操作包括数据的插入、删除、修改和查询等内容。
4) 数据库的基本设计包括数据库的逻辑设计和物理设计等内容。
5) 数据库的完整性和安全性包括数据的完整性约束和安全性约束等内容。
2.3 数据库应用教程第三版课后答案。
数据库应用教程第三版的课后答案主要包括数据库的基本概念、数据库的基本结构、数据库的基本操作、数据库的基本设计和数据库的完整性、安全性等方面的内容。
通过学习这些课后答案,可以加深对数据库原理及应用的理解,提高对数据库的应用能力。
3. 数据库原理及应用教程第三版课后答案的重要性。
数据库原理及应用教程第三版课后答案是数据库课程的重要组成部分,它可以帮助学生巩固课堂上所学到的知识,加深对数据库原理及应用的理解。
通过做课后习题,可以检验学生对数据库知识的掌握程度,帮助他们发现和解决学习中存在的问题。
同时,课后答案还可以为教师提供教学参考,指导教学工作。
4. 结语。
数据库原理及应用教程第三版课后答案是数据库课程的重要组成部分,它对于学生巩固知识、提高应用能力具有重要意义。
《数据库原理与应用》(第三版)习题参考答案第1章数据库概述1.试说明数据、数据冷、数据库管理系统和数据库系统的概念。
答:数据是描述事物的符号记录。
数据库是长期存储在计算机中的有组织的、可共享的人量数据的集合。
数据用管理系统是•个专门用于实现对数据进行管理和维护的系统软件。
数据库系统是指在计算机中引入数据库后的系统,•般由数据库、数据库管理系统(及相关的实用工具)、应用程序、数据库管理员组成。
2.数据管理技术的发展主要经历了哪几个阶段?答:文件管理和数据库管理。
3.与文件管理和比,数据库管理有哪些优点?答:与文件系统管理数据相比,数据库系统管理数据带来了如下好处:将和互关联的数据集成在•起,较少的数据冗余,程序与数据相互独立,保证数据的安全可靠,最人限度地保证数据的正确性,数据可以共享并能保证数据的一致性。
4.在数据库管理方式中,应用程序是否需要关心数据的存储位置和存储结构?为什么?答:不需要。
因为数据库管理系统提供了逻辑独立性和物理独立性。
5.在数据库系统中,数据库的作用是什么?答:数据库是数据的汇集,它以•定的组织形式保存在存储介质上。
6.在数据丿牟系统中,应用程序可以不通过数据库管理系统而宜接访问数据文件吗?答:不能7.数据独立性指的是什么?它能带来哪些好处?答:数据独立性是指应用程序不会因数据的物理衣示方式和访问技术的改变而改变,即应用程序不依赖于任何特定的物理农示方式和访问技术,它包含两个方面:逻辑独立性和物理独立性。
物理独立性是指当数据的存储位置或存储结构发生变化时,不影响应用程序的特性;逻辑独立性是指当农达现实世界的信息内容发生变化时,不影响应用程序的特性。
8.数据悴系统由哪几部分组成,每•部分在数据帰系统中的作用大致是什么?答:数据库系统•般包括数据库、数据库管理系统(及相应的实用工具)、应用程序和数据库管理员四个部分。
数据库是数据的汇集,它以•定的组织形式保存在存储介质上:数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能:应用程序专指以数据库数据为基础的程序,数据悴管理员负贵整个数据库系统的正常运行。
第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.1 采用分布式数据库系统的主要原因是什么?集中式数据库系统的不足:1.数据按实际需要已经在网络上分布存储,如果再采用集中式处理,势必造成附加成本和通信开销,2,。
应用程序集中在一台计算机上运行,一旦该计算机发生故障,将会影响整个系统的运行,可靠性不高。
3集中式处理导致系统的规模和配置都不够灵活,系统的可扩展性较差。
1.2 分布式数据库系统有哪几种分类方法?这些方法是如何分类的?1.按局部数据库管理系统的数据模型的类型分类。
(1)同构型:同构同质型:各个站点上的数据库的数据模型都是同一类型的,而且是同一种DBMS。
同构异质型:各个站点上的数据库的数据模型都是同一类型的,但不是同一种DBMS。
(2)异构型:各个站点上的数据库的数据模型各不相同。
2.按分布式数据库系统全局控制系统类型分类(1)全局控制集中型DDBS(2)全局控制分散型DDBS(3)全局控制可变型DDBS1.3 什么是分布式数据库系统?它具有那些主要特点?怎样区分分布式数据库系统与只提供远程数据访问的网络数据库系统?分布式数据库系统是物理上分散而逻辑上集中的数据库系统,其可以看成是计算机网络和数据库系统的有机结合。
基本特点:物理分布性、逻辑整体性、站点自治性。
导出特点:数据分布透明性、集中与自治相结合的机制、存在适当的数据冗余度、事务管理的分布性。
区分:分布式数据库的分布性是透明的,用户感觉不到远程与本地结合的接缝的存在。
1.6分布式DBMS具有哪些集中式DBMS不具备的功能?数据跟踪,分布式查询处理,分布式事务管理,复制数据管理,安全性,分布式目录管理1.14分布式数据库系统的主要优点是什么?存在哪些技术问题?分布式数据库系统优点:良好地可靠性和可用性;提高系统效率,降低通信成本;较大的灵活性和可伸缩性;经济型和保护投资;适应组织的分布式管理和控制;数据分布式具有透明性和站点具有较好的自治性;提高了资源利用率;实现了数据共享。
分布式数据库系统中存在的技术问题:数据的分割、分布和冗余度;异构数据库的互联;分布式数据库系统的查询处理;分布式数据库系统的更新处理;分布式数据库系统的并发控制;分布式数据库系统的恢复控制;目录管理;数据安全性和保密性处理。
第三章3.2 请用自己的语言阐述分布式数据库系统的两种设计方法及其适用范围。
创建方法有:组合法、重构法组合法的特点:剖析网络功能;剖析原有数据库系统;解决数据的一致性、完整性和可靠性;难度较大;组合法适用范围:通常是异构或者同构异质DDBS重构法的特点:根据实现环境和用户需求;按照DDBS的设计思想和方法;从总体设计做起,包括LDBS,重新建立一个DDBS;可有效解决数据一致性、完整性和可靠性问题。
重构法的适用范围:通常是同构异质或同构同质DDBS3.3数据分片应遵守哪些基本原则?数据分片有哪些基本类型和方法?数据分片应遵守的基本原则:完整性条件,可重构性条件,不相交条件。
数据分片的基本类型和方法:水平分片和垂直分片3.5 数据分布策略有哪几种形式?如何把设计好的数据片段分配到相应的站点上?数据分布策略:集中式、分割式、复制式、混合式。
(P86)分配方法:非冗余分配----最佳适应法。
冗余分配-----所有得益站点法、附加复制法。
3.7为什么说在分布式数据系统中,数据独立性这一目标比集中式数据库系统更为重要,也更为复杂?在集中式数据库中,数据独立性包括逻辑独立性与数据的物理独立性,分别表示用户程序与数据的全局逻辑结构和数据的物理结构无关。
在分布式数据库中,除了数据的逻辑独立性与数据的物理独立性之外,还有数据的分布独立性。
所谓数据分布独立性是指用户或者用户程序使用分布式数据库如同使用集中式数据库那样,不必关心全局数据的分布情况,包括全局数据的逻辑分片情况,逻辑片段的站点位置分片情况,以及各站点上数据库的数据模型等,也就是说全局数据的逻辑分片、片段的物理位置分配、各站点数据库的数据模型等情况对用户和用户程序是透明的。
分布独立性也称为分布透明性,分布透明性包括三个层次:分片透明性、位置透明性和局部数据模型透明性。
第四章:4.3概述基于关系代数等价变换的查询优化算法的基本原则和实现步骤。
基于关系代数等价变换的查询优化的基本原则:把查询问题转变为关系代数表达式,分析得到查询树(语法树)。
进行从全局到片段的变换得到基于片段上的查询树,然后利用关系代数等价变换规则优化算法,,尽可能地先执行选择和投影操作。
基于关系代数等价变换查询优化的主要实现步骤如下:1.将一个查询问题转换成关系代数表达式。
2.将关系代数表达式转换为查询树,对一个关系代数表达式进行语法分析,可以得到一棵语法树3.从全局查询到片段查询的变换:这个变换的典型方法是把基于全局关系的查询树中的全局关系名,用其重构该全局关系的各片段名替换,变换成相应片段上的查询树4.利用关系代数等价变换规则的优化算法对片段上的查询树进行优化处理,最后达到优化查询的目的。
4.4 概述基于半连接算法的查询优化的基本原理和适用情形。
(P121)基本原理是:通过半连接操作,可以减少操作关系的数据量,从而减少站点间数据的传输量。
适用情形:如果只需要一个关系中的一小部分元组参与和另一个关系连接的话,这是一个使数据传输量最小化的非常有效的方案。
此时有T半<T全,采用半连接方案是合适的。
第五章5.1 概述分布式数据库系统中事务的定义、特性、结构和状态,以及分布式事务所特有的性质。
分布式数据库系统中的事务是一个分布式操作的序列,被操作的数据分布在不同的站点上,所以称为分布式事务。
分布式数据库系统中的事务具有事务的ACID四个特性,即原子性、一致性、隔离性和持久性。
分布式数据库系统中事务的结构:以Begin_Transaction原语作为一个事务的开始,以Commit原语作为一个事务成功完成的结束,而以Rollback或Abort原语作为事务失败的结束。
分布式数据库系统中的事务状态:活动状态、部分提交状态、提交状态、失败状态、终止状态。
分布式事务所特有的性质有大量的数据传递、通信原语和控制报文等。
5.4 什么是事务的提交点?为什么说他们很重要?当一个事务所包含的所有对数据库的存取操作都已成功执行,并且所有操作对数据库的影响都已记录在日志中时,该事务就到达提交点。
之所以重要是因为提交点标志着事务已经成功执行,但其结果不一定已经写入到数据库中,在系统发生故障时,提交点是判断是执行回滚某一事务以取消它对数据库的影响还是执行重做某一事务以恢复它对数据库的影响的关键依据。
5.5日志、档案库和检查点的作用是什么?典型的日志包含哪些内容?为什么要“先写日志”?日志的作用是为了能够从故障状态中恢复有影响的事务。
档案库的作用是为了防止因介质故障而破坏日志和数据库。
检查点的作用是为了便于恢复事务。
典型的日志包含了每个改变数据项值的写操作记录。
因为系统崩溃时主存中的内容可能丢失,所以恢复时只能考虑已写回磁盘的日志内容。
因此,在事务到达提交点以前,还未写到磁盘的日志的任何部分,必须被写入磁盘,即“先写日志”。
5.7请用自己的语言描述两阶段提交协议的执行过程。
两阶段提交协议把事务提交过程分为两个阶段:第一阶段是表决阶段,目的是形成一个共同的决定。
开始时,协调者在它的日志中写入一条开始提交的记录,再给所有参与者发送“准备(提交)”消息,并进入等待状态,当所有的参与者发回“建议提交”的消息时,协调者写入提交日志记录,并给所有参与者发送“全局提交”消息,然后进入提交状态;若至少有一个参与者发回“建议撤销”的消息,协调者就写入一条撤销日志记录,并给所有参与者发送“全局撤销”消息,然后进入撤销状态。
第二阶段是执行阶段,目的是实现这个决定。
根据协调者的指令,参与者或者提交事务,或者撤销事务,并给协调者发送确认消息。
此时,协调者在日志中写入一条事务结束记录并终止事务。
5.8 为什么说两阶段提交协议在不丢失运行日志信息的情况下,可从任何故障恢复?因为在执行过程中维护了事务日志,记录了执行恢复所需要的信息。
5.9两阶段提交协议适合哪种故障发生的情况?谨慎两阶段提交协议的基本思想是什么?两阶段提交协议适合通信故障很少发生,站点故障发生概率较高的系统中。
谨慎两阶段提交协议的基本思想是:满足两阶段提交协议的所有特征,并在决定插销前,给全局事务第二次机会。
在协调者站点决定撤销之前,通过重新发送“准备”消息和重新设置一个定时器,允许协调者站点在另一个时间段与它没有收到消息的参与者站点通信。
5.10 在分布式数据库系统中对多副本数据的更新通常采用什么方法?快照方法的优点和缺点是什么?主文本更新法、快照方法。
快照方法的优点:既避免了某些并发空控制的开销,又便于复杂查询的完成,是提高系统可用性的有效方法。
缺点:快照只是一个只读关系,其中数据只能读而不能写。
第六章6.2 (P175~176)6.5 什么是两阶段封锁协议?它如何保证可串行性?为什么人们更愿意采用严格两阶段封锁和严酷两阶段封锁?如果一个事务所有的封锁操作都放在第一个解锁操作之前,那么就说该事务遵守两阶段封锁协议(2PL),这样的一个事务可以分为两阶段:第一阶段称为扩张阶段,事务只能获得新的数据项锁,而不能释放任何已持有的锁;第二阶段称为收缩阶段,该阶段事务只能释放已持有的锁,而不能获得任何新锁。
它限制了一个调度中可以发生的并发事务的数量,因而能够保证可串行性。
由于实现基本2PL协议,锁管理器必须要知道事务的锁点位置;保守2PL要事先声明读集和写集,这都是难以实现的。
严格2PL和严酷2PL容易实现。
5.7 什么是多粒度封锁和意向锁?它们在什么情况下使用?多粒度封锁是:封锁的粒度不是单一的一种粒度,而是有多种粒度。
可以定义多粒度树,根节点是整个数据库,叶节点表示最小的封锁粒度。
意向锁是:如果对一个节点加意向锁,则说明该节点的下层节点正在被封锁。
对任一节点封锁时,必须先对它的上层节点加意向锁。
具有意向锁的多粒度加锁方法中,任意事务T要对一个数据对象加锁,必须先对它的上层节点加意向锁。
申请封锁时应该按自上而下的次序进行,释放锁时则应该按自下而上的次序进行。
具有意向锁的多粒度加锁方法提高了系统的并发度, 减少了加锁和释放锁的开销。
它已经在实际的DBMS系统中广泛应用,例如Oracle中。