D A T A B A S E S
ical designer.This information will be very use-
ful for physical design decisions such as index
selection and data clustering.
Re so u rce s
• If desired, you can postpone selecting a pro-
duction-level DBMS until just after implemen-
tation analysis (step 3.1). After this step, you
can provide potential vendors with a specifica-
tion that completely describes your logical data
model and related performance requirements.
• A technical specialist with limited knowledge
of the application domain can do the physical
design.
Bo o ks
Design of Database Structures, Toby Teorey and James Fry,
Prentice Hall, Upper Saddle River, N.J., 1982.An excellent oldie
but goody that predates most commercial RDBMSs. The
authors use “implementation design” to describe the design
phase between conceptual and physical database design.Within
this phase, they present a logical record access (LRA) design
method that explicitly decouples schema formulation and
schema refinement. The LRA method triggered my thoughts
on the advantages of further decoupling schema refinement by
“promoting” it to a major independent design step.
An Introduction to Database Systems, C.J. Date, 7th ed.,
Addison Wesley Longman, Reading, Mass., 2000. Date artic-
ulates the importance of both physical and logical data inde-
pendence.
Object-Oriented Modeling and Design for Database
Applications, Michael Blaha and William Premerlani,
Prentice Hall, Upper Saddle River, N.J., 1998. The authors
identify 20 primitive transformations to convert a high-level
object model to a detailed object model. Especially interest-
ing is their presentation of a partial mathematical theory to
formalize these transformations. Later, during relational
design, they also consider alternative mappings from a detailed
object model to tables. Their approach appears to be consis-
tent with the idea of decoupling schema refinement from phys-
ical design.
ADVANCED ARCHITECTURES
Thus far,I have presumed that the database will
be implemented on a conventional centralized
DBMS executing on a single-CPU server. Imple-
mentation design can incorporate design activi-
ties for advanced database architectures.Systems
that use advanced database architectures should
still define conceptual and logical data models.
During implementation design, you would then
explicitly consider logical design modifications
specific to the type of advanced database archi-
tecture.
Dist rib u t e d d a t a b a se syst e m s
A distributed database is a collection of
autonomous database systems that share data via
a communications network.Database design in a
distributed environment considers data parti-
tioning (fragmentation), data replication, and
allocation of data to different sites. Distributed
design techniques are based on a “how big, how
many,how often” analysis except that “how often
a program is executed” becomes “how often a
program is executed at a particular site.” In other
words,data analysis in a distributed environment
builds on the implementation analysis described
in Figure 5.
Principles of Distributed Database Systems, Tamer Ozsu
and Patrick Valduriez, 2nd ed., Prentice Hall, Upper Saddle
River, N.J., 1999. Major text on distributed database technol-
ogy and design methodology.
Art icle s
Surajit Chaudhuri and Umeshwar Dayal, “An Overview of
Data Warehousing and OLAP Technology,” ACM SIGMOD
Record, Mar. 1997, pp. 65-74.
The ideal distributed database should appear to
the user as a single centralized database. (This is
C.J. Date’s Rule Zero for distributed databases.)
This means that a distributed database should pre-
serve the ideal logical data model. It should hide
any design complexity that stems from three
sources: some tables are partitioned into frag-
ments, some tables/fragments are replicated, and
tables/fragments or their replicas are allocated to
and can migrate among different sites.
Unfortunately, the ideal distributed database
does not exist.Vendors have provided distributed
systems that support replication transparency.
However,these systems do not provide complete
support for fragmentation or allocation trans-
David DeWitt and Jim Gray, “Parallel Database Systems:
The Future of High Performance Database Systems,” Comm.
ACM, June 1992, pp. 85-98.
Le Gruenwald, and Margaret Eich, “Selecting a Database
Partitioning Technique,” J. Database Management, Vol. 4,
No. 3, 1993, pp. 27-39.
Shamkant Navathe,“Evolution of Data Modeling for Data-
bases,” Comm. ACM, Sept. 1992, pp. 112-123.
Tamer Ozsu and Patrick Valduriez, “Distributed and
Parallel Database Systems:Technology and Current State-of-
the-Art,” ACM Computing Surveys, Mar. 1997, pp. 1-4.
Nick Roussopoulos, “Materialized Views and Data Ware-
houses,” ACM SIGMOD Record, Mar. 1998, pp. 21-26.
48 IT Pro March ❘ April 2000