文库网
ImageVerifierCode 换一换
首页 文库网 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

分布式数据库原理与应用课件PPT1第3章.ppt

  • 资源ID:19602865       资源大小:2.06MB        全文页数:107页
  • 资源格式: PPT        下载积分:10文币
微信登录下载
快捷下载 游客一键下载
账号登录下载
三方登录下载: QQ登录 微博登录
二维码
扫码关注公众号登录
下载资源需要10文币
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 
账号:
密码:
验证码:   换一换
  忘记密码?
    
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

分布式数据库原理与应用课件PPT1第3章.ppt

1、第三章第三章3.13.1关系运算关系运算关系代数的运算按运算符的不同可关系代数的运算按运算符的不同可分为传统的集合运算和专门的关系分为传统的集合运算和专门的关系运算两类。运算两类。传统的集合运算包括并、交、差和传统的集合运算包括并、交、差和笛卡尔积;笛卡尔积;专门的关系运算包括选择部分数据专门的关系运算包括选择部分数据的运算和组合两个关系的操作。的运算和组合两个关系的操作。3.1.13.1.1传统的集合运算传统的集合运算1.1.并并假设关系假设关系R和关系和关系S的并的并(Union)运运算产生一个新的关系算产生一个新的关系R,则,则R由属由属于关系于关系R或或S的所有不同元组组成,的所有不同

2、元组组成,记为记为R=RS。RS3.1.13.1.1传统的集合运算传统的集合运算学生基本信息表学生基本信息表S1S1学生基本信息表学生基本信息表S2S2学生基本信息表学生基本信息表S1S2S1S2学号学号姓名姓名性别性别年级年级学院学院专业专业0501001张昊张昊男男2020计算机计算机计算机科学与技术计算机科学与技术0501010李颖李颖女女2020计算机计算机计算机科学与技术计算机科学与技术0501206王婷王婷女女2020计算机计算机计算机科学与技术计算机科学与技术学号学号姓名姓名性别性别年级年级学院学院专业专业0501008赵娜女2020计算机计算机科学与技术0501019李浩男20

3、20计算机计算机科学与技术0501206王婷女2020计算机计算机科学与技术学号学号姓名姓名性别性别年级年级学院学院专业专业0501001张昊男2020计算机计算机科学与技术0501010李颖女2020计算机计算机科学与技术0501206王婷女2020计算机计算机科学与技术0501008赵娜女2020计算机计算机科学与技术0501019李浩男2020计算机计算机科学与技术3.1.13.1.1传统的集合运算传统的集合运算2.2.交交假假 设设 关关 系系 R和和 关关 系系 S的的 交交(Intersection)运运算算产产生生一一个个新新的的关关系系R,则则R由由既既属属于于R又又属属于于S

4、的的元组组成,记为元组组成,记为R=RS。RS3.1.13.1.1传统的集合运算传统的集合运算学生基本信息表学生基本信息表S1S2S1S2学号学号姓名姓名性别性别年级年级学院学院专业专业0501206王婷女2020计算机计算机科学与技术3.1.13.1.1传统的集合运算传统的集合运算3.3.差差假设关系假设关系R和关系和关系S的差的差(Difference)运算产生一个新的关运算产生一个新的关系系R,则,则R由属于由属于R但不属但不属S的元组的元组组成,记为组成,记为R-S。R-S3.1.13.1.1传统的集合运算传统的集合运算学生基本信息表学生基本信息表S1-S2S1-S2学号学号姓名姓名性

5、别性别年级年级学院学院专业专业0501001张昊男2020计算机计算机科学与技术0501010李颖女2020计算机计算机科学与技术3.1.13.1.1传统的集合运算传统的集合运算4.4.笛卡尔积笛卡尔积设设R为为m元元关关系系,S为为n元元关关系系,R和和S的的笛笛卡卡儿儿积积(Extended Cartesian Product)产产生生一一个个新新关关系系R,记记为为R=RXS。R由由R和和S的的所所有有元元组组连连接接而而成成的的具具有有m+n个个分分量量的的元元组组组组成成,新新关关系系中中元元组组的的前前m个个分分量量为为R的的一一个个元元组组,后后n个个分量为分量为S的一个元组。的

6、一个元组。3.1.13.1.1传统的集合运算传统的集合运算学生信息表学生信息表S3 课程信息表课程信息表S4S3XS4学号学号姓名姓名年级年级0501001张昊张昊20200501010李颖李颖2020课程代码课程代码课程名称课程名称教室教室0501001数据库原理数据库原理B010501002C语言语言B02学号学号姓名姓名年级年级课程代课程代码码课程名称课程名称教室教室0501001张昊张昊20200501001数据库原理数据库原理B010501001张昊张昊20200501002C语言语言B020501010李颖李颖20200501001数据库原理数据库原理B010501010李颖李颖2

7、0200501002C语言语言B023.1.2 3.1.2 专门的关系运算专门的关系运算1.1.选择运算选择运算选择运算是一个单目运算,它是从一个关选择运算是一个单目运算,它是从一个关系系R中选取满足给定条件的元组构成一个新中选取满足给定条件的元组构成一个新的关系,选择运算记为:的关系,选择运算记为:F F(R)=t|tRF(t)=)=真真 其中其中是选择运算符,是选择运算符,F表示选择条件,是表示选择条件,是由逻辑运算符由逻辑运算符、等连接算术表达等连接算术表达式组成的条件表达式。式组成的条件表达式。F(t)是一个逻辑表达是一个逻辑表达式,结果取逻辑值式,结果取逻辑值真真或或假假。3.1.2

8、 3.1.2 专门的关系运算专门的关系运算 算术表达式的基本形式为算术表达式的基本形式为XY,其中,其中X、Y是属性名、常量或简单函数,属是属性名、常量或简单函数,属性名也可以用它的序号来代替。性名也可以用它的序号来代替。是比是比较运算符,较运算符,、。选择运算实际上是从关系选择运算实际上是从关系R中选取使中选取使逻辑表达式逻辑表达式F为真的元组。这是从行的为真的元组。这是从行的角度进行的运算。角度进行的运算。3.1.2 3.1.2 专门的关系运算专门的关系运算从学生信息表从学生信息表S1中选择学号为中选择学号为“0501010”的学生,表示为的学生,表示为学号学号=“0501010”(S1)

9、。学号学号学号学号=“0501010”(S1)=“0501010”(S1)结果关系表结果关系表结果关系表结果关系表学号学号姓名姓名性别性别年级年级学院学院专业专业0501010李颖李颖女女2020计算机计算机计算机科学与技术计算机科学与技术3.1.2 3.1.2 专门的关系运算专门的关系运算2.投影运算投影运算投影运算也是一个单目运算,它是从一个投影运算也是一个单目运算,它是从一个关系关系R中选取所需要的列组成一个新关系,中选取所需要的列组成一个新关系,投影运算记为:投影运算记为:A(R)=i1,i2,.ik(R)=tA|tR其中其中是投影运算符,是投影运算符,A为关系为关系R属性的子属性的子

10、集,集,tA为为R中元组相应于属性集中元组相应于属性集A的分量,的分量,i1,i2,.ik表示表示A中属性在关系中属性在关系R中的顺序号中的顺序号。3.1.2 3.1.2 专门的关系运算专门的关系运算投影运算是从列的角度进行的运算,投影投影运算是从列的角度进行的运算,投影取消了原关系中的某些列后,可能出现重取消了原关系中的某些列后,可能出现重复行复行,投影后也会取消这些完全相同的重复投影后也会取消这些完全相同的重复行。从学生信息表行。从学生信息表S1中投影学号、姓名、中投影学号、姓名、年级,表示为年级,表示为学号,姓名,年级学号,姓名,年级(S1),其结果如,其结果如下下表所示表所示学号,姓名

11、,年级学号,姓名,年级学号,姓名,年级学号,姓名,年级(S1)(S1)学号学号姓名姓名年级年级0501001张昊张昊20200501010李颖李颖20200501206王婷王婷20203.1.2 3.1.2 专门的关系运算专门的关系运算3.连接运算连接运算从两个关系从两个关系R和和S的广义笛卡儿积中选取满的广义笛卡儿积中选取满足给定条件足给定条件F的元组组成新的关系的操作称的元组组成新的关系的操作称为为R和和S的连接的连接(Join),其形式为,其形式为:JON 关系名关系名1 AND关系名关系名2 WHERE 条件条件记作记作RFS,其中,条件,其中,条件F=AB是由算术比是由算术比较符较符

12、、和属性名和属性名或列号组成的条件表达式。或列号组成的条件表达式。A和和B分别代表分别代表R的第的第A列和列和S的第的第B列属性。列属性。3.1.2 3.1.2 专门的关系运算专门的关系运算3.连接运算连接运算当连接运算的条件为等号时,连接称为等当连接运算的条件为等号时,连接称为等值连接。连接后的结果包括值连接。连接后的结果包括R和和S的所有字的所有字段,即结果中有重复字段。段,即结果中有重复字段。3.1.2 3.1.2 专门的关系运算专门的关系运算当连接运算中的比较符为当连接运算中的比较符为“=,且参与比较的两,且参与比较的两个关系中用于比较的两个属性相同时,该连接称个关系中用于比较的两个属

13、性相同时,该连接称为自然连接为自然连接(Natural Join),自然连接运算所产生,自然连接运算所产生的新关系由参与连接运算的两个关系中的所有属的新关系由参与连接运算的两个关系中的所有属性组成,但在两个关系中都含有的作为等值比较性组成,但在两个关系中都含有的作为等值比较对象的两个属性只出现一次,所以它不同于一般对象的两个属性只出现一次,所以它不同于一般的等值连接。对于自然连接,无须标明条件表达的等值连接。对于自然连接,无须标明条件表达式式F,只需在结果中把重复的属性去掉,如关系,只需在结果中把重复的属性去掉,如关系R和关系和关系S的自然连接记为的自然连接记为RS。3.1.2 3.1.2 专

14、门的关系运算专门的关系运算学生基本信息表学生基本信息表学生基本信息表学生基本信息表S5 S5 学生选课信息表学生选课信息表学生选课信息表学生选课信息表S6S6 S5S6S5S6结果关系结果关系结果关系结果关系表表表表学号学号姓名姓名年级年级0501001张昊张昊20200501010李颖李颖20200501206王婷王婷2020学号学号课程课程教室教室0501001数据库数据库B010501030C语言语言B020501010C语言语言B02学号学号姓名姓名年级年级课程课程教室教室0501001张昊张昊2020数据库数据库B010501010李颖李颖2020C语言语言B023.1.2 3.1.

15、2 专门的关系运算专门的关系运算4.除运算除运算除运算的含义是给定关系除运算的含义是给定关系R(X,Y)和和S(Y,Z),其中,其中X,Y,Z为属性组。为属性组。R中的中的Y与与S中的中的Y可以有不同的属性名,但必须出自可以有不同的属性名,但必须出自相同的域集。相同的域集。R与与S的除运算得到一个新的的除运算得到一个新的关系关系P(X),P是是R中满足下列条件的元组在中满足下列条件的元组在X属性列上的投影,元组在属性列上的投影,元组在X上分量值上分量值x的象的象集集Yx包含包含S在在Y上投影的集合。上投影的集合。3.1.2 3.1.2 专门的关系运算专门的关系运算ABCa1b1c2a2b3c7

16、a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1R1BCDb1c2d1b2c1d1b2c3d2R2Aa1R1R2R1R2R1R2分析,在关系分析,在关系分析,在关系分析,在关系R1R1中,中,中,中,A A可以取四个值可以取四个值可以取四个值可以取四个值a1,a2,a3,a4a1,a2,a3,a4,其中:其中:其中:其中:a1a1的象集为:的象集为:的象集为:的象集为:(b1,c2b1,c2),(),(),(),(b2,c3b2,c3),(),(),(),(b2,c1b2,c1);a2a2的象集为:的象集为:的象集为:的象集为:(b3,c7b3,c7),(),(),(),(b2,c

17、3b2,c3);a3a3的象集为:的象集为:的象集为:的象集为:(b4,c6b4,c6);a4a4的象集为:的象集为:的象集为:的象集为:(b6,c6b6,c6);R2R2在(在(在(在(B,CB,C)上的投影为)上的投影为)上的投影为)上的投影为(b1,c2),(b2,c3),(b2,c1)(b1,c2),(b2,c3),(b2,c1)。显然只有显然只有显然只有显然只有R1R1的象集的象集的象集的象集a1a1包含包含包含包含R2R2在(在(在(在(B,CB,C)属性组上的投影,)属性组上的投影,)属性组上的投影,)属性组上的投影,所以所以所以所以R1R2=a1R1R2=a1。3.23.2设计

18、方法与分布设计的目标设计方法与分布设计的目标分布式数据库的设计存在两种设计分布式数据库的设计存在两种设计方法,一种自上而下(方法,一种自上而下(Top-Down)的设计方法,另一种是自下)的设计方法,另一种是自下而上(而上(Bottom-Up)的设计方法,)的设计方法,Bottom-Up的设计方法是多数据库的设计方法是多数据库集成的核心研究内容,分布式数据集成的核心研究内容,分布式数据库的设计主要是与库的设计主要是与Top-Down的设计的设计方法相关的内容。方法相关的内容。3.23.2设计方法与分布设计的目标设计方法与分布设计的目标Top-Down设计设计过程:过程:3.23.2设计方法与分

19、布设计的目标设计方法与分布设计的目标Bottom-Up设计过程:设计过程:3.23.2设计方法与分布设计的目标设计方法与分布设计的目标数据库分布设计的目标:数据库分布设计的目标:降低降低费用;费用;提高提高系统可靠性;系统可靠性;处理局部性;处理局部性;易于扩展处理能力和系统规模;易于扩展处理能力和系统规模;负载分布;负载分布;3.33.3分片的定义及分类分片的定义及分类分片的定义:分片的定义:分布式数据库中数据的存储单位称分布式数据库中数据的存储单位称为片段。对全局数据库的划分叫做为片段。对全局数据库的划分叫做分片。划分的结果就是片段。每个分片。划分的结果就是片段。每个片段可以保存在一个以上

20、的场地片段可以保存在一个以上的场地(服务器)上。(服务器)上。3.33.3分片的定义及分类分片的定义及分类分片主要分片主要作用:作用:减少网络传输量;减少网络传输量;增大事务处理的局部性;增大事务处理的局部性;提高数据的可用性和查询效率;提高数据的可用性和查询效率;负载均衡;负载均衡;3.33.3分片的定义及分类分片的定义及分类分片设计分片设计过程:过程:3.33.3分片的定义及分类分片的定义及分类分片原则分片原则:1.完备性条件完备性条件 必须必须把全局关系的所有数据映射把全局关系的所有数据映射到片段中,决不允许有属于全局关到片段中,决不允许有属于全局关系的数据却不属于它的任何一个片系的数据

21、却不属于它的任何一个片段。段。3.33.3分片的定义及分类分片的定义及分类分片原则分片原则:2.可重构条件可重构条件 必须必须保证能够由同一个全局关系保证能够由同一个全局关系的各个片段来重建该全局关系。划的各个片段来重建该全局关系。划分所采用的方法必须确保能够由全分所采用的方法必须确保能够由全局关系的各个片段来重建该全局关局关系的各个片段来重建该全局关系。系。3.33.3分片的定义及分类分片的定义及分类分片原则分片原则:3.不相交条件:要求一个全局关系不相交条件:要求一个全局关系被分割后所得的各个数据片段互不被分割后所得的各个数据片段互不重叠。之所以要施加这个限制,其重叠。之所以要施加这个限制

22、,其目的是为了在数据分配时易于控制目的是为了在数据分配时易于控制数据的复制。数据的复制。3.33.3分片的定义及分类分片的定义及分类分片的类型:分片的类型:水平分片;水平分片;垂直分片;垂直分片;导出分片;导出分片;混合混合分片;分片;3.33.3分片的定义及分类分片的定义及分类分布透明性的定义:指用户或用户分布透明性的定义:指用户或用户程序使用分布式数据库如同使用集程序使用分布式数据库如同使用集中式数据库那样,不必关心全局数中式数据库那样,不必关心全局数据的分布情况,包括全局数据的逻据的分布情况,包括全局数据的逻辑分片情况、逻辑片段的站点位置辑分片情况、逻辑片段的站点位置分配情况,各站点数据

23、库的数据模分配情况,各站点数据库的数据模型等情况对用户和用户程序是透明型等情况对用户和用户程序是透明的。的。3.33.3分片的定义及分类分片的定义及分类分布透明性的三个层次:分布透明性的三个层次:分片透明性;分片透明性;位置透明性;位置透明性;局部数据模型透明性局部数据模型透明性;3.4 3.4 水平分片水平分片 水平水平分片是按照一定的条件对分片是按照一定的条件对全局关系元组的划分,即把全局关全局关系元组的划分,即把全局关系的所有元组划分成若干不相交的系的所有元组划分成若干不相交的子集。子集。3.4.13.4.1水平分片的概念水平分片的概念定义:设有一个关系定义:设有一个关系R,R1,R2.

24、Rn为为R的子关系的集合,如果的子关系的集合,如果R1,R2.Rn满足满足以下条件,则称其为关系以下条件,则称其为关系R的水平分片,称的水平分片,称Ri为为R的一个水平片段。的一个水平片段。(1)R1,R2.Rn与与R具有相同的关系模具有相同的关系模式。式。(2)R1R2.Rn=R (3)RiRj=(ij,1in,1jn)3.4.13.4.1水平分片的概念水平分片的概念从水平分片的定义可以看出,所谓水平从水平分片的定义可以看出,所谓水平分片,就是按某种特定条件把一全局关分片,就是按某种特定条件把一全局关系的所有元组划分成若干不相交的子集。系的所有元组划分成若干不相交的子集。每个水平片段由关系中

25、的某个属性上的每个水平片段由关系中的某个属性上的条件来定义,该属性称为分片属性。该条件来定义,该属性称为分片属性。该条件称为分片条件。不相交的子集满足条件称为分片条件。不相交的子集满足完备性条件、可重构条件和不相交条件。完备性条件、可重构条件和不相交条件。3.4.13.4.1水平分片的概念水平分片的概念例有例有一个全局关系模式一个全局关系模式为:为:student(snum,name,college),其中,其中snum为学为学生编号,生编号,name为学生姓名,为学生姓名,college为学生所在的为学生所在的学院,并假定学生所在学院的只有两个即学院,并假定学生所在学院的只有两个即”计算计算

26、机机”和和”数学数学”。按下面的条件进行水平分片。按下面的条件进行水平分片:student1:满足满足college”计算机计算机”的所有元的所有元组;组;student2:满足:满足college”数学数学”的所有元组;的所有元组;3.4.13.4.1水平分片的概念水平分片的概念在该分片中在该分片中college为分片属性,分为分片属性,分为两个片段为两个片段student1和和student2,用,用选择操作可以表示为:选择操作可以表示为:student1=college=”计算机计算机”(student);student2=college=”数学数学”(student);全局关系全局关系

27、student的这种水平分片的这种水平分片如如下图表示下图表示。3.4.13.4.1水平分片的概念水平分片的概念3.4.13.4.1水平分片的概念水平分片的概念1.满足完备性条件满足完备性条件由于由于”计算机计算机”与与”数学数学”是是college属性的属性的所有可能取值,所以上面的分片无疑是满所有可能取值,所以上面的分片无疑是满足完备性条件的。如果足完备性条件的。如果college的属性还可能的属性还可能有其它取值,则上述的分片就不满足完备有其它取值,则上述的分片就不满足完备住条件。因为这些其它住条件。因为这些其它college值的元组属于值的元组属于全局关系全局关系student,但确既

28、不属于,但确既不属于student1也也不属于不属于student2。3.4.13.4.1水平分片的概念水平分片的概念2.满足可重构条件满足可重构条件重构条件是易于验证的,因为总是能通过重构条件是易于验证的,因为总是能通过下列运算来重构下列运算来重构student全局关系:全局关系:student=student1 student2。3.4.13.4.1水平分片的概念水平分片的概念3.满足不相交条件满足不相交条件Student的水平分片的水平分片Student1、Student2,不相交条件总是满足的。因为不相交条件总是满足的。因为snum作为全作为全局关系局关系student关键字,它唯一地

29、标识了一关键字,它唯一地标识了一个学生。这个学生的个学生。这个学生的college值或取值或取”计算机计算机”,或取或取”数学数学”,因此,因此,student关系中关系中的每一个元组只能分在一个片段中。的每一个元组只能分在一个片段中。3.4.23.4.2水平分片的操作水平分片的操作水平分片是针对该关系的选择操作,用水平分片是针对该关系的选择操作,用表表示,假设选择条件为分片谓词示,假设选择条件为分片谓词q,则关系的则关系的R的分片的分片操作可表示为:操作可表示为:q q(R)。)。例设有例设有雇员关系雇员关系EMPENO,ENAME,SALARY,DNO,其中,其中ENO为雇员编号,为雇员编

30、号,ENAME为雇员姓名,为雇员姓名,SALARY为雇员工资,为雇员工资,DNO为雇员所在部为雇员所在部门的部门门的部门编号,其取值为编号,其取值为“101”、“201”“、“301”。3.4.23.4.2水平分片的操作水平分片的操作按下面的条件进行水平分片:按下面的条件进行水平分片:E1:满足:满足DNO=”101”的所有元组;的所有元组;E2:满足:满足DNO=”201”的所有元组;的所有元组;E3:满足:满足DNO=”301”的所有元组;的所有元组;雇员关系雇员关系EMP的水平分片的水平分片E1、E2、E3用选择操用选择操作描述如下:作描述如下:E1=DNO=”101”(EMP);E2=

31、DNO=”201”(EMP);E3=DNO=”301”(EMP);3.4.33.4.3水平分片的原理水平分片的原理对全局进行水平分片时,必须遵守完备对全局进行水平分片时,必须遵守完备性、可重构性和不相交性条件,以保证性、可重构性和不相交性条件,以保证分布式数据库中数据的完整性和一致性。分布式数据库中数据的完整性和一致性。由于全局关系的水平分片可以由选择运由于全局关系的水平分片可以由选择运算中的限定的集合(既谓词集)唯一的算中的限定的集合(既谓词集)唯一的决定,因此,谓词集决定,因此,谓词集P也必须遵守完备也必须遵守完备性、可重构性和不相交性条件。性、可重构性和不相交性条件。3.4.33.4.3

32、水平分片的原理水平分片的原理定义定义1:若全局关系:若全局关系R中属性中属性X具有地理具有地理分布特征或属性分布特征或属性X的域的任一划分都构的域的任一划分都构成全局关系的元组的不同的聚集,则称成全局关系的元组的不同的聚集,则称属性属性X具有分类特征。具有分类特征。定义定义2:若全局关系:若全局关系R中的属性中的属性X满足:满足:(1)DOM(X)是可数有限集合是可数有限集合(2)属性)属性X具有分类特征;具有分类特征;则称属性则称属性X为关系为关系R的分类属性。的分类属性。3.4.33.4.3水平分片的原理水平分片的原理命题命题1:对于关系:对于关系R的水平分片谓词集的水平分片谓词集P,如果

33、对,如果对P中出现的分类属性集中出现的分类属性集X1,X2,xn)的域的域DOM(X1)、DOM(X2),DOM(Xn)构成划分,则谓词集构成划分,则谓词集P对分类属性集对分类属性集X1,X2,xn)是完备是完备的。的。3.4.33.4.3水平分片的原理水平分片的原理命题命题2:如果谓词集:如果谓词集P=P1,P2,Pn)中的谓问两两互斥,即中的谓问两两互斥,即PiPj=FALSE(ij),且),且Pi(1in)不为永假,则每一谓词不为永假,则每一谓词Pi都构成一个片都构成一个片段。段。3.4.33.4.3水平分片的原理水平分片的原理定理定理 如果谓词集如果谓词集P=P1,P2,Pn)是基于关

34、系是基于关系R中分类属性集中分类属性集X1,X2,xn)的,且的,且P中的谓词两两互斥并对中的谓词两两互斥并对X1,X2,xn)是完备的,则谓词集是完备的,则谓词集P决定关系决定关系R的一种水平分片。的一种水平分片。3.4.33.4.3水平分片的原理水平分片的原理水平分片谓词集水平分片谓词集P生成生成方法方法:(1)根据查询模型选取关系)根据查询模型选取关系R中合适的分类属性中合适的分类属性集集X1,X2,xn),并确定各自的域,并确定各自的域DOM(X1)、DOM(X2)、DOM(Xn)。(2)根据查询对分片的要求,选取一个适当的)根据查询对分片的要求,选取一个适当的谓词谓词P1,令,令P

35、P1。(3)选取新的适当谓词)选取新的适当谓词Pi,Pi与与P中谓词互斥,中谓词互斥,置置PPPi,直至,直至P构成构成DOM(X1)、DOM(X2)、DOM(Xn)的划分。的划分。3.53.5导出水平分片导出水平分片若若一个关系的分片不是基于关系本一个关系的分片不是基于关系本身的属性,而是根据另一个与其有身的属性,而是根据另一个与其有关联的属性来划分,这种划分为导关联的属性来划分,这种划分为导出水平划分。出水平划分。3.5.13.5.1导出水平分片的概念导出水平分片的概念定义:如果一个关系的水平分片的定义:如果一个关系的水平分片的分片属性属于另一个关系,则该分分片属性属于另一个关系,则该分片

36、称为导出水平分片。片称为导出水平分片。3.5.13.5.1导出水平分片的概念导出水平分片的概念例有例有雇员关系雇员关系EMPENO,ENAME,SALARY,DNO,其中,其中ENO为雇员编号,为雇员编号,ENAME为雇员姓名,为雇员姓名,SALARY为雇员工资,为雇员工资,DNO为雇员所在的为雇员所在的部门编号。其元组部门编号。其元组如下表如下表1所所示。关系示。关系WORKSENO,PRJNO,HOURS,其中,其中ENO为雇员编号,为雇员编号,PRJNO为雇员参与的项为雇员参与的项目编号,目编号,HOURS为雇员参与项目的小时数,为雇员参与项目的小时数,其元组如其元组如表表2所所示。示。

37、3.5.13.5.1导出水平分片的概念导出水平分片的概念表表1EMP关系关系表表表表2 WORKS元组元组内容内容ENOENAMESALARYDNO001张颖2000101002李强3000201003王丽4000301ENOPRJNOHOURS0011200002130000325003.5.13.5.1导出水平分片的概念导出水平分片的概念要求将要求将WORKS按按DNO进行水平分片,得到的导出进行水平分片,得到的导出水平分片记为水平分片记为W1、W2、W3,要求如下:,要求如下:W1:满足:满足DNO=”101”的所有元组,的所有元组,既:既:W1=ATTR(WORKS)(DNO=”101

38、”(WORKSEMP)W2:满足:满足DNO=”201”的所有元组,的所有元组,既:既:W2=ATTR(WORKS)(DNO=”201”(WORKSEMP)W3:满足:满足DNO=”301”的所有元组,的所有元组,既:既:W3=ATTR(WORKS)(DNO=”301”(WORKSEMP)其中其中ATTR(WORKS)为为WORKS的属性组。的属性组。3.5.13.5.1导出水平分片的概念导出水平分片的概念分片属性为:部门编号分片属性为:部门编号DNO.分片条件为:分片条件为:W1:DNO=”101”;W2:DNO=”201”;W3:DNO=”301”;3.5.13.5.1导出水平分片的概念导

39、出水平分片的概念根据水平分片定义,满足:根据水平分片定义,满足:(1)W1、W2、W3和和WORKS具有相同的关系模具有相同的关系模式;式;(2)W1W2W3=WORKS;(3)W1W2=,W1W3=,W2W3=。因此,因此,W1、W2、W3满足完备性条件、可重构条件满足完备性条件、可重构条件和不相交条件,是和不相交条件,是WORKS的水平分片。由于该分的水平分片。由于该分片属性为片属性为DNO,是,是WORKS关系相关联关系关系相关联关系EMP的的属性,因此该水平分片为导出水平分片。属性,因此该水平分片为导出水平分片。3.5.23.5.2导出水平分片的操作导出水平分片的操作导出水平分片操作不

40、是基于关系本身的属性,而是导出水平分片操作不是基于关系本身的属性,而是根据另一个与其有关联关系的属性来划分的。因此根据另一个与其有关联关系的属性来划分的。因此导出水平分片可以用连接操作和选择操作来表示导出水平分片可以用连接操作和选择操作来表示。上面例子中上面例子中的导出水平分片,具体操作表示的导出水平分片,具体操作表示如下:如下:1.求出求出WORKS中中DNO,采用自然连接,采用自然连接。令:令:W=WORKSEMP,w=(ENO,PRJNO,HOURS,ENAME,SALARY,DNO)。3.5.23.5.2导出水平分片的操作导出水平分片的操作2.根据根据DNO对对W进行水平分片。进行水平

41、分片。W1=DNO=”101”(W)=DNO=”101”(WORKSEMP);W2=DNO=”201”(W)=DNO=”201”(WORKSEMP);W3=DNO=”301”(W)=DNO=”301”(WORKSEMP)。3.5.23.5.2导出水平分片的操作导出水平分片的操作3.只保留只保留WORKS的属性的属性W1=ATTR(WORKS)(W1)=ATTR(WORKS)(DNO=”101”(WORKSEMP);W2=ATTR(WORKS)(W2)=ATTR(WORKS)(DNO=”201”(WORKSEMP);W3=ATTR(WORKS)(W3)=ATTR(WORKS)(DNO=”301”

42、(WORKSEMP)。3.5.33.5.3导出水平分片的作用导出水平分片的作用在两个关系间存在相关属性并满足在两个关系间存在相关属性并满足关联完整性约束时,一个关系的水关联完整性约束时,一个关系的水平分片常常可以导出另一个关系的平分片常常可以导出另一个关系的水平分片,导出分片可以用来简化水平分片,导出分片可以用来简化片段间的连接运算。片段间的连接运算。3.6.13.6.1垂直分片的概念垂直分片的概念定义:设有一个关系定义:设有一个关系R,R1,R2.Rn为为R的子的子关系的集合,如果关系的集合,如果R1,R2.Rn满足以下条件,满足以下条件,则称其为关系则称其为关系R的垂直分片,称的垂直分片,

43、称Ri为为R的一个垂的一个垂直片段。直片段。(1)Attr(R1)Attr(R2).Attr(R1)=Attr(R),其中,其中Attr(R)表示关系表示关系R的属性集;的属性集;(2)R1,R2.Rn为关系为关系R的无损分解;的无损分解;(3)Attr(Ri)Attr(Rj)=PK(R)(ij,1in,1jn),其中,其中PK(R)表示关系表示关系R的主关的主关键字。键字。3.6.13.6.1垂直分片的概念垂直分片的概念例设有例设有雇员关系雇员关系EMP(ENO,ENAME,SALARY,DNO),其中,其中ENO为雇员编号,为雇员编号,ENAME为雇员姓名,为雇员姓名,SALARY为为雇员

44、工资,雇员工资,DNO为雇员所在部门的部门编号。元为雇员所在部门的部门编号。元组内容组内容如下表所示。如下表所示。关系关系EMP元组元组内容内容ENOENAMESALARYDNO001张颖2000101002李强3000201003王丽40003013.6.13.6.1垂直分片的概念垂直分片的概念今有两种应用,一是检索关于雇员的姓名、部门今有两种应用,一是检索关于雇员的姓名、部门编号等信息的管理;二是关于职工工资情况的管编号等信息的管理;二是关于职工工资情况的管理。在这种情况下,这个全局关系可采用垂直分理。在这种情况下,这个全局关系可采用垂直分片,在属性组片,在属性组ENO,ENAME,DNO

45、和和ENO、SALARY上进行垂直分片,可用如下的投影运算上进行垂直分片,可用如下的投影运算来实现:来实现:EMP1=ENO,ENAME,DNO(EMP);EMP2=ENO,SALARY(EMP);3.6.13.6.1垂直分片的概念垂直分片的概念全局关系全局关系EMP(ENO,ENAME,SALARY,DNO)垂垂直划分为两个片段直划分为两个片段EMP1、EMP2,如下图所如下图所示。示。划分满足完备性、重构性和不相交性。划分满足完备性、重构性和不相交性。3.6.23.6.2垂直分片的操作垂直分片的操作垂直分片是针对该关系的投影操作,用垂直分片是针对该关系的投影操作,用表示,表示,假设分片的属

46、性组为假设分片的属性组为A,,则关系的则关系的R的分片操作的分片操作可表示为:可表示为:A(R)。)。3.6.33.6.3垂直分片的设计方法垂直分片的设计方法目前主要有两种垂直分片的设计方法,目前主要有两种垂直分片的设计方法,这两种方法都必须满足垂直分片的定义。这两种方法都必须满足垂直分片的定义。(1)分裂法。把全局关系的属性逐个)分裂法。把全局关系的属性逐个分离。然后根据查询的要求把每个属性分离。然后根据查询的要求把每个属性放入一个或多个片段属性集中。放入一个或多个片段属性集中。(2)组合法。把属性聚集成各片段的)组合法。把属性聚集成各片段的属性集。属性集。3.73.7混合分片混合分片在水平

47、分片和垂直分片及导出分片的基在水平分片和垂直分片及导出分片的基础上,可以进行更加复杂的分片,混合础上,可以进行更加复杂的分片,混合分片过程中既包括水平分片又包括垂直分片过程中既包括水平分片又包括垂直分片分片。混合分片可以先进行水平分片再进行垂混合分片可以先进行水平分片再进行垂直分片,或先进行垂直分片再进行水平直分片,或先进行垂直分片再进行水平分片,或其它形式,但它们的结果是不分片,或其它形式,但它们的结果是不相同的。相同的。3.73.7混合分片混合分片例设有例设有一个学生关系一个学生关系STUDENT(SNO,SNAME,BIRTH,SORE,DNO),其中其中SNO为学生学号,为学生学号,N

48、AME为学生姓名,为学生姓名,BIRTH为生日,为生日,SORE为总成绩,为总成绩,DNO为学生所为学生所在学院编号。元组内容在学院编号。元组内容如下表所示:如下表所示:SNOSNAMBIRTHSOREDNO10001张三1999.02.2165010120001李四1999.07.2667620130001王五1999.03.206983013.73.7混合分片混合分片对关系对关系STUDENT先进性垂直分片,得到子关系先进性垂直分片,得到子关系STUDENT1和和STUDENT2,再对再对STUDENT2按照按照DNO进行水平分片,得到子关系进行水平分片,得到子关系STUDENT21、ST

49、UDENT22,、STUDENT23,既:,既:STUDENT1=SNO,SNAME,BIRTH(STUDENT);STUDENT2=SNO,SORE,DNO(STUDENT);STUDENT21=DNO=”101”(STUDENT2);STUDENT22=DNO=”201”(STUDENT2);STUDENT23=DNO=”301”(STUDENT2);3.73.7混合分片混合分片关系关系STUDENT的混合分片示意图的混合分片示意图如下图所示:如下图所示:3.83.8分片的表示方法分片的表示方法为直观地描述各种分片方式及便于为直观地描述各种分片方式及便于对后续查询处理和查询优化方法的对后续

50、查询处理和查询优化方法的理解,对水平分片、垂直分片和混理解,对水平分片、垂直分片和混合分片可采用直观的图形表示法和合分片可采用直观的图形表示法和基于树型结构的分片树表示法。基于树型结构的分片树表示法。3.8.1 3.8.1 图形表示法图形表示法图形表示法是用图形直观描述,其描述规图形表示法是用图形直观描述,其描述规则如下:则如下:(1)用一个整体矩形来表示全局关系。)用一个整体矩形来表示全局关系。(2)用矩形的一部分来表示片段关系。)用矩形的一部分来表示片段关系。(3)按水平划分的部分表示水平分段。)按水平划分的部分表示水平分段。(4)按垂直划分的部分表示垂直分段。)按垂直划分的部分表示垂直分


注意事项

本文(分布式数据库原理与应用课件PPT1第3章.ppt)为本站会员(bubibi)主动上传,文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文库网(点击联系客服),我们立即给予删除!




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

文库网用户QQ群:731843829  微博官方号:文库网官方   知乎号:文库网

Copyright© 2025 文库网 wenkunet.com 网站版权所有世界地图

经营许可证编号:粤ICP备2021046453号   营业执照商标

1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png