CSCI 5333 Data Base Management
System
Spring 2002 (1/14-5/6)
Week 2: Data Modeling (Ch. 3, 4)
I. The Phases of Database Design (see Figure
3.1):
- Data: requirements collection & analysis, conceptual
design, logical design, physical design.
- Operation: functional analysis, application program design,
transaction implementation.
A. The DBMS-Independent Phases:
B. The DBMS-Dependent Phases:
- Question: What phases are DBMS-independent?
What phases are DBMS-dependent?
|
- Question: Which phase is the end of the
DBMS-independent phases? Which is the start of the DBMS-dependent phase?
|
- Question: What is the relationship between
the two threads (functional vs database)?
|
- Question: Where does ER modeling fit in
the phases?
|
- Question: Where does the relational data
model fit in the phases?
|
- Question: At which phase does a database
designer specify the database operations?
|
- Question: Why does the 'physical design'
phase take both the logical schema and the high-level transaction specification
as the input?
|
- Question: Why does the 'transaction implementation'
phase take both the application program design and the internal schema
as the input?
|
Ø
Go to the
Index
II. Entity-Relationship
Modeling
A. Terminology
concepts
|
definition
|
example
|
entity
|
|
|
entity type
|
|
|
entity set
|
|
|
attribute
|
|
|
simple (atomic) attribute
|
|
|
composite attribute
|
|
|
single-valued attribute
|
|
|
multivalued attribute
|
|
|
complex attribute
|
|
|
stored attributes
|
|
|
derived attributes
|
|
|
key attributes
|
|
|
|
|
|
P(V)
|
|
|
A: E --> P(V)
|
|
|
value sets (domains)
V = P(V1) x P(V2) x ... x P(Vn)
|
|
|
relationship
|
|
|
relationship type
|
|
|
relationship set
|
|
|
relationship instance
|
|
Fig. 3.9
Fig. 3.10
|
role
|
|
Fig. 3.11
|
recursive relationship
|
|
Fig. 3.11
|
cardinality ratio
|
|
|
participation constraint
|
|
|
total (existence) participation
|
|
|
partial participation
|
|
|
structural constraint
|
|
|
attributes of relationship types
|
|
|
the weak (child, subordinate) entity
types
|
|
|
the identifying (owner, parent, dominant)
entity type
|
|
|
the identifying relationship
|
|
|
partial key
|
|
|
- Question: What makes a relationship different
from an attribute?
- Question: How is a relationship between two
entities represented in a relational model? How if in an object-oriented
database? HINT: See p.55.
- Question: It is said in the book that 'weak
entity types' can sometimes be represented as complex attributes. How? What
are the trade-offs of the alternative representations? HINT: p.60.
- Exercise: Give a full interpretation of ALL
the relationships existing in Figure 3.2. Take into account 'cardinality
ratio', 'weak relationships' and 'weak entities'.
- Exercise: Compare Figure 3.2 and Figure 3.15.
Which one is more precise in expressing the relationships?
Ø
Go to the
Index
|