软考-系统架构设计师:规范化理论-模式分解

软考系统架构设计师数据库系统大约 788 字

保持函数依赖分解

设数据库模式ρ={R1, R2, ..., Rk}是关系模式R的一个分解,F是R上的函数依赖集,ρ中每个模式Ri上的FD集是Fi。如果{F1, F2, ..., Fk}与F是等价的(即相互逻辑蕴含),那么称分解ρ保持FD。

无损分解

有损:不能还原。
无损:可以还原。

无损连接分解

将一个关系模式分解成若干个关系模式后,通过自然连接(natural join)和投影(select id, name)等运算仍能还原到原来的关系模式。

定理

如果R的分解为ρ={ R1,R2 },F为R所满足的函数依赖集合,分解ρ具有无损连接性的充分必要条件是:
R1 ∩ R2 -> (R1 - R2)

R1 ∩ R2 -> (R2 - R1)

其中:
R1 ∩ R2表示模式的交,为R1与R2中公共属性组成;
R1 - R2或R2 - R1表示模式的差集,R1 - R2表示R1中去除R1和R2的公共属性所组成。
当模式R分解成两个关系模式R1和R2时,如果R1与R2的公共属性能函数决定R1中或R2中的其他属性,这样的分解就具有无损连接性。

例题

设R=ABC,F={ A->B },则ρ1={ R1(AB),R2(AC) }、ρ2={ R1(AB),R3(BC) } 是不是无损分解?

ρ1={ R1(AB),R2(AC) }

R1 ∩ R2 = A
R1 - R2 = B
R2 - R1 = C

函数F具有A->BA->C即是无损连接,题给条件F={ A->B }满足,所以是无损连接。

ρ2={ R1(AB),R3(BC) }

R1 ∩ R3 = B
R1 - R3 = A
R3 - R1 = C

函数F具有B->AB->C即是无损连接,但题给条件F={ A->B }不满足,所以是有损连接。

阅读 203 · 发布于 2019-09-13

————        END        ————

扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看换一批