模式分解的概念(下)-无损连接分解的与保持函数依赖分解的定义和判断、损失分解

一、无损连接分解

1、定义

2、检验一个分解是否是无损连接分解的算法

输入与输出

输入:

关系模式R(U,F),F是最小函数依赖集 

R上的一个分解\rho

输出:

判断分解\rho是否为无损连接分解

(1)建立一张k行n列的表,每行对应分解中的一个关系模式R_{i},每列对应一个属性A_{j},若属性A_{j}\in U_{i},则在i行j列处填a_{j},否则填b_{ij}

(2)对形如X\rightarrow Y的函数依赖,检查X属性列上值相同的行,其所对应的Y属性列上的值是否相

同。若Y属性列上的值不相同,则将Y属性列上的符号值改为一致。修改符号值的规则为对应行中1

的Y属性列中如果存在a_{j},则都改为a_{j},否则都改为b_{ij}。整个第(2)步被称为对F的一次扫描

(3)一次扫描后,判断表格中的符号值是否发生改变,如果发生改变,则执行(2),否则算法结

束,特殊的,当表格中的出现某一行的符号值全为a值时算法也结束

定理:\rho为无损连接的充分必要条件是算法终止时,表中有一行为a_{1},a_{2},...,a_{n}

使用定理对表格进行判断,即可得出改分解是无损连接分解还是损失分解

二、无损连接分解的判定定理

举例:无损分解

举例:损失分解

 

三、保持函数依赖分解

1、定义

 2、判断分解\rho是否保存函数依赖的方法

 如果均属于,则分解\rho保存函数依赖,是函数依赖分解

3、举例:

四、小结

1、模式分解的两个特性涉及到了两个数据库模式的等价问题,这种等价包括数据等价和语义等价两个方面, 数据等价是指两个数据库实例表示同样的信息内容,用无损连接分解来衡量语义等价是指两个数据库模式具有相同函数依赖集闭包,数据语义没有丢失,用保持函数依赖来衡量

2、无损连接性保持函数依赖之间没有必然的联系 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值