文档详情

分布式数据库概念.ppt

发布:2025-04-05约7.94千字共10页下载文档
文本预览下载声明

分布透明性:即在分布式数据库系统中用户不必关心数据的分布情况。分为三个层次:分片透明性(FragmentationTransparence)位置透明性(LocationTransparence)数据模型透明性(DatamodelTransparence).3.2分布式数据库系统中的透明性01020304它是分布式数据库系统的最高透明性层次,它向用户完全屏蔽了DDB的分片信息。这样的透明性保持了高水平的数据独立性。SELECTENAME例如有一个关系EMP(ENUM,ENAME,EAGE,ESEX),它被分成两个数据片EMP1和EMP2,分别存储在站点site1和site2。若系统满足分布透明性,则可用如下语句完成给定职工号查询。FROMEMP05WHEREENUM=¥ENUM1.分片透明性2.位置透明性用户的应用程序不需要关心数据分片的具体存储站点,当数据库的数据片的存储站点发生改变时,只需改变对应的GRS/NRS映射就可以保持全局表示模式不发生改变。例如:作如下查询:SELECTENAMEFROMEMP1WHEREENUM=¥ENUMIFNOTFOUND()THENSELECTENAMEFROMEMP2WHEREENUM=¥ENUN3.本地透明性它向用户屏蔽的只是本站点的具体数据库存储及其管理情况。在异构的情况下,这种透明性避免了用户对不同数据模型的转换的实现。例SELECTNAMEFROMEMP1ATSITE1WHEREENUM=¥ENUMIFNOTFOUND()THENSELECTENAMEFROMEMP2ATSITE2WHEREENUM=¥ENUM这个查询只关心数据分片及其存放位,但不关心数据的具体组织形式。本地透明性是3种透明方式中最低的。3.3分布式数据库的数据分割方法1、关系代数集合(1)选择σF(R)(2)投影∏A(R)(3)连接R∞T等价连接,自然连接R∞T(4)半连接R∝T=∏R(R∞T)∏A(R)R’∞TT’T’∞R2、数据分割法水平分割:把全局关系的元组分割成一些子集,这些子集被称为数据分片或段(Fragment)。水平分割可以通过关系运算“选择”来定义.(2)垂直分割(verticalaplitting)垂直分割就是把全局关系按照属性组(纵向)分隔成一些数据分片或段。垂直分割可以通过关系运算“投影”来定义。(3)混合分割可把水平分割和垂直分割这两种方法结合起来使用,产生混合式数据分片。(1)水平分割3、数据分片应遵循的原则若R={R1,R2,…,Rn}满足:1)完整性(completeness)条件:如果分片a∈R,则必有a∈Ri,i=l,2,…,n2)可重构(reconstructed)条件:R=∪Ri,(水平分片)或R=∞Ri,(垂直分片)3)不相交(disjoint)条件:Ri∩Rj=φ,i≠j,I,j:=1,2,…,,n(水平分片)Ri∩Rj=主键属性,I,j=1,2,…,n(垂直分片)4.水平分片水平分片是对全局关系执行“选择”操作,把具有相同性质的元组进行分组,构成若干个不相交的子集.水平分片的方法可归为初级分片(primaryfragmentation)和导出分片(derivationfragmentation)两类。STEP4STEP3STEP2STEP1以关系自身的属性性质为基础,执行“选择”操作,将该关系分片成若干个不相交的片段。例3.1s(S#,SNAME,AGE,SEX)definefragmentS1asselect*fromswheresex=’M’definefragmentS2asselect*fromswheresex=’F’(1)初级分片01020304限定语:可把初级分片对片段的定义中,执行选择操作的条件(或称谓词),叫做限定语(qualification)。如例3.1中的:那么,水平分片正确性原则的三个条件可以这样来实现:05SEX={‘M’,’F’)SEX=’F’和SEX=’M’——是限定语

显示全部
相似文档