9/21/2000SIMS 257 – Database Management Database Design: From Conceptual Design to Physical Implementation University of California, Berkeley School of.

Slides:



Advertisements
Similar presentations
Chapter 5 Normalization of Database Tables
Advertisements

5 5 Normalization of Database Tables Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Normalization of Database Tables
Chapter 5 Normalization of Database Tables
Chapter 5 Normalization of Database Tables
+ Review: Normalization and data anomalies CSCI 2141 W2013 Slide set modified from courses.ischool.berkeley.edu/i257/f06/.../Lecture06_257.ppt.
11/7/2000Database Management -- R. Larson Network, Object-Oriented and Other Database Models University of California, Berkeley School of Information Management.
SLIDE 1IS 202 – FALL 2005 Prof. Ray Larson UC Berkeley SIMS SIMS 202: Information Organization and Retrieval Normalization & The Relational.
Normalization of Database Tables
SLIDE 1IS 257 – Fall 2011 Referential Integrity and Database Design Recap: From Conceptual Design to Physical Relational Implementation University.
SLIDE 1IS 257 – Fall 2006 Database Design: Logical Models: Normalization and The Relational Model University of California, Berkeley School.
SLIDE 1IS 257 – Fall 2009 Database Design: Logical Models: Normalization and The Relational Model University of California, Berkeley School.
SLIDE 1IS Fall 2002 Physical Database Design University of California, Berkeley School of Information Management and Systems SIMS 202:
SLIDE 1IS 257 – Fall 2004 Relational Algebra and Calculus: Introduction to SQL University of California, Berkeley School of Information Management.
9/25/2001SIMS 257: Database Management Physical Database Design University of California, Berkeley School of Information Management and Systems SIMS 257:
Database Design Conceptual –identify important entities and relationships –determine attribute domains and candidate keys –draw the E-R diagram Logical.
Normalization of Database Tables
SLIDE 1IS 257 – Spring 2004 Physical Database Design University of California, Berkeley School of Information Management and Systems SIMS 257:
10/2/2001SIMS 257 – Database Management Database Design: From Conceptual Design to Physical Implementation - Relational Model University of California,
SLIDE 1IS Fall 2002 Relational Algebra and Calculus: Introduction to SQL University of California, Berkeley School of Information Management.
Database Design: Logical Model and Normalization
SLIDE 1IS 257 – Fall 2008 Database Design: Logical Models: Normalization and The Relational Model University of California, Berkeley School.
SLIDE 1IS 257 – Fall 2005 Database Design: Normalization and The Relational Model University of California, Berkeley School of Information.
8/28/97Information Organization and Retrieval Database Design: Normalization University of California, Berkeley School of Information Management and Systems.
SLIDE 1IS 257 – Fall 2004 Relational Algebra and Calculus: Introduction to SQL University of California, Berkeley School of Information Management.
SLIDE 1IS 257 – Fall 2004 Database Design: Normalization and The Relational Model University of California, Berkeley School of Information.
SLIDE 1IS 257 – Fall 2009 Physical Database Design University of California, Berkeley School of Information I 257: Database Management.
Chapter 5 Normalization of Database Tables
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 5 Normalization of Database Tables.
8/28/97Information Organization and Retrieval Controlled Vocabularies: Name Authority Control University of California, Berkeley School of Information.
SLIDE 1IS 257 – Fall 2008 Database Design Recap: From Conceptual Design to Physical Relational Implementation University of California, Berkeley.
SLIDE 1IS Fall 2002 Database Design: From Conceptual Design to Physical Relational Implementation University of California, Berkeley.
SLIDE 1IS 257 – Spring 2004 Database Design: From Conceptual Design to Physical Relational Implementation University of California, Berkeley.
Daniel AdinugrohoDatabase Programming 1 DATABASE PROGRAMMING Lecture on 29 – 04 – 2005.
SLIDE 1I 257 – Fall 2014 Referential Integrity and Database Design Recap: From Conceptual Design to Physical Relational Implementation University.
Lecture 12 Inst: Haya Sammaneh
SLIDE 1IS 257 – Fall 2011 Referential Integrity and Database Design Recap: From Conceptual Design to Physical Relational Implementation University.
A Guide to SQL, Eighth Edition Chapter Two Database Design Fundamentals.
9/9/1999Information Organization and Retrieval Database Design: From Conceptual Design to Physical Implementation University of California, Berkeley School.
1 Chapter 1 Overview of Database Concepts. 2 Chapter Objectives Identify the purpose of a database management system (DBMS) Distinguish a field from a.
Database Systems: Design, Implementation, and Management Tenth Edition
Concepts of Database Management, Fifth Edition
Database Systems: Design, Implementation, and Management Ninth Edition Chapter 6 Normalization of Database Tables.
The Relational Model and Normalization R. Nakatsu.
1 A Guide to MySQL 2 Database Design Fundamentals.
Normalization (Codd, 1972) Practical Information For Real World Database Design.
BIS Database Systems School of Management, Business Information Systems, Assumption University A.Thanop Somprasong Chapter # 5 Normalization of Database.
Logical Database Design Relational Model. Logical Database Design Logical database design: process of transforming conceptual data model into a logical.
SALINI SUDESH. Primarily a tool to validate and improve a logical design so that it satisfies certain constraints that avoid unnecessary duplication of.
Normalization Well structured relations and anomalies Normalization First normal form (1NF) Functional dependence Partial functional dependency Second.
1 A Guide to MySQL 2 Database Design Fundamentals.
SLIDE 1IS 257 – Fall 2014 Database Design: Logical Models: Normalization and The Relational Model University of California, Berkeley School.
SLIDE 1IS 202 – FALL 2006 Prof. Ray Larson UC Berkeley SIMS SIMS 202: Information Organization and Retrieval Introduction to Database Design.
9/23/2012ISC329 Isabelle Bichindaritz1 Normalization.
Lesson 2: Designing a Database and Creating Tables.
Normalization. 2 u Main objective in developing a logical data model for relational database systems is to create an accurate representation of the data,
11/10/2009GAK1 Normalization. 11/10/2009GAK2 Learning Objectives Definition of normalization and its purpose in database design Types of normal forms.
Normalization. Overview Earliest  formalized database design technique and at one time was the starting point for logical database design. Today  is.
Logical Database Design and Relational Data Model Muhammad Nasir
SLIDE 1IS 257 – Fall 2006 Normalization Normalization theory is based on the observation that relations with certain properties are more effective.
MS Access. Most A2 projects use MS Access Has sufficient depth to support a significant project. Relational Databases. Fairly easy to develop a good user.
IT 5433 LM3 Relational Data Model. Learning Objectives: List the 5 properties of relations List the properties of a candidate key, primary key and foreign.
12/4/2001Information Organization and Retrieval Database Design University of California, Berkeley School of Information Management and Systems SIMS 202:
University of California, Berkeley School of Information
A Guide to SQL, Eighth Edition
Referential Integrity and Database Design Recap: From Conceptual Design to Physical Relational Implementation University of California, Berkeley School.
Database Normalization
Normalization Normalization theory is based on the observation that relations with certain properties are more effective in inserting, updating and deleting.
University of California, Berkeley School of Information
Physical Database Design
Presentation transcript:

9/21/2000SIMS 257 – Database Management Database Design: From Conceptual Design to Physical Implementation University of California, Berkeley School of Information Management and Systems SIMS 257 – Database Management

9/21/2000SIMS 257 – Database Management Review Database Design Process Normalization

9/21/2000SIMS 257 – Database Management Database Design Process Conceptual Model Logical Model External Model Conceptual requirements Conceptual requirements Conceptual requirements Conceptual requirements Application 1 Application 2Application 3Application 4 Application 2 Application 3 Application 4 External Model External Model External Model Internal Model

9/21/2000SIMS 257 – Database Management Normalization Normalization theory is based on the observation that relations with certain properties are more effective in inserting, updating and deleting data than other sets of relations containing the same data Normalization is a multi-step process beginning with an “unnormalized” relation –Hospital example from Atre, S. Data Base: Structured Techniques for Design, Performance, and Management.

9/21/2000SIMS 257 – Database Management Normal Forms First Normal Form (1NF) Second Normal Form (2NF) Third Normal Form (3NF) Boyce-Codd Normal Form (BCNF) Fourth Normal Form (4NF) Fifth Normal Form (5NF)

9/21/2000SIMS 257 – Database Management Normalization Boyce- Codd and Higher Functional dependencyof nonkey attributes on the primary key - Atomic values only Full Functional dependencyof nonkey attributes on the primary key No transitive dependency between nonkey attributes All determinants are candidate keys - Single multivalued dependency

9/21/2000SIMS 257 – Database Management Unnormalized Relations First step in normalization is to convert the data into a two-dimensional table In unnormalized relations data can repeat within a column

9/21/2000SIMS 257 – Database Management Unnormalized Relation

9/21/2000SIMS 257 – Database Management First Normal Form

9/21/2000SIMS 257 – Database Management Second Normal Form

9/21/2000SIMS 257 – Database Management Second Normal Form

9/21/2000SIMS 257 – Database Management Second Normal Form

9/21/2000SIMS 257 – Database Management Third Normal Form

9/21/2000SIMS 257 – Database Management Third Normal Form

9/21/2000SIMS 257 – Database Management Most 3NF Relations are also BCNF

9/21/2000SIMS 257 – Database Management Fourth Normal Form Any relation is in Fourth Normal Form if it is BCNF and any multivalued dependencies are trivial Eliminate non-trivial multivalued dependencies by projecting into simpler tables

9/21/2000SIMS 257 – Database Management Fifth Normal Form A relation is in 5NF if every join dependency in the relation is implied by the keys of the relation Implies that relations that have been decomposed in previous NF can be recombined via natural joins to recreate the original relation.

9/21/2000SIMS 257 – Database Management Normalization Normalization is performed to reduce or eliminate Insertion, Deletion or Update anomalies. However, a completely normalized database may not be the most efficient or effective implementation. “Denormalization” is sometimes used to improve efficiency.

9/21/2000SIMS 257 – Database Management Denormalization Usually driven by the need to improve query speed Query speed is improved at the expense of more complex or problematic DML (Data manipulation language) for updates, deletions and insertions.

9/21/2000SIMS 257 – Database Management Downward Denormalization Customer ID Address Name Telephone Customer ID Address Name Telephone Order Order No Date Taken Date Dispatched Date Invoiced Cust ID Order Order No Date Taken Date Dispatched Date Invoiced Cust ID Cust Name Before:After:

9/21/2000SIMS 257 – Database Management Upward Denormalization Order Order No Date Taken Date Dispatched Date Invoiced Cust ID Cust Name Order Order No Date Taken Date Dispatched Date Invoiced Cust ID Cust Name Order Price Order Item Order No Item No Item Price Num Ordered Order Item Order No Item No Item Price Num Ordered

9/21/2000SIMS 257 – Database Management Today: New Design Today we will build the COOKIE database from needs (rough) through the conceptual model, logical model and finally physical implementation in Access.

9/21/2000SIMS 257 – Database Management ER Diagram Symbols Entity Attribute Primary key Relationship Ovals are used to indicate the attributes associated with an entity or relationship (That is, the pieces of information recorded in the database about the entity or relationship) An underlined name indicates that the attribute is a primary key (That is, it can uniquely identify the entity) Rectangles are used to indicate entities (That is, the representatives or records describing persons, things, or events in the database) Diamonds are used to indicate relationships between entities. (That is, some association between the data records of different entities)

9/21/2000SIMS 257 – Database Management Cookie Requirements Cookie is a bibliographic database that contains information about a hypothetical union catalog of several libraries. Need to record which books are held by which libraries Need to search on bibliographic information –Author, title, subject, call number for a given library, etc. Need to know who publishes the books for ordering, etc.

9/21/2000SIMS 257 – Database Management Cookie Database There are currently 5 main types of entities in the database –Books (bibfile) –Local Call numbers (callfile) –Libraries (libfile) –Publishers (pubfile) –Subject headings (subfile) –Links between subject and books (indxfile)

9/21/2000SIMS 257 – Database Management BIBFILE Books (BIBFILE) contains information about particular books. It includes one record for each book. The attributes are: –accno -- an “accession” or serial number –author -- The author’s name (not realistic -- one author per book) –title -- The title of the book –loc -- Location of publication (where published) –date -- Date of publication –price -- Price of the book –pagination -- Number of pages –ill -- What type of illustrations (maps, etc) if any –height -- Height of the book in centimeters

9/21/2000SIMS 257 – Database Management Books/BIBFILE Books Author accno Title Loc Date Price Pagination Height Ill

9/21/2000SIMS 257 – Database Management CALLFILE CALLFILE contains call numbers and holdings information linking particular books with particular libraries. Its attributes are: –accno -- the book accession number –libid -- the id of the holding library –callno -- the call number of the book in the particular library –copies -- the number of copies held by the particular library

9/21/2000SIMS 257 – Database Management LocalInfo/CALLFILE CALLFILE Copies accno libid Callno

9/21/2000SIMS 257 – Database Management LIBFILE LIBFILE contain information about the libraries participating in this union catalog. Its attributes include: –libid -- Library id number –library -- Name of the library –laddress -- Street address for the library –lcity -- City name –lstate -- State code (postal abbreviation) –lzip -- zip code –lphone -- Phone number –mop - suncl -- Library opening and closing times for each day of the week.

9/21/2000SIMS 257 – Database Management Libraries/LIBFILE LIBFILE Libid SatCl SatOp FCl FOp ThCl ThOpWClWOpTuClTuOp Mcl MOp Suncl SunOp lphone lzip lstatelcity laddress Library

9/21/2000SIMS 257 – Database Management PUBFILE PUBFILE contain information about the publishers of books. Its attributes include –pubid -- The publisher’s id number –publisher -- Publisher name –paddress -- Publisher street address –pcity -- Publisher city –pstate -- Publisher state –pzip -- Publisher zip code –pphone -- Publisher phone number –ship -- standard shipping time in days

9/21/2000SIMS 257 – Database Management Publisher/PUBFILE PUBFILE pubid Ship Publisher pphone pzip pstate pcity paddress

9/21/2000SIMS 257 – Database Management SUBFILE SUBFILE contains each unique subject heading that can be assigned to books. Its attributes are –subcode -- Subject identification number –subject -- the subject heading/description

9/21/2000SIMS 257 – Database Management Subjects/SUBFILE SUBFILE Subject subid

9/21/2000SIMS 257 – Database Management INDXFILE INDXFILE provides a way to allow many- to-many mapping of subject headings to books. Its attributes consist entirely of links to other tables –subcode -- link to subject id –accno -- link to book accession number

9/21/2000SIMS 257 – Database Management Linking Subjects and Books INDXFILE accno subid

9/21/2000SIMS 257 – Database Management Some examples of Cookie Searches Who wrote Microcosmographia Academica? How many pages long is Alfred Whitehead’s The Aims of Education and Other Essays? Which branches in Berkeley’s public library system are open on Sunday? What is the call number of Moffitt Library’s copy of Abraham Flexner’s book Universities: American, English, German? What books on the subject of higher education are among the holdings of Berkeley (both UC and City) libraries? Print a list of the Mechanics Library holdings, in descending order by height. What would it cost to replace every copy of each book that contains illustrations (including graphs, maps, portraits, etc.)? Which library closes earliest on Friday night?

9/21/2000SIMS 257 – Database Management Cookie ER diagram Has call BIBFILE pubid LIBFILE INDXFILE accno SUBFILE Has index libid CALLFILE Has copy publishes pubid PUBFILE Has subject subcodeaccnosubcode libidaccno Note: diagram contains only attributes used for linking

9/21/2000SIMS 257 – Database Management What Problems? What sorts of problems and missing features arise given the previous ER diagram?

9/21/2000SIMS 257 – Database Management Problems Identified Field sizes inappropriate Author doesn’t allow multiple authors (editors, etc). Subtitles, parallel titles Edition information Series information lending status material type designation Genre, class information Better codes (ISBN?) Missing information (ISBN) Authority control for authors Missing/incomplete data Data entry problems Ordering information Illustrations Subfield separation (such as last_name, first_name) Separate personal and corporate authors

9/21/2000SIMS 257 – Database Management Problems (Cont.) Location field inconsistent No notes field No language field Zipcode doesn’t support plus-4 No publisher shipping addresses No (indexable) keyword search capability No support for multivolume works No support for URLs –to online version –to libraries –to publishers

9/21/2000SIMS 257 – Database Management Original Cookie ER diagram Has call BIBFILE pubid LIBFILE INDXFILE accno SUBFILE Has index Address, etc Library libid CALLFILE Has copy publishes pubid PUBFILE Has subject subidaccnosubidsubject Callno Libid accno

9/21/2000SIMS 257 – Database Management Cookie2: Separate Name Authorities nameid BIBFILE pubid LIBFILE INDXFILE accno SUBFILE libid CALLFILE pubid PUBFILE subcodeaccnosubcode libid accno AUTHFILE AUTHBIB authtype accno nameid name

9/21/2000SIMS 257 – Database Management Cookie3: Keywords nameid BIBFILE pubid LIBFILE INDXFILE accno SUBFILE libid CALLFILE pubid PUBFILE subcodeaccnosubcode libid accno AUTHFILE AUTHBIB authtype accno nameid name KEYMAP TERMS accnotermid

9/21/2000SIMS 257 – Database Management Cookie 4: Series nameid BIBFILE pubid LIBFILE INDXFILE accno SUBFILE libid CALLFILE pubid PUBFILE subcodeaccnosubcode libid accno AUTHFILE AUTHBIB authtype accno nameid name KEYMAP TERMS accnotermid SERIES seriesid ser_title

9/21/2000SIMS 257 – Database Management Cookie 5: Circulation nameid BIBFILE pubid LIBFILE accno libid CALLFILE pubid PUBFILE libid accno INDXFILE SUBFILE subcodeaccno subcode AUTHFILE AUTHBIB authtype accno nameid name KEYMAP TERMS accnotermid SERIES seriesid ser_title CIRC circidcopynumpatronid PATRON circid

9/21/2000SIMS 257 – Database Management Mapping to Relations Take each entity –BIBFILE –LIBFILE –CALLFILE –SUBFILE –PUBFILE –INDXFILE And make it a table...

9/21/2000SIMS 257 – Database Management Implementing the Physical Database... For each of the entities, we will build a table… Start up access… Use “New” in Tables… Loading data Entering data Data entry forms