66【数据挖掘】国科大苏桂平老师数据库新技术课程作业 —— 第二次作业

1

F={AB→C,B→D,CD→E,CE→GH,G→A}F=\{AB\rightarrow C,B\rightarrow D, CD\rightarrow E, CE\rightarrow GH, G\rightarrow A \}F={ABC,BD,CDE,CEGH,GA},用推理的方法证明 F  ∣=AB→GF\;|=AB\rightarrow GF=ABG

① 已知 B→DB\rightarrow DBD,则 AB→ADAB\rightarrow ADABAD(增广律)

② 已知 AB→ADAB\rightarrow ADABAD,则 AB→DAB\rightarrow DABD (分解规则)

③ 已知 AB→CAB\rightarrow CABCAB→DAB\rightarrow DABD,则 AB→CDAB\rightarrow CDABCD (合成规则)

④ 已知 AB→CDAB\rightarrow CDABCDCD→ECD\rightarrow ECDE,则 AB→EAB\rightarrow EABE (传递律)

⑤ 已知 AB→EAB\rightarrow EABEAB→CAB\rightarrow CABC,则 AB→CEAB\rightarrow CEABCE (合成规则)

⑥ 已知 CE→GHCE\rightarrow GHCEGH,则 CE→GCE\rightarrow GCEG (分解规则)

⑦ 已知 AB→CEAB\rightarrow CEABCECE→GCE\rightarrow GCEG,则 AB→GAB\rightarrow GABG (传递律)

注意区别”传递律“与”传递函数依赖“。

2

设关系模式 R(A,B,C,D)R(A,B,C,D)R(A,B,C,D),其函数依赖集为 F={A→B,B→C,A→D,D→C}F=\{A\rightarrow B, B\rightarrow C, A\rightarrow D, D\rightarrow C\}F={AB,BC,AD,DC}RRR 的一个分解 ρ={R1(A,B),R2(A,C),R3(A,D)}\rho = \{R_1(A,B), R_2(A,C), R_3(A,D)\}ρ={R1(A,B),R2(A,C),R3(A,D)}

(1)求 FFFρ\rhoρ 的每个模式上的投影

FFF 在关系模式 R1(A,B)R_1(A,B)R1(A,B) 上的投影为 {A→B}\{A\rightarrow B\}{AB}FFF 在关系模式 R2(A,C)R_2(A,C)R2(A,C) 上的投影为 {A→C}\{A\rightarrow C\}{AC}FFF 在关系模式 R3(A,D)R_3(A,D)R3(A,D) 上的投影为 {A→D}\{A\rightarrow D\}{AD}

(2)ρ\rhoρ 相对于 FFF 是无损连接吗?

ABCD
a1a2b13→a3b14→a4
a1b22→a2a3b24→a4
a1b32→a2b33→a3a4

其中,红色对应 FFF 中的 A→BA\rightarrow BAB蓝色对应 FFF 中的 B→CB\rightarrow CBC绿色对应 FFF 中的 A→DA\rightarrow DAD,此时 FFF 中的 D→CD\rightarrow CDC 不影响表格。

由于存在某一行全为 aaa,所以 ρ\rhoρ 相对于 FFF 是无损连接。

当分解只包括两个关系模式时,可以使用定理”分解 ρ={R1,R2}\rho=\{R_1, R_2\}ρ={R1,R2},若 F∣=(R1∩R2)→(R1−R2)F|=(R_1\cap R_2)\rightarrow (R_1-R_2)F=(R1R2)(R1R2) 或者 F∣=(R1∩R2)→(R2−R1)F|=(R_1\cap R_2)\rightarrow (R_2-R_1)F=(R1R2)(R2R1),则 ρ\rhoρ 具有无损连接性“判断是否为无损连接。

(3)ρ\rhoρ 保持函数依赖吗?

A+=ABCDA^+=ABCDA+=ABCDB+=BCB^+=BCB+=BCC+=CC^+=CC+=CD+=CDD^+=CDD+=CD

考察 A→BA\rightarrow BABA⊂R1A\subset R_1AR1A+∩R1−A={B}A^+ \cap R_1-A=\{B\}A+R1A={B}G={A→B}G = \{A\rightarrow B\}G={AB};同理 A⊂R2A\subset R_2AR2G=G∪{A→C}G = G\cup \{A\rightarrow C\}G=G{AC}A⊂R3A\subset R_3AR3G=G∪{A→D}G = G\cup \{A\rightarrow D\}G=G{AD}G={A→B,A→C,A→D}G = \{A\rightarrow B,A\rightarrow C,A\rightarrow D\}G={AB,AC,AD}

考察 B→CB\rightarrow CBCB⊂R1B\subset R_1BR1B+∩R1−B=ϕB^+\cap R_1 - B = \phiB+R1B=ϕGGG 不变。

考察 A→DA\rightarrow DAD 类似于 A→BA\rightarrow BABG=G∪{A→B,A→C,A→D}G = G\cup \{A\rightarrow B,A\rightarrow C,A\rightarrow D\}G=G{AB,AC,AD}GGG 不变。

考察 D→CD\rightarrow CDCD⊂R3D\subset R_3DR3D+∩R1−D=ϕD^+\cap R_1 - D = \phiD+R1D=ϕGGG 不变。

最终 G={A→B,A→C,A→D}G = \{A\rightarrow B,A\rightarrow C,A\rightarrow D\}G={AB,AC,AD}

显然 GGG 不蕴含 FFF 中的函数依赖 B→CB\rightarrow CBCD→CD\rightarrow CDC,所以 ρ\rhoρ 没有保持函数依赖。

3

1NF、2NF、3NF 和 BCNF 的定义:

1NF:如果一个关系模式 RRR 中的每个属性 AAA 的域值都是原子的,即属性值是不可再分的,则关系模式 RRR 属于第一范式,简记为R∈1NFR\in {\rm 1NF}R1NF

2NF:如果 R∈1NFR∈{\rm 1NF}R1NF所有的非主属性完全依赖于 RRR 的每个键,则 R∈2NFR∈{\rm 2NF}R2NF

3NF:如果 R∈1NFR\in {\rm 1NF}R1NF 且在 RRR没有非主属性传递依赖于 RRR 的键,则 R∈3NFR∈\rm 3NFR3NF

BCNF:如果 R∈1NFR∈\rm 1NFR1NFRRR没有任何属性传递依赖于 RRR 的任何一个键,则 R∈Boyce−CoddR∈\rm Boyce-CoddRBoyceCodd 范式(BCNF)。

注意,传递依赖的定义:设关系模式 RRRXXXYYYZZZRRR 的属性子集,若函数依赖 X→YX\rightarrow YXYY↛XY\nrightarrow XYXY→zY\rightarrow zYz,则有 X→ZX\rightarrow ZXZ

指出下列关系模式是第几范式,并说明理由。

(1)R(A,B,C)R(A,B,C)R(A,B,C),其函数依赖集为 F={B→C,AC→B}F=\{B\rightarrow C, AC\rightarrow B\}F={BC,ACB}

确定 RRR 的键,A+=AA^+ = AA+=AB+=BCB^+ = BCB+=BCC+=CC^+=CC+=C(AB)+=ABC(AB)^+=ABC(AB)+=ABC(AC)+=ABC(AC)^+=ABC(AC)+=ABC,所以键为 ABABABACACAC。关系模式 RRR 无非主属性,因此 R∈2NFR\in \rm 2NFR2NFR∈3NFR\in 3\rm NFR3NF。但是由于 AC→BAC\rightarrow BACBB↛ACB\nrightarrow ACBACB→CB\rightarrow CBC ,存在传递依赖,故 R∉BCNFR\notin \rm BCNFR/BCNF

(2)R(A,B,C)R(A,B, C)R(A,B,C),其函数依赖集为 F={AB→C}F=\{AB\rightarrow C\}F={ABC}

(AB)+=ABC(AB)^+ = ABC(AB)+=ABC,显然 RRR 的键为 ABABAB,即 AAABBB 为主属性,CCC 为非主属性。AB→CAB\rightarrow CABCCCC 完全依赖于键 ABABABR∈2NFR\in 2\rm NFR2NF。不存在传递依赖,R∈3NFR\in 3\rm NFR3NFR∈BCNFR\in \rm BCNFRBCNF

(3)R(A,B,C)R(A,B,C)R(A,B,C),其函数依赖集为 F={A→B,A→C}F=\{A\rightarrow B, A\rightarrow C\}F={AB,AC}

RRR 的键为 AAAAAA 为主属性,BBBCCC 为非主属性。BBBCCC 完全依赖于 AAAR∈2NFR\in \rm 2NFR2NF。不存在传递依赖,,R∈3NFR\in 3\rm NFR3NFR∈BCNFR\in \rm BCNFRBCNF

(4)R(A,B,C,D)R(A,B,C,D)R(A,B,C,D),其函数依赖集为 F={A→C,AD→B}F=\{A\rightarrow C, AD\rightarrow B\}F={AC,ADB}

RRR 的键为 ADADADAAADDD 为主属性,BBBCCC 为非主属性。BBB 完全依赖于键 ADADAD,但是 CCC 部分依赖于键 ADADAD,所以 R∉2NFR\notin 2\rm NFR/2NF

(5)R(A,B,C)R(A,B,C)R(A,B,C),其函数依赖集为 F={B→C,B→A,A→BC}F=\{B\rightarrow C, B\rightarrow A, A\rightarrow BC\}F={BC,BA,ABC}

A+=B+=ABCA^+=B^+=ABCA+=B+=ABC,所以键为 AAABBBCCC 为非主属性。根据分解规则可知 A→CA\rightarrow CACCCC 完全依赖于 AAA,又 B→CB\rightarrow CBCCCC 完全依赖于 BBB,所以 R∈2NFR\in 2\rm NFR2NF。因为 A→BA\rightarrow BABB→AB\rightarrow ABA,尽管 A→CA\rightarrow CAC(或 B→CB\rightarrow CBC),但是不满足传递依赖的定义,所以不存在传递依赖,故 R∈3NFR\in 3\rm NFR3NFR∈BCNFR\in \rm BCNFRBCNF

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不牌不改

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值