当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

《数据库系统概念 Database System Concepts》原书教学资源(第五版,附录,英文版)Appendix C Advanced Relational Database Design

资源类别:文库,文档格式:PPT,文档页数:12,文件大小:160.5KB,团购合买
Reasoning with MVDs Higher normal forms Join dependencies and PJNF DKNF
点击下载完整版文档(PPT)

Appendix C:Advanced Relational Database Design Reasoning with MVDs Higher normal forms Join dependencies and PJNF DKNF Database System Concepts,5th Ed. c.1 @Silberschatz,Korth and Sudarshan

Database System Concepts, 5 C.1 ©Silberschatz, Korth and Sudarshan th Ed. Appendix C: Advanced Relational Database Design Reasoning with MVDs Higher normal forms Join dependencies and PJNF DKNF

Theory of Multivalued Dependencies Let D denote a set of functional and multivalued dependencies.The closure D+of D is the set of all functional and multivalued dependencies logically implied by D. Sound and complete inference rules for functional and multivalued dependencies: 1.Reflexivity rule.If a is a set of attributes and Bc a,then a>B holds. 2.Augmentation rule.If a>B holds and y is a set of attributes,then y o-→y B holds. 3.Transitivity rule.lfo-→βholds and y a-→y B holds,then a-→y holds. Database System Concepts,5th Ed. C.2 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.2 ©Silberschatz, Korth and Sudarshan th Ed. Theory of Multivalued Dependencies Let D denote a set of functional and multivalued dependencies. The closure D+ of D is the set of all functional and multivalued dependencies logically implied by D. Sound and complete inference rules for functional and multivalued dependencies: 1. Reflexivity rule. If  is a set of attributes and   , then  → holds. 2. Augmentation rule. If  →  holds and  is a set of attributes, then  →  holds. 3. Transitivity rule. If  →  holds and  →  holds, then  → holds

Theory of Multivalued Dependencies (Cont.) 4.Complementation rule.If>B holds,then R-B-a holds. 5.Multivalued augmentation rule.Ife>B holds and y R and 8 cy,thena δB holds. 6.Multivalued transitivity rule.If e>B holds and>y holds, then->y-βholds. 7.Replication rule.If B holds,then>B. 8.Coalescence rule.Ife>B holds andy B and there is a 8 such thatδR andδB=g-andδY,t拽eno y holds. Database System Concepts,5th Ed. C.3 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.3 ©Silberschatz, Korth and Sudarshan th Ed. Theory of Multivalued Dependencies (Cont.) 4. Complementation rule. If   holds, then  R –  –  holds. 5. Multivalued augmentation rule. If   holds and   R and   , then     holds. 6. Multivalued transitivity rule. If   holds and   holds, then   –  holds. 7. Replication rule. If   holds, then  . 8. Coalescence rule. If   holds and    and there is a  such that   R and    =  and  , then   holds

Simplification of the Computation of D+ We can simplify the computation of the closure of D by using the following rules(proved using rules 1-8). Multivalued union rule.If aB holds and ay holds,then o>>βy holds. Intersection rule.If a B holds and ay holds,then aBr holds. Difference rule.IfIf aB holds and ay holds,then aB-Y holds and ay-B holds. Database System Concepts,5th Ed. C.4 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.4 ©Silberschatz, Korth and Sudarshan th Ed. Simplification of the Computation of D+ We can simplify the computation of the closure of D by using the following rules (proved using rules 1-8). Multivalued union rule. If   holds and   holds, then   holds. Intersection rule. If   holds and   holds, then     holds. Difference rule. If If   holds and   holds, then   –  holds and   –  holds

Example R=(A,B,C,G,H,I) D=(A B .> HI CG 份 Some members of D+: A CGHI. Since A B,the complementation rule(4)implies that A、R2B-A. Since R-B-A=CGHI,so A CGHI. A Hl. Since A、B and B H,the multivalued transitivity rule(6)implies that B HI-B. Since HI-B=HI,A HI. Database System Concepts,5th Ed. c.5 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.5 ©Silberschatz, Korth and Sudarshan th Ed. Example R = (A, B, C, G, H, I) D = {A B B HI CG H} Some members of D+: A CGHI. Since A B, the complementation rule (4) implies that A R – B – A. Since R – B – A = CGHI, so A CGHI. A HI. Since A B and B HI, the multivalued transitivity rule (6) implies that B HI – B. Since HI – B = HI, A HI

Example (Cont.) Some members of D+(cont.): B>H. Apply the coalescence rule(8);B>H/holds. Since HCHI and CG Hand CGHI=,the coalescence rule is satisfied with a being B,B being H,8 being CG,and y being H.We conclude that B H. A>CG. A>CGHI and A>HI. By the difference rule,A> CGHI -HI. Since CGHI -HI=CG.A>CG. Database System Concepts,5th Ed. c.6 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.6 ©Silberschatz, Korth and Sudarshan th Ed. Example (Cont.) Some members of D+ (cont.): B H. Apply the coalescence rule (8); B HI holds. Since H  HI and CG H and CG  HI = Ø, the coalescence rule is satisfied with  being B,  being HI,  being CG, and  being H. We conclude that B H. A CG. A CGHI and A HI. By the difference rule, A CGHI – HI. Since CGHI – HI = CG, A CG

Normalization Using Join Dependencies Join dependencies constrain the set of legal relations over a schema R to those relations for which a given decomposition is a lossless-join decomposition. Let R be a relation schema and R1,R2,...,Rn be a decomposition of R.If R= RR2....R,we say that a relation r(R)satisfies the join dependency *(R1,R2...Rn)if: r=R1()凶ΠR2(0凶..凶ΠRn() Ajoin dependency is trivial if one of the R,is R itself. Ajoin dependency *(R1,R2)is equivalent to the multivalued dependency R1 R2 R2.Conversely,a B is equivalent to *(a(R-B),aB) However,there are join dependencies that are not equivalent to any multivalued dependency. Database System Concepts,5th Ed. C.7 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.7 ©Silberschatz, Korth and Sudarshan th Ed. Normalization Using Join Dependencies Join dependencies constrain the set of legal relations over a schema R to those relations for which a given decomposition is a lossless-join decomposition. Let R be a relation schema and R1 , R2 ,..., Rn be a decomposition of R. If R = R1  R2  ….  Rn , we say that a relation r(R) satisfies the join dependency *(R1 , R2 ,..., Rn ) if: r =R1 (r) ⋈ R2 (r) ⋈ …… ⋈ Rn(r) A join dependency is trivial if one of the Ri is R itself. A join dependency *(R1 , R2 ) is equivalent to the multivalued dependency R1  R2 R2 . Conversely,   is equivalent to *( (R - ),   ) However, there are join dependencies that are not equivalent to any multivalued dependency

Project-Join Normal Form (PJNF) A relation schema R is in PJNF with respect to a set D of functional, multivalued,and join dependencies if for all join dependencies in D+of the form *(R1,R2,...,R where each RiR and R=RjUR2...URp at least one of the following holds: *(R1,R2,...,R)is a trivial join dependency. Every R,is a superkey for R. Since every multivalued dependency is also a join dependency. every PJNF schema is also in 4NF. Database System Concepts,5th Ed. C.8 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.8 ©Silberschatz, Korth and Sudarshan th Ed. Project-Join Normal Form (PJNF) A relation schema R is in PJNF with respect to a set D of functional, multivalued, and join dependencies if for all join dependencies in D+ of the form *(R1 , R2 ,..., Rn ) where each Ri  R and R =R1 R2  ...  Rn at least one of the following holds: *(R1 , R2 ,..., Rn ) is a trivial join dependency. Every Ri is a superkey for R. Since every multivalued dependency is also a join dependency, every PJNF schema is also in 4NF

Example Consider Loan-info-schema =(branch-name,customer-name,loan-number. amount). Each loan has one or more customers,is in one or more branches and has a loan amount;these relationships are independent,hence we have the join dependency *(=(loan-number,branch-name),(loan-number,customer-name),(loan- number,amount)) Loan-info-schema is not in PJNF with respect to the set of dependencies containing the above join dependency.To put Loan-info-schema into PJNF, we must decompose it into the three schemas specified by the join dependency: (loan-number,branch-name) (loan-number,customer-name) (loan-number,amount) Database System Concepts,5th Ed. c.9 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.9 ©Silberschatz, Korth and Sudarshan th Ed. Example Consider Loan-info-schema = (branch-name, customer-name, loan-number, amount). Each loan has one or more customers, is in one or more branches and has a loan amount; these relationships are independent, hence we have the join dependency *(=(loan-number, branch-name), (loan-number, customer-name), (loan￾number, amount)) Loan-info-schema is not in PJNF with respect to the set of dependencies containing the above join dependency. To put Loan-info-schema into PJNF, we must decompose it into the three schemas specified by the join dependency: (loan-number, branch-name) (loan-number, customer-name) (loan-number, amount)

Domain-Key Normal Form(DKNY) Domain declaration.Let A be an attribute,and let dom be a set of values.The domain declaration A c dom requires that the A value of all tuples be values in dom. Key declaration.Let R be a relation schema with Kc R.The key declaration key(K)requires that K be a superkey for schema R(K-> R).All key declarations are functional dependencies but not all functional dependencies are key declarations. General constraint.A general constraint is a predicate on the set of all relations on a given schema. Let D be a set of domain constraints and let K be a set of key constraints for a relation schema R.Let G denote the general constraints for R.Schema R is in DKNF if DK logically imply G. Database System Concepts,5th Ed. C.10 ©Silberschat乜,Korth and Sudarshan

Database System Concepts, 5 C.10 ©Silberschatz, Korth and Sudarshan th Ed. Domain-Key Normal Form (DKNY) Domain declaration. Let A be an attribute, and let dom be a set of values. The domain declaration A  dom requires that the A value of all tuples be values in dom. Key declaration. Let R be a relation schema with K  R. The key declaration key (K) requires that K be a superkey for schema R (K → R). All key declarations are functional dependencies but not all functional dependencies are key declarations. General constraint. A general constraint is a predicate on the set of all relations on a given schema. Let D be a set of domain constraints and let K be a set of key constraints for a relation schema R. Let G denote the general constraints for R. Schema R is in DKNF if D  K logically imply G

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共12页,试读已结束,阅读完整版请下载
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有