# 6.830 Lecture PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization

Size: px
Start display at page:

Download "6.830 Lecture 3 9.16.2015 PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization"

## Transcription

1 6.830 Lecture PS1 Due Next Time (Tuesday!) Lab 1 Out today start early! Relational Model Continued, and Schema Design and Normalization Animals(name,age,species,cageno,keptby,feedtime) Keeper(id,name) Main operations (from last time) Projection (π(t,c1,, cn)) -- select a subset of columns c1.. cn Selection (sel(t, pred)) -- select a subset of rows that satisfy pred Cross Product (T1 x T2) -- combine two tables Join (T1, T2, pred) = sel(t1 x T2, pred) Plus various set operations (UNION, DIFFERENCE, etc) (show slide) Notice that basic ops are all set oriented, unlike record oriented in previous models Ex: Keepers kept by joe: π cageno (σ name= joe (animals keptby=kid keepers)) Though the relational algebra is very elegant, it was hard to understand. Part of the great debate was that Bachman et al didn't think mere mortals could program in it, and didn't believe it could be implemented efficiently. SQL is an attempt to create something more reasonable Instead of math expressions, set-oriented language; above query becomes SELECT cageno FROM keepers, animals WHERE keeper = keptby AND keeper.name = 'joe' [ORDER BY] [GROUP BY] SELECT cageno FROM keepers JOIN animals ON keeper = keptby WHERE keeper.name = 'joe' Translating SQL <----> Relational Algebra is straightforward

2 SELECT ==> Projection list FROM ==> all tables referenced JOIN ==> join expressions WHERE ==> select expressions (show slide) No expectation that SQL query processors will evaluate expressions in order they are written. Aggregates not in relational model. Note that SQL is a "calculus", meaning that it specifies *what*, not *how* -- i.e., it is "declarative", whereas the relational algebra is more imperative because a relational expression implies a particular ordering of operations. Let's compare SQL to CODASYL - Programming no longer navigates in N-D space -- just write a program to extract the data they want. Simple, and elegant. - Physical independence: Note that the relational model says nothing about the physical representation at all. Users just interact with operators on tables. Tables could be sorted, hashed, indexed, whatever Programs will continue to run no matter what physical representation is chosen for the data. In practice, what is supposed to happen is that: User isn t supposed to know about representation Administrator tries to layout data on disk in a way that is good for user s queries. Query optimizer picks best access method for query at hand In practice, as a user of a database, you often need to work to get the best representation to make your queries run fast. But typically this doesn't involve schema changes. - Logical independence: (How can you change the schema without breaking legacy programs?)

3 Create a "view" that looks like the old schema. E.g., suppose we want to add multiple feedtimes: Create a new table, feedtimes (aname string, feedtime time) Rename the animals table to animals2 Remove the feedtime column from animals Create a "view" with the name animals, defined in terms of animals2 and feedtimes: CREATE VIEW animals AS SELECT name, age, species, cageno, keptby, (SELECT feedtime FROM feedtimes WHERE aname=name LIMIT 1) FROM animals (show slide) Now when animals2 gets updated, animals will still be valid table according to old schema. Of course, old apps need to be rewritten if they need to know animals have multiple feed times. Somewhat imperfect -- e.g., figuring out how to update a2 if animals is updated is hard (this is the "view update problem") Can also introduce performance impacts, since queries over old schema have to be "rewritten" through views We will talk more later, but *all* queries and many updates can be supported on views.

4 In summary 's there was a long debate on this topic One one hand, non-relational camp argued for - Low level efficient programming languages Relational camp wanted: - High level languages - Data independence Relational camp eventually won -- when IBM released its relational product. Note that high level languages and data independence are possible in a graph language. Example, JSON support in Postgres (show slides), demo. Now that we understand relational algebra, we are almost ready to talk about how we actually implement a system that executes this algebra. But first, let's focus on how we design a database and choose a set of tables. (break) Schema Normalization Q1 : Why is redundancy a problem? - Because it leads to various anomalies when you try to update a table. - Because it wastes space ss# name address hobby cost 123 john main st dolls \$ 123 john main st bugs \$ 234 mary lake st bugs \$ 345 mary lake st tennis \$\$ 456 joe first st dolls \$ What is the primary key? SS# + Hobby? people have names and addresses, hobbies have costs people can have multiple hobbies, and hobbies can be practiced by multiple people Types of anomalies (Codd calls "inconsistencies") - Update anomaly - change one address -- need to change the other

5 - Insertion anomaly - what if we want to add someone with no hobby? have to use a null? problem -- hobby is a part of the key! Q2: What can we do to solve it? Normalize! Most common way to do this is with an "entity relationship diagram" En#ty& Rela#onship& Diagram n:n relationships imply a mapping table from key of left table to key of right table so we'd have person (ssn, address, name) hobby (name, cost) personhobby (hobbyname, ssn) 1:n relationships imply a key-foreign key reference, e.g., if every person has one hobby, we could add a hobbyid field 1:1 relationships can be merged into the same table (imply a strict dependencies) -- e.g., each person has a unique hobby, then their hobby can just be stored with them (Decomposes into ss# name address 1 joe main st 2 jenny lake st 3 jimmy south st hobby cost dolls \$ bugs \$ tennis \$\$ ss# hid 1 dolls 1 bugs 2 tennis 2 bugs 3 dolls)

7 FD2 and FD3 sufficient to imply FD1 ==> "Armstrong's axioms" Where do FDs come from? Domain knowledge of database designer (not derived from data, though can check that data satisfies them!) Normal Forms A table that has no redundancy is said to be in BCNF "Boyce Codd Normal Form" Formally, a set of relations is in BCNF if: For every functional dependency X->Y in a set of functional dependencies F over relation R X is a superkey key of R, (where superkey means that X contains a key of R ) go to our hobbies example if we use the original example, SSN -> Name, Address is not a superkey! So this is not in BCNF. --> Redundancy In non-decomposed hobbies schema Name, Addr repeated for each appearance of a given SSN BCNF implies there is no redundant information -- e.g., that the association implied by any functional dependency is stored only once; Observe that our schema after ER modeling is in BCNF (FDs for each table only have superkeys on the left side) Decomposing into FD is easy -- just look at each FD, one by one, and check the conditions over each relation. If they don't apply to some relation R, split R into two relations, R1 and R2, where R1 = (X U Y) and R2 = R - (X U Y), Start with one "universal relation While some relation R is not in BCNF Find an FD F=X >Y that violates BCNF on R Split R into R1 = (X U Y), R2 = R Y

8 Example: FD2: SSN -> Name, Address FD3: Hobby -> Cost R = S,N,A,H,C R is not in BCNF, b/c of FD2 (N, A is not a primary key of R) R1 = S,N,A, FD2 ; R2 = S,H,C, FD1', FD3 R2 not in BCNF, b/c of FD3 R3 = H, C (FD3) R4 = S, H (FD1'') Is it always possible to remove all redundancy? Consider: account, client, office: Client, Office -> Account Account -> Office Account Client Office a joe 1 b mary 1 a john 1 c joe 2 (key client,office) Redundancy b/c the fact that account a is in office 1 is represented twice. Not in BCNF b/c account is not a superkey of the table This table is in "third normal form" (3NF) but not BCNF. To put it into BCNF, we would have to decompose into Account, Office Client But we've "lost" the first dependency now, in the sense that it can't be checked by looking at a single table. 3NF preserves all dependencies, but may have redundancy, and BCNF removes all redundancy but may drop some dependencies. Comparable algorithms for 3NF, not going into details.

9 Denormalization When and where do we want to do it? Do we always want to decompose a relation? Why or why not? Generally speaking, decomposition : - decreases storage overhead by eliminating redundancy and - increases query costs by adding joins. This isn't always true! Sometimes it increases storage overhead or decreases query costs. Sometimes (for performance issues) you don't want to decompose. So how much does this really matter? Eliminating redundancy really is important. Adding lots of joins can really screw performance. These two are sometimes at odds with each other. In practice, what people do is what we did for hobbies -- think about entities, join them on keys. "Entity relationship" model provides a way to do this and will result in something in BCNF.

### Relational Database Design

Relational Database Design To generate a set of relation schemas that allows - to store information without unnecessary redundancy - to retrieve desired information easily Approach - design schema in appropriate

### Database Design and Normalization

Database Design and Normalization CPS352: Database Systems Simon Miner Gordon College Last Revised: 9/27/12 Agenda Check-in Functional Dependencies (continued) Design Project E-R Diagram Presentations

### Relational Database Design: FD s & BCNF

CS145 Lecture Notes #5 Relational Database Design: FD s & BCNF Motivation Automatic translation from E/R or ODL may not produce the best relational design possible Sometimes database designers like to

### Database Design and Normal Forms

Database Design and Normal Forms Database Design coming up with a good schema is very important How do we characterize the goodness of a schema? If two or more alternative schemas are available how do

### Databases -Normalization III. (N Spadaccini 2010 and W Liu 2012) Databases - Normalization III 1 / 31

Databases -Normalization III (N Spadaccini 2010 and W Liu 2012) Databases - Normalization III 1 / 31 This lecture This lecture describes 3rd normal form. (N Spadaccini 2010 and W Liu 2012) Databases -

### Week 11: Normal Forms. Logical Database Design. Normal Forms and Normalization. Examples of Redundancy

Week 11: Normal Forms Database Design Database Redundancies and Anomalies Functional Dependencies Entailment, Closure and Equivalence Lossless Decompositions The Third Normal Form (3NF) The Boyce-Codd

### Database Management Systems. Redundancy and Other Problems. Redundancy

Database Management Systems Winter 2004 CMPUT 391: Database Design Theory or Relational Normalization Theory Dr. Osmar R. Zaïane Lecture 2 Limitations of Relational Database Designs Provides a set of guidelines,

### Chapter 8. Database Design II: Relational Normalization Theory

Chapter 8 Database Design II: Relational Normalization Theory The E-R approach is a good way to start dealing with the complexity of modeling a real-world enterprise. However, it is only a set of guidelines

### Normalization. Reduces the liklihood of anomolies

Normalization Normalization Tables are important, but properly designing them is even more important so the DBMS can do its job Normalization the process for evaluating and correcting table structures

### Chapter 7: Relational Database Design

Chapter 7: Relational Database Design Database System Concepts, 5th Ed. See www.db book.com for conditions on re use Chapter 7: Relational Database Design Features of Good Relational Design Atomic Domains

### COSC344 Database Theory and Applications. Lecture 9 Normalisation. COSC344 Lecture 9 1

COSC344 Database Theory and Applications Lecture 9 Normalisation COSC344 Lecture 9 1 Overview Last Lecture Functional Dependencies This Lecture Normalisation Introduction 1NF 2NF 3NF BCNF Source: Section

### Schema Refinement, Functional Dependencies, Normalization

Schema Refinement, Functional Dependencies, Normalization MSCI 346: Database Systems Güneş Aluç, University of Waterloo Spring 2015 MSCI 346: Database Systems Chapter 19 1 / 42 Outline 1 Introduction Design

### Chapter 5: FUNCTIONAL DEPENDENCIES AND NORMALIZATION FOR RELATIONAL DATABASES

1 Chapter 5: FUNCTIONAL DEPENDENCIES AND NORMALIZATION FOR RELATIONAL DATABASES INFORMAL DESIGN GUIDELINES FOR RELATION SCHEMAS We discuss four informal measures of quality for relation schema design in

### Limitations of E-R Designs. Relational Normalization Theory. Redundancy and Other Problems. Redundancy. Anomalies. Example

Limitations of E-R Designs Relational Normalization Theory Chapter 6 Provides a set of guidelines, does not result in a unique database schema Does not provide a way of evaluating alternative schemas Normalization

### Lecture Notes on Database Normalization

Lecture Notes on Database Normalization Chengkai Li Department of Computer Science and Engineering The University of Texas at Arlington April 15, 2012 I decided to write this document, because many students

### CSCI-GA.2433-001 Database Systems Lecture 7: Schema Refinement and Normalization

CSCI-GA.2433-001 Database Systems Lecture 7: Schema Refinement and Normalization Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com View 1 View 2 View 3 Conceptual Schema At that point we

### Functional Dependency and Normalization for Relational Databases

Functional Dependency and Normalization for Relational Databases Introduction: Relational database design ultimately produces a set of relations. The implicit goals of the design activity are: information

### Schema Refinement and Normalization

Schema Refinement and Normalization Module 5, Lectures 3 and 4 Database Management Systems, R. Ramakrishnan 1 The Evils of Redundancy Redundancy is at the root of several problems associated with relational

### CS 377 Database Systems. Database Design Theory and Normalization. Li Xiong Department of Mathematics and Computer Science Emory University

CS 377 Database Systems Database Design Theory and Normalization Li Xiong Department of Mathematics and Computer Science Emory University 1 Relational database design So far Conceptual database design

### BCA. Database Management System

BCA IV Sem Database Management System Multiple choice questions 1. A Database Management System (DBMS) is A. Collection of interrelated data B. Collection of programs to access data C. Collection of data

### Functional Dependencies and Finding a Minimal Cover

Functional Dependencies and Finding a Minimal Cover Robert Soulé 1 Normalization An anomaly occurs in a database when you can update, insert, or delete data, and get undesired side-effects. These side

### Schema Design and Normal Forms Sid Name Level Rating Wage Hours

Entity-Relationship Diagram Schema Design and Sid Name Level Rating Wage Hours Database Management Systems, 2 nd Edition. R. Ramakrishnan and J. Gehrke 1 Database Management Systems, 2 nd Edition. R. Ramakrishnan

### Chapter 10. Functional Dependencies and Normalization for Relational Databases

Chapter 10 Functional Dependencies and Normalization for Relational Databases Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant

### Normalization in Database Design

in Database Design Marek Rychly mrychly@strathmore.edu Strathmore University, @ilabafrica & Brno University of Technology, Faculty of Information Technology Advanced Databases and Enterprise Systems 14

### Theory of Relational Database Design and Normalization

Theory of Relational Database Design and Normalization (Based on Chapter 14 and some part of Chapter 15 in Fundamentals of Database Systems by Elmasri and Navathe, Ed. 3) 1 Informal Design Guidelines for

### Chapter 10. Functional Dependencies and Normalization for Relational Databases. Copyright 2007 Ramez Elmasri and Shamkant B.

Chapter 10 Functional Dependencies and Normalization for Relational Databases Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Chapter Outline 1 Informal Design Guidelines for Relational Databases

### Normalization of Database

Normalization of Database UNIT-4 Database Normalisation is a technique of organizing the data in the database. Normalization is a systematic approach of decomposing tables to eliminate data redundancy

### Normalisation to 3NF. Database Systems Lecture 11 Natasha Alechina

Normalisation to 3NF Database Systems Lecture 11 Natasha Alechina In This Lecture Normalisation to 3NF Data redundancy Functional dependencies Normal forms First, Second, and Third Normal Forms For more

### Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 5: Normalization II; Database design case studies. September 26, 2005

Introduction to Databases, Fall 2005 IT University of Copenhagen Lecture 5: Normalization II; Database design case studies September 26, 2005 Lecturer: Rasmus Pagh Today s lecture Normalization II: 3rd

### Functional Dependencies and Normalization

Functional Dependencies and Normalization 5DV119 Introduction to Database Management Umeå University Department of Computing Science Stephen J. Hegner hegner@cs.umu.se http://www.cs.umu.se/~hegner Functional

### CS143 Notes: Normalization Theory

CS143 Notes: Normalization Theory Book Chapters (4th) Chapters 7.1-6, 7.8, 7.10 (5th) Chapters 7.1-6, 7.8 (6th) Chapters 8.1-6, 8.8 INTRODUCTION Main question How do we design good tables for a relational

### Carnegie Mellon Univ. Dept. of Computer Science 15-415 - Database Applications. Overview - detailed. Goal. Faloutsos CMU SCS 15-415

Faloutsos 15-415 Carnegie Mellon Univ. Dept. of Computer Science 15-415 - Database Applications Lecture #17: Schema Refinement & Normalization - Normal Forms (R&G, ch. 19) Overview - detailed DB design

### Design of Relational Database Schemas

Design of Relational Database Schemas T. M. Murali October 27, November 1, 2010 Plan Till Thanksgiving What are the typical problems or anomalies in relational designs? Introduce the idea of decomposing

### C# Cname Ccity.. P1# Date1 Qnt1 P2# Date2 P9# Date9 1 Codd London.. 1 21.01 20 2 23.01 2 Martin Paris.. 1 26.10 25 3 Deen London.. 2 29.

4. Normalisation 4.1 Introduction Suppose we are now given the task of designing and creating a database. How do we produce a good design? What relations should we have in the database? What attributes

### Introduction to Database Systems. Normalization

Introduction to Database Systems Normalization Werner Nutt 1 Normalization 1. Anomalies 1. Anomalies 2. Boyce-Codd Normal Form 3. 3 rd Normal Form 2 Anomalies The goal of relational schema design is to

### DATABASE NORMALIZATION

DATABASE NORMALIZATION Normalization: process of efficiently organizing data in the DB. RELATIONS (attributes grouped together) Accurate representation of data, relationships and constraints. Goal: - Eliminate

### normalisation Goals: Suppose we have a db scheme: is it good? define precise notions of the qualities of a relational database scheme

Goals: Suppose we have a db scheme: is it good? Suppose we have a db scheme derived from an ER diagram: is it good? define precise notions of the qualities of a relational database scheme define algorithms

### Announcements. SQL is hot! Facebook. Goal. Database Design Process. IT420: Database Management and Organization. Normalization (Chapter 3)

Announcements IT0: Database Management and Organization Normalization (Chapter 3) Department coin design contest deadline - February -week exam Monday, February 1 Lab SQL SQL Server: ALTER TABLE tname

### Answer Key. UNIVERSITY OF CALIFORNIA College of Engineering Department of EECS, Computer Science Division

Answer Key UNIVERSITY OF CALIFORNIA College of Engineering Department of EECS, Computer Science Division CS186 Fall 2003 Eben Haber Midterm Midterm Exam: Introduction to Database Systems This exam has

### Database Management System

UNIT -6 Database Design Informal Design Guidelines for Relation Schemas; Functional Dependencies; Normal Forms Based on Primary Keys; General Definitions of Second and Third Normal Forms; Boyce-Codd Normal

### Database design theory, Part I

Database design theory, Part I Functional dependencies Introduction As we saw in the last segment, designing a good database is a non trivial matter. The E/R model gives a useful rapid prototyping tool,

### Conceptual Design Using the Entity-Relationship (ER) Model

Conceptual Design Using the Entity-Relationship (ER) Model Module 5, Lectures 1 and 2 Database Management Systems, R. Ramakrishnan 1 Overview of Database Design Conceptual design: (ER Model is used at

### Part I: Entity Relationship Diagrams and SQL (40/100 Pt.)

Part I: Entity Relationship Diagrams and SQL (40/100 Pt.) Q.1.1) Translate the following E-R Schema to SQL-DDL tables using the CREATE Table Statement and check constraints, if needed: LatinName EnglishName

### RELATIONAL DATABASE DESIGN

RELATIONAL DATABASE DESIGN g Good database design - Avoiding anomalies g Functional Dependencies g Normalization & Decomposition Using Functional Dependencies g 1NF - Atomic Domains and First Normal Form

### Normalization in OODB Design

Normalization in OODB Design Byung S. Lee Graduate Programs in Software University of St. Thomas St. Paul, Minnesota bslee@stthomas.edu Abstract When we design an object-oriented database schema, we need

### Introduction Decomposition Simple Synthesis Bernstein Synthesis and Beyond. 6. Normalization. Stéphane Bressan. January 28, 2015

6. Normalization Stéphane Bressan January 28, 2015 1 / 42 This lecture is based on material by Professor Ling Tok Wang. CS 4221: Database Design The Relational Model Ling Tok Wang National University of

### Physical Database Design and Tuning

Chapter 20 Physical Database Design and Tuning Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1. Physical Database Design in Relational Databases (1) Factors that Influence

### Chapter 15 Basics of Functional Dependencies and Normalization for Relational Databases

Chapter 15 Basics of Functional Dependencies and Normalization for Relational Databases Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 15 Outline Informal Design Guidelines

Chapter 20 Physical Database Design and Tuning Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1. Physical Database Design in Relational Databases (1) Factors that Influence

### Objectives of Database Design Functional Dependencies 1st Normal Form Decomposition Boyce-Codd Normal Form 3rd Normal Form Multivalue Dependencies

Objectives of Database Design Functional Dependencies 1st Normal Form Decomposition Boyce-Codd Normal Form 3rd Normal Form Multivalue Dependencies 4th Normal Form General view over the design process 1

### Relational Database Design Theory

Relational Database Design Theory Informal guidelines for good relational designs Functional dependencies Normal forms and normalization 1NF, 2NF, 3NF BCNF, 4NF, 5NF Inference rules on functional dependencies

### Relational Normalization Theory (supplemental material)

Relational Normalization Theory (supplemental material) CSE 532, Theory of Database Systems Stony Brook University http://www.cs.stonybrook.edu/~cse532 2 Quiz 8 Consider a schema S with functional dependencies:

### Why Is This Important? Schema Refinement and Normal Forms. The Evils of Redundancy. Functional Dependencies (FDs) Example (Contd.)

Why Is This Important? Schema Refinement and Normal Forms Chapter 19 Many ways to model a given scenario in a database How do we find the best one? We will discuss objective criteria for evaluating database

### If it's in the 2nd NF and there are no non-key fields that depend on attributes in the table other than the Primary Key.

Normalization First Normal Form (1st NF) The table cells must be of single value. Eliminate repeating groups in individual tables. Create a separate table for each set of related data. Identify each set

### Introduction to Databases

Introduction to Databases IT University of Copenhagen January 7, 2005 This exam consists of 6 problems with a total of 16 questions. The weight of each problem is stated. You have 4 hours to answer all

### Database Systems Concepts, Languages and Architectures

These slides are for use with Database Systems Concepts, Languages and Architectures Paolo Atzeni Stefano Ceri Stefano Paraboschi Riccardo Torlone To view these slides on-screen or with a projector use

### Theory behind Normalization & DB Design. Satisfiability: Does an FD hold? Lecture 12

Theory behind Normalization & DB Design Lecture 12 Satisfiability: Does an FD hold? Satisfiability of FDs Given: FD X Y and relation R Output: Does R satisfy X Y? Algorithm: a.sort R on X b.do all the

### Files. Files. Files. Files. Files. File Organisation. What s it all about? What s in a file?

Files What s it all about? Information being stored about anything important to the business/individual keeping the files. The simple concepts used in the operation of manual files are often a good guide

### Elena Baralis, Silvia Chiusano Politecnico di Torino. Pag. 1. Physical Design. Phases of database design. Physical design: Inputs.

Phases of database design Application requirements Conceptual design Database Management Systems Conceptual schema Logical design ER or UML Physical Design Relational tables Logical schema Physical design

### The University of British Columbia

The University of British Columbia Computer Science 304 Midterm Examination October 31, 2005 Time: 50 minutes Total marks: 50 Instructor: Rachel Pottinger Name ANSWER KEY (PRINT) (Last) (First) Signature

### 3. Relational Model and Relational Algebra

ECS-165A WQ 11 36 3. Relational Model and Relational Algebra Contents Fundamental Concepts of the Relational Model Integrity Constraints Translation ER schema Relational Database Schema Relational Algebra

### Project 2 Database Design and ETL

Project 2 Database Design and ETL Out: October 7th, 2015 1 Introduction: What is this project all about? We ve now studied many techniques that help in modeling data (E-R diagrams), which can then be migrated

### Normalization. CIS 331: Introduction to Database Systems

Normalization CIS 331: Introduction to Database Systems Normalization: Reminder Why do we need to normalize? To avoid redundancy (less storage space needed, and data is consistent) To avoid update/delete

### SQL DDL. DBS Database Systems Designing Relational Databases. Inclusion Constraints. Key Constraints

DBS Database Systems Designing Relational Databases Peter Buneman 12 October 2010 SQL DDL In its simplest use, SQL s Data Definition Language (DDL) provides a name and a type for each column of a table.

### 14 Databases. Source: Foundations of Computer Science Cengage Learning. Objectives After studying this chapter, the student should be able to:

14 Databases 14.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define a database and a database management system (DBMS)

### Normal forms and normalization

Normal forms and normalization An example of normalization using normal forms We assume we have an enterprise that buys products from different supplying companies, and we would like to keep track of our

TYPICAL QUESTIONS & ANSWERS PART -I OBJECTIVE TYPE QUESTIONS Each Question carries 2 marks. Choosethe correct or the best alternative in the following: Q.1 Which of the following relational algebra operations

### The process of database development. Logical model: relational DBMS. Relation

The process of database development Reality (Universe of Discourse) Relational Databases and SQL Basic Concepts The 3rd normal form Structured Query Language (SQL) Conceptual model (e.g. Entity-Relationship

### COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model

COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model The entity-relationship (E-R) model is a a data model in which information stored

### Chapter 5: Logical Database Design and the Relational Model Part 2: Normalization. Introduction to Normalization. Normal Forms.

Chapter 5: Logical Database Design and the Relational Model Part 2: Normalization Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden Robert C. Nickerson ISYS

### Introduction to Database Systems. Chapter 4 Normal Forms in the Relational Model. Chapter 4 Normal Forms

Introduction to Database Systems Winter term 2013/2014 Melanie Herschel melanie.herschel@lri.fr Université Paris Sud, LRI 1 Chapter 4 Normal Forms in the Relational Model After completing this chapter,

### DBMS. Normalization. Module Title?

Normalization Database Normalization Database normalization is the process of removing redundant data from your tables in to improve storage efficiency, data integrity (accuracy and consistency), and scalability

Database design 1 The Database Design Process: Before you build the tables and other objects that will make up your system, it is important to take time to design it. A good design is the keystone to creating

### Unit 3.1. Normalisation 1 - V2.0 1. Normalisation 1. Dr Gordon Russell, Copyright @ Napier University

Normalisation 1 Unit 3.1 Normalisation 1 - V2.0 1 Normalisation Overview discuss entity integrity and referential integrity describe functional dependency normalise a relation to first formal form (1NF)

### Database Normalization. Mohua Sarkar, Ph.D Software Engineer California Pacific Medical Center 415-600-7003 sarkarm@sutterhealth.

Database Normalization Mohua Sarkar, Ph.D Software Engineer California Pacific Medical Center 415-600-7003 sarkarm@sutterhealth.org Definition A database is an organized collection of data whose content

### C HAPTER 4 INTRODUCTION. Relational Databases FILE VS. DATABASES FILE VS. DATABASES

INRODUCION C HAPER 4 Relational Databases Questions to be addressed in this chapter: How are s different than file-based legacy systems? Why are s important and what is their advantage? What is the difference

### Module 5: Normalization of database tables

Module 5: Normalization of database tables Normalization is a process for evaluating and correcting table structures to minimize data redundancies, thereby reducing the likelihood of data anomalies. The

### CS2Bh: Current Technologies. Introduction to XML and Relational Databases. Introduction to Databases. Why databases? Why not use XML?

CS2Bh: Current Technologies Introduction to XML and Relational Databases Spring 2005 Introduction to Databases CS2 Spring 2005 (LN5) 1 Why databases? Why not use XML? What is missing from XML: Consistency

### An Algorithmic Approach to Database Normalization

An Algorithmic Approach to Database Normalization M. Demba College of Computer Science and Information Aljouf University, Kingdom of Saudi Arabia bah.demba@ju.edu.sa ABSTRACT When an attempt is made to

### Physical Design. Meeting the needs of the users is the gold standard against which we measure our success in creating a database.

Physical Design Physical Database Design (Defined): Process of producing a description of the implementation of the database on secondary storage; it describes the base relations, file organizations, and

### The Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1

The Relational Model Ramakrishnan&Gehrke, Chapter 3 CS4320 1 Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. Legacy systems in older models

### Normalization. CIS 3730 Designing and Managing Data. J.G. Zheng Fall 2010

Normalization CIS 3730 Designing and Managing Data J.G. Zheng Fall 2010 1 Overview What is normalization? What are the normal forms? How to normalize relations? 2 Two Basic Ways To Design Tables Bottom-up:

### KNOWLEDGE FACTORING USING NORMALIZATION THEORY

KNOWLEDGE FACTORING USING NORMALIZATION THEORY J. VANTHIENEN M. SNOECK Katholieke Universiteit Leuven Department of Applied Economic Sciences Dekenstraat 2, 3000 Leuven (Belgium) tel. (+32) 16 28 58 09

### MCQs~Databases~Relational Model and Normalization http://en.wikipedia.org/wiki/database_normalization

http://en.wikipedia.org/wiki/database_normalization Database normalization is the process of organizing the fields and tables of a relational database to minimize redundancy. Normalization usually involves

### Optimum Database Design: Using Normal Forms and Ensuring Data Integrity. by Patrick Crever, Relational Database Programmer, Synergex

Optimum Database Design: Using Normal Forms and Ensuring Data Integrity by Patrick Crever, Relational Database Programmer, Synergex Printed: April 2007 The information contained in this document is subject

### white paper Rocket Nested Relational Databases

white paper Rocket Nested Relational Databases Rocket Software, Inc. or its affiliates 1990 2014. All rights reserved. Rocket and the Rocket Software logos are registered trademarks of Rocket Software,

### Functional Dependencies

BCNF and 3NF Functional Dependencies Functional dependencies: modeling constraints on attributes stud-id name address course-id session-id classroom instructor Functional dependencies should be obtained

### Database Sample Examination

Part 1: SQL Database Sample Examination (Spring 2007) Question 1: Draw a simple ER diagram that results in a primary key/foreign key constraint to be created between the tables: CREATE TABLE Salespersons

### Database Design for the Uninitiated CDS Brownbag Series CDS

Database Design for the Uninitiated Paul Litwin FHCRC Collaborative Data Services 1 CDS Brownbag Series This is the ninth in a series of seminars Materials for the series can be downloaded from www.deeptraining.com/fhcrc

### Physical Database Design Process. Physical Database Design Process. Major Inputs to Physical Database. Components of Physical Database Design

Physical Database Design Process Physical Database Design Process The last stage of the database design process. A process of mapping the logical database structure developed in previous stages into internal

### DATABASE DESIGN: NORMALIZATION NOTE & EXERCISES (Up to 3NF)

DATABASE DESIGN: NORMALIZATION NOTE & EXERCISES (Up to 3NF) Tables that contain redundant data can suffer from update anomalies, which can introduce inconsistencies into a database. The rules associated

### ICOM 6005 Database Management Systems Design. Dr. Manuel Rodríguez Martínez Electrical and Computer Engineering Department Lecture 2 August 23, 2001

ICOM 6005 Database Management Systems Design Dr. Manuel Rodríguez Martínez Electrical and Computer Engineering Department Lecture 2 August 23, 2001 Readings Read Chapter 1 of text book ICOM 6005 Dr. Manuel

### User Manual. for the. Database Normalizer. application. Elmar Jürgens 2002-2004 juergens@in.tum.de

User Manual for the Database Normalizer application Elmar Jürgens 2002-2004 juergens@in.tum.de Introduction 1 Purpose of this document 1 Concepts 1 Explanation of the User Interface 2 Overview 2 All Relations

### Normalisation 1. Chapter 4.1 V4.0. Copyright @ Napier University

Normalisation 1 Chapter 4.1 V4.0 Copyright @ Napier University Normalisation Overview discuss entity integrity and referential integrity describe functional dependency normalise a relation to first formal

### Chapter 10 Functional Dependencies and Normalization for Relational Databases

Chapter 10 Functional Dependencies and Normalization for Relational Databases Copyright 2004 Pearson Education, Inc. Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of

### DBMS / Business Intelligence, SQL Server

DBMS / Business Intelligence, SQL Server Orsys, with 30 years of experience, is providing high quality, independant State of the Art seminars and hands-on courses corresponding to the needs of IT professionals.

### Chapter 7: Relational Database Design

Chapter 7: Relational Database Design Pitfalls in Relational Database Design Decomposition Normalization Using Functional Dependencies Normalization Using Multivalued Dependencies Normalization Using Join

### Question 1. Relational Data Model [17 marks] Question 2. SQL and Relational Algebra [31 marks]

EXAMINATIONS 2005 MID-YEAR COMP 302 Database Systems Time allowed: Instructions: 3 Hours Answer all questions. Make sure that your answers are clear and to the point. Write your answers in the spaces provided.