Relational Database Design
Module 1: Introduction
Hugo Kornelis
hugo@perFact.info
Outline
Storage hardware
Database technologies
Relational model
Fundamentals
Codd’s Twelve Rules
Types of data models
Conceptual
Logical
Physical
Development of storage hardware
Punch cards
http://commons.wikimedia.org/wiki/File:Hollerith_punched_card.jpg
Development of storage hardware
Punch cards
Punch tape
http://commons.wikimedia.org/wiki/File:PaperTapes-5and8Hole.jpg
http://commons.wikimedia.org/wiki/File:Honolulu_IFSS_Teletype1964.jpg
Development of storage hardware
Punch cards
Punch tape
Magnetic tape
http://commons.wikimedia.org/wiki/File:Quarter-Inch_Cartridges.jpg
http://commons.wikimedia.org/wiki/File:IBM_System_360_tape_drives.jpg
Development of storage hardware
Punch cards
Punch tape
Magnetic tape
Spinning disc
Hard disk
Floppy disk
http://commons.wikimedia.org/wiki/File:Hdd_od_srodka.jpg
http://commons.wikimedia.org/wiki/File:Floppy_disk_2009_G1.jpg
Development of storage hardware
Punch cards
Punch tape
Magnetic tape
Spinning disc
Hard disk
Floppy disk
Optical disc
Compact disc
DVD
Blu-Ray
http://en.wikipedia.org/wiki/File:DVD-4.5-scan.png
Development of storage hardware
Punch cards
Punch tape
Magnetic tape
Spinning disc
Hard disk
Floppy disk
Optical disc
Compact disc http://commons.wikimedia.org/wiki/File:Hp-io-accelerator-isometric.gif
DVD
Blu-Ray
Solid State Drive (SSD)
http://commons.wikimedia.org/wiki/File:SanDisk_Cruzer_Micro.png
Database technologies
Database
Not necessarily a relational database
Database:
“a usually large collection of data organized especially for rapid
search and retrieval (as by a computer)”
(http://www.merriam-webster.com/dictionary/database)
Database technologies
Evolution of database technologies
Sequential (“flat”) files
Record type C = Customer data
C John Doe 19290418
A 18 Pivot Drive Nowhereville
A PO box 39773 Somewhereelse
Record type A = Address
Database technologies
Evolution of database technologies
Sequential (“flat”) files
C John Doe 19290418
A 18 Pivot Drive Nowhereville
Record type O = Order information A PO box 39773 Somewhereelse
O 19671026 USD 217.00
P Drill hammer 1 199.00
Record type P = Product ordered P Power cord 2 8.00
O 19671031 USD 12.50
P Screwdriver set 1 12.50
...
Database technologies
Evolution of database technologies
Sequential (“flat”) files
Hierarchical database
Database technologies
Evolution of database technologies
Sequential (“flat”) files
Hierarchical database
Network database
Relational database
Object database
XML database
“Big data”
?????
The Relational Model
Based on mathematics
Set theory
First-order predicate logic
Column (attribute) Table (relation)
CustomerID FirstName LastName Birthdate
Row (tuple) XY001 John Doe April 18, 1929
BR092 Mary Green March 4, 1980
PD500 Francesca de la Gillebert September 12, 1959
WI308 John Green March 4, 1980
Primary key
Data value
The Relational Model
Based on mathematics
Set theory
First-order predicate logic
Relationships between elements based on data values (primary key)
NOT on storage order
NOT with pointers to physical location
Rules for relational databases describe behavior
Actual implementation can be chosen by vendor
The Relational Model
Codd’s twelve rules
0: Foundation Rule
1: Information Rule
2: Guaranteed Access Rule
3: Systematic Treatment of Null Values
4: Dynamic On-line Catalog Based on the Relational Model
5: Comprehensive Data Sublanguage Rule
6: View Updating Rule
7: High-level Insert, Update, and Delete
8: Physical Data Independence
9: Logical Data Independence
10: Integrity Independence
11: Distribution Independence
12: Nonsubversion Rule
Data modeling
Conceptual data model
All information in the organization
Not necessarily stored in computers
Logical data model
For storing in computers
For a specific database technology
Implementation independent
Physical data model
Optimized for specific vendor
Based on logical model
Summary
Storage hardware
Database technologies
Relational model
Fundamentals
Codd’s Twelve Rules
Types of data models
Conceptual
Logical
Physical
References
Further reading:
http://en.wikipedia.org/wiki/History_of_computing_hardware
http://royal.pingdom.com/2008/04/08/the-history-of-computer-data-
storage-in-pictures/
http://en.wikipedia.org/wiki/Database_management_system
http://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf (Codd’s
groundbreaking article from 1970)
http://en.wikipedia.org/wiki/Relational_model
http://en.wikipedia.org/wiki/Codd's_12_rules
http://pbdj.sys-con.com/node/106944 (“Why Have Conceptual, Logical, and
Physical Data Modeling?”)