Example of Lossless-Join Decomposition Lossless join decomposition Decomposition of R=(A,B,C) R1=(A,B) R2=(B,C) A B C AB B C A a 1 A B B B 2 12 B r ΠAB() ΠB.c0 C ΠA()凶ΠB(r) A B 1 A B B Database System Concepts-6th Edition 8.7 @Silberschatz,Korth and Sudarshan
Database System Concepts - 6 8.7 ©Silberschatz, Korth and Sudarshan th Edition Example of Lossless-Join Decomposition Lossless join decomposition Decomposition of R = (A, B, C) R1 = (A, B) R2 = (B, C) A B 1 2 A B 1 2 r B,C(r) A (r) B (r) A B 1 2 C A B B 1 2 C A B C A B A,B(r)
First Normal Form Domain is atomic if its elements are considered to be indivisible units Examples of non-atomic domains: Set of names,composite attributes Identification numbers like CS101 that can be broken up into parts A relational schema R is in first normal form if the domains of all attributes of R are atomic Non-atomic values complicate storage and encourage redundant (repeated)storage of data Example:Set of accounts stored with each customer,and set of owners stored with each account We assume all relations are in first normal form (and revisit this in Chapter 22:Object Based Databases) Database System Concepts-6th Edition 8.8 ©Silberschat乜,Korth and Sudarshan
Database System Concepts - 6 8.8 ©Silberschatz, Korth and Sudarshan th Edition First Normal Form Domain is atomic if its elements are considered to be indivisible units Examples of non-atomic domains: Set of names, composite attributes Identification numbers like CS101 that can be broken up into parts A relational schema R is in first normal form if the domains of all attributes of R are atomic Non-atomic values complicate storage and encourage redundant (repeated) storage of data Example: Set of accounts stored with each customer, and set of owners stored with each account We assume all relations are in first normal form (and revisit this in Chapter 22: Object Based Databases)
First Normal Form(Cont'd) Atomicity is actually a property of how the elements of the domain are used. Example:Strings would normally be considered indivisible Suppose that students are given roll numbers which are strings of the form CS0012 or EE1127 If the first two characters are extracted to find the department,the domain of roll numbers is not atomic. Doing so is a bad idea:leads to encoding of information in application program rather than in the database. Database System Concepts-6th Edition 8.9 @Silberschatz,Korth and Sudarshan
Database System Concepts - 6 8.9 ©Silberschatz, Korth and Sudarshan th Edition First Normal Form (Cont’d) Atomicity is actually a property of how the elements of the domain are used. Example: Strings would normally be considered indivisible Suppose that students are given roll numbers which are strings of the form CS0012 or EE1127 If the first two characters are extracted to find the department, the domain of roll numbers is not atomic. Doing so is a bad idea: leads to encoding of information in application program rather than in the database
Goal-Devise a Theory for the Following Decide whether a particular relation R is in "good"form. In the case that a relation R is not in"good"form,decompose it into a set of relations {R1,R2,...R}such that each relation is in good form the decomposition is a lossless-join decomposition Our theory is based on: functional dependencies multivalued dependencies Database System Concepts-6th Edition 8.10 @Silberschatz,Korth and Sudarshan
Database System Concepts - 6 8.10 ©Silberschatz, Korth and Sudarshan th Edition Goal — Devise a Theory for the Following Decide whether a particular relation R is in “good” form. In the case that a relation R is not in “good” form, decompose it into a set of relations {R1 , R2 , ..., Rn } such that each relation is in good form the decomposition is a lossless-join decomposition Our theory is based on: functional dependencies multivalued dependencies
Functional Dependencies Constraints on the set of legal relations. Require that the value for a certain set of attributes determines uniquely the value for another set of attributes. A functional dependency is a generalization of the notion of a key. Database System Concepts-6th Edition 8.11 @Silberschatz,Korth and Sudarshan
Database System Concepts - 6 8.11 ©Silberschatz, Korth and Sudarshan th Edition Functional Dependencies Constraints on the set of legal relations. Require that the value for a certain set of attributes determines uniquely the value for another set of attributes. A functional dependency is a generalization of the notion of a key