Slide 9
Slide 9
9.1
Define each of the following database
terms
Relation
Primary key
Functional dependency
Foreign key
Referential integrity
Field
Data type
Null value
Denormalization
File organization
Index
Secondary key
9.2
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Discuss the role of designing databases in
the analysis and design of an information
system
Learn how to transform an Entity-Relation
(ER) Diagram into an equivalent set of well-
structured relations
Learn how to merge normalized relations
from separate user views into a
consolidated set of well-structured relations
9.3
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Explain choices of storage formats for
database tables
Learn how to transform well-structured
relations into efficient database tables
Discuss use of different types of file
organizations to store database files
Discuss indexes and their purpose
9.4
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Logical Design
› Based upon the conceptual data model
› Four key steps:
1. Develop a logical data model for each known
user interface for the application using
normalization principles
2. Combine normalized data requirements from all
user interfaces into one consolidated logical
database model
3. Translate the conceptual E-R data model for the
application into normalized data requirements
4. Compare the consolidated logical database
design with the translated E-R model and produce
one final logical database model for the
application
9.5
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Physical Design
› Based upon results of logical database
design
› Key decisions:
1. Choosing storage format for each attribute from
the logical database model
2. Grouping attributes from the logical database
model into physical records
3. Arranging related records in secondary memory
(hard disks and magnetic tapes) so that records
can be stored, retrieved, and updated rapidly
4. Selecting media and structures for storing data to
make access more efficient
9.6
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Primary Key
› An attribute whose value is unique across all
occurrences of a relation
9.7
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Logical database design must
account for every data element,
system input or output
Normalized relations are the primary
deliverable
Physical database design results in
converting relations into files
9.8
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Data represented as a set of related tables or
relations
Relation
› A named, two-dimensional table of data. Each
relation consists of a set of named columns and
an arbitrary number of unnamed rows
› Properties
Entries in cells are simple
Entries in columns are from the same set of values
Each row is unique
The sequence of columns can be interchanged
without changing the meaning or use of the relation
The rows may be interchanged or stored in any
sequence
9.9
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Well-Structured Relation
› A relation that contains a minimum
amount of redundancy and allows users
to insert, modify, and delete the rows
without errors or inconsistencies
9.10
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
The process of converting complex
data structures into simple, stable data
structures
Eliminates redundancy (see Figure 9-6)
9.11
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Second Normal Form (2NF)
› Each nonprimary key attribute is identified by
the whole key (called full functional
dependency)
Third Normal Form (3NF)
› Nonprimary key attributes do not depend on
each other (called transitive dependencies)
The result of normalization is that every
nonprimary key attribute depends upon
the whole primary key.
9.12
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Functional Dependency
› A particular relationship between two attributes.
For a given relation, attribute B is functionally
dependent on attribute A if, for every valid value
of A, that value of A uniquely determines the
value of B.
› Instances (or sample data) in a relation do not
prove the existence of a functional dependency
› Knowledge of problem domain is the most
reliable method for identifying functional
dependency
9.13
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Second Normal Form (2NF)
› A relation is in second normal form (2NF) if
any of the following conditions apply:
1. The primary key consists of only one attribute
2. No nonprimary key attributes exist in the
relation
3. Every nonprimary key attribute is functionally
dependent on the full set of primary key
attributes
9.14
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Conversion to second normal form (2NF)
› To convert a relation into 2NF, decompose
the relation into new relations using the
attributes, called determinates, that
determine other attributes
› The determinates become the primary key
of the new relation
9.15
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Third Normal Form (3NF)
› A relation is in third normal form (3NF) if it is in
second normal form (2NF) and there are no
functional (transitive) dependencies
between two (or more) nonprimary key
attributes
› To convert a relation into 2NF, decompose
the relation into two relations using the two
determinants
9.16
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.17
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Foreign Key
› An attribute that appears as a nonprimary key
attribute in one relation and as a primary key
attribute (or part of a primary key) in another
relation
Referential Integrity
› An integrity constraint specifying that the value
(or existence) of an attribute in one relation
depends on the value (or existence) of the same
attribute in another relation
9.18
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
It is useful to transform the conceptual
data model into a set of normalized
relations
Steps:
1. Represent entities
2. Represent relationships
3. Normalize the relations
4. Merge the relations
9.19
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
1. Represent Entities
› Each regular entity is transformed into a relation
› The identifier of the entity type becomes the
primary key of the corresponding relation
› The primary key must satisfy the following two
conditions
a. The value of the key must uniquely identify every row
in the relation
b. The key should be non-redundant
9.20
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.21
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
2. Represent Relationships
› Binary 1:N Relationships
Add the primary key attribute (or attributes)
of the entity on the one side of the
relationship as a foreign key in the relation
that is on the right side
The one side migrates to the many side
9.22
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.23
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
2. Represent Relationships (continued)
› Binary or Unary 1:1
Three possible options:
a. Add the primary key of A as a foreign key of B
b. Add the primary key of B as a foreign key of A
c. Both
› Binary and higher M:N relationships
Create another relation and include primary
keys of all relations as primary key of new
relation
9.24
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.25
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
› Unary 1:N Relationships
Relationship between instances of a single entity type
Utilize a recursive foreign key
A foreign key in a relation that references the primary key
values of that same relation
› Unary M:N Relationships
Create a separate relation
Primary key of new relation is a composite of two
attributes that both take their values from the same
primary key
9.26
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.27
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.28
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
3. Merging Relations (View Integration)
› Purpose is to remove redundant relations
› View Integration Problems
• Synonyms
Two different names used for the same attribute
When merging, get agreement from users on a single,
standard name
• Homonyms
A single attribute name that is used for two or more
different attributes
Resolved by creating a new name
• Dependencies between nonkeys
Dependencies may be created as a result of view
integration
In order to resolve, the new relation must be normalized
9.29
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
The following information is required
› Normalized relations, including volume
estimates
› Definitions of each attribute
› Descriptions of where and when data are
used, entered, retrieved, deleted, and
updated (including frequencies)
› Expectations or requirements for response
time and data integrity
› Descriptions of the technologies used for
implementing the files and database
9.30
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Field
› The smallest unit of named application data recognized by
system software
› Each attribute from each relation will be represented as one or
more fields
Choosing data types
› Data Type
A coding scheme recognized by system software for
representing organizational data
› Four objectives:
Minimize storage space
Represent all possible values for the field
Improve data integrity for the field
Support all data manipulations desired on the field
› Calculated fields
A field that can be derived from other database fields
9.31
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Default Value
› A value a field will assume unless an explicit value is entered
for that field
Input Mask
› A pattern of codes that restricts the width and possible
values for each position of a field
Range Control
› Limits range of values that can be entered into field
Referential Integrity
› An integrity constraint specifying that the value (or
existence) of an attribute in one relation depends on the
value (or existence) of the same attribute in another relation
Null Value
› A special field value, distinct from 0, blank or any other
value, that indicates that the value for the field is missing or
otherwise unknown
9.32
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.33
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Relational Database is a Set of Related
Tables
Physical Table
› A named set of rows and columns that
specifies the fields in each row of the table
Design Goals
› Efficient use of secondary storage (disk
space)
Disks are divided into units that can be read in one
machine operation
Space is used most efficiently when the physical
length of a table row divides close to evenly with
storage unit
9.34
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Design Goals (continued)
› Efficient data processing
Data are most efficiently processed when stored next to
each other in secondary memory
Denormalization
› The process of splitting or combining normalized
relations into physical tables based on affinity of use
of rows and fields
› Optimizes certain operations at the expense of others
› Three common situations where denormalization may
be used:
1. Two entities with a one-to-one relationship
2. A many-to-many relationship with nonkey attributes
3. Reference data
9.35
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.36
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.37
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.38
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.39
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Arranging Table Rows
› Physical File
A named set of table rows stored in a contiguous
section of secondary memory
› Each table may be a physical file or whole
database may be one file, depending on
database management software utilized
9.40
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
File Organization
› A technique for physically arranging the
records of a file
› Objectives for choosing file organization:
1. Fast data retrieval
2. High throughput for processing transactions
3. Efficient use of storage space
4. Protection from failures or data loss
5. Minimizing need for reorganization
6. Accommodating growth
7. Security from unauthorized use
9.41
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Types of File Organization
› Sequential
The rows in the file are stored in sequence according to a
primary key value
Updating and adding records may require rewriting the file
Deleting records results in wasted space
› Indexed
The rows are stored either sequentially or non-sequentially
and an index is created that allows software to locate
individual rows
Index
• A table used to determine the location of rows in a file that
satisfy some condition
Secondary Index
• Index based upon a combination of fields for which more than
one row may have same combination of values
9.42
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
9.43
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Guidelines for choosing indexes
1. Specify a unique index for the primary key of
each file
2. Specify an index for foreign keys
3. Specify an index for nonkey fields that are
referenced in qualification, sorting, and
grouping commands for the purpose of
retrieving data
Hashed File Organization
› The address for each row is determined using
an algorithm
9.44
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Backup Techniques
› Periodic backup of files
› Transaction log or audit trail
› Change log
Data Security Techniques
› Coding, or encrypting
› User account management
› Prohibiting users from working directly with the
data; users work with a copy which updates
the files only after validation checks
9.45
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Design process is no different than for
other applications
9.46
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Key Terms
› Relation
› Primary key
› Functional dependency
› Foreign key
› Referential integrity
› Field
› Data type
› Denormalization
› File organization
› Index
› Secondary key
9.47
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
Transforming E-R diagram into well-
structured relations
View Integration
Storage Formats for Database Fields
Efficient Database Table Design
› Efficient use of secondary storage
› Data processing speed
File Organization
Indexes
Internet Development
9.48
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall
All rights reserved. No part of this publication may be reproduced, stored in a
retrieval system, or transmitted, in any form or by any means, electronic,
mechanical, photocopying, recording, or otherwise, without the prior written
permission of the publisher. Printed in the United States of America.