Skip to:Content
|
Bottom
Cover image for Logical database design principles
Title:
Logical database design principles
Personal Author:
Series:
Foundations of database design series
Publication Information:
Boca Raton, FL : Auerbach Publications, 2005
ISBN:
9780849318535
Subject Term:

Available:*

Library
Item Barcode
Call Number
Material Type
Item Category 1
Status
Searching...
30000010134633 QA76.9.D26 G37 2005 Open Access Book Book
Searching...

On Order

Summary

Summary

Until now, almost all books on logical database design focused exclusively on relational design. However, modern database management systems have added powerful features that have driven a movement away from truly normalized database design. Logical Database Design Principles reflects these recent changes. The book begins by covering traditional logical design principles, followed by an analysis of the normalizing and modeling of data. It then examines designing for specific purposes, such as object-oriented databases, online transaction processing (OLTP), and data warehouses. As the text progresses, it moves from the purely logical into some physical design, as determined by how the features of modern databases are implemented.

Because this is a logical-design book, the authors attempt to make the examples database-neutral. Because various vendors implement features in different ways, this volume sometimes offers examples from a specific database management system. When necessary, it highlights a specific application, clearly demonstrating the concept being discussed.


Table of Contents

1 Introduction to Logical Database Designp. 1
Understanding a Databasep. 1
Database Architecturesp. 2
Relational Databasesp. 4
Creating the Databasep. 4
System Development Life Cycle (SDLC)p. 5
Systems Planning: Assessment and Feasibilityp. 5
System Analysis: Requirementsp. 6
System Analysis: Requirements Checklistp. 8
Models Tracking and Schedulesp. 8
Design Modelingp. 9
Functional Decomposition Diagramp. 10
Data Flow Diagramsp. 11
Data Dictionaryp. 12
Logical Structures and Decision Treesp. 14
System Design: Logicalp. 15
2 System Design and Implementationp. 17
The ER Approachp. 17
Entities and Entity Typesp. 18
Attribute Domainsp. 20
Attributesp. 20
Set-Valued Attributesp. 20
Weak Entitiesp. 22
Constraintsp. 23
Key Constraints: Primaryp. 23
Key Constraints: Foreignp. 24
Lookup Tables and Consistencyp. 25
Modeling Approachesp. 26
Relationshipsp. 26
Cardinalityp. 29
Schemasp. 31
Implementation: Converting the ERDp. 32
Specifications and Documentationp. 34
3 Converting the Logical Data Modelp. 35
Database Architecturep. 35
SQLp. 38
DDL Commandsp. 38
Data Retrievalp. 45
DML Statements and Implicit Cursorsp. 46
Select Statementsp. 47
Cartesian Productp. 49
DML: Insert Commandsp. 50
DML: Update Commandp. 51
DML: Delete Statementsp. 52
Transaction Commandsp. 53
DCL Commandsp. 54
4 Formal Data Normalizationp. 55
Definitions of Normal Formsp. 57
First Normal Formp. 57
Second Normal Formp. 57
Third Normal Formp. 57
Boyce-Codd Normal Formp. 58
Fourth Normal Formp. 58
Fifth Normal Formp. 58
Introduction to Relational Algebrap. 59
Comparison Operations and Logical Operatorsp. 65
Applying Normal Formsp. 66
First Normal Formp. 68
Second Normal Formp. 68
Third Normal Formp. 70
Boyce-Codd Normal Formp. 71
Fourth Normal Formp. 71
Fifth Normal Formp. 71
Summaryp. 71
5 Data Denormalizationp. 73
Historical Perspective on Disk Costsp. 73
The Importance of Database Performance to the Logical Modelp. 74
Introducing Data Redundancy: Size versus Volatilityp. 75
The Theory of Dr. Ralph Kimballp. 76
Pre-Joining Entities Togetherp. 76
Pre-Aggregating Summary Informationp. 78
Non-First Normal Form Entitiesp. 79
Horizontal and Vertical Partitioning for Performancep. 79
Summaryp. 80
6 Object-Oriented Designp. 83
Object-Oriented Terminologyp. 85
Classesp. 85
Objectsp. 86
Messagesp. 86
Abstract Classesp. 86
Encapsulationp. 86
Inheritancep. 87
Polymorphismp. 87
Containmentp. 88
Extensibilityp. 88
Object Identityp. 88
Transparent Persistencep. 90
Storage and Access of Objectsp. 90
Object-Oriented Designp. 91
Object-Oriented Analysisp. 91
Different Models for Object Analysisp. 91
The Rumbaugh Methodp. 93
The Booch Methodp. 93
The Coad-Yourdon Methodp. 93
The Shlaer-Mellor Methodp. 94
The Unified Modeling Languagep. 94
Creating the Object Modelp. 95
Methods and Database Objectsp. 98
Summaryp. 100
7 Object-Relational Designp. 101
Advantages of Object-Relational Databasesp. 102
Atomic, Normalized Datap. 102
Ad hoc Queriesp. 102
Object Typesp. 103
Large Objectsp. 105
Collectionsp. 107
Arraysp. 107
Nested Tablesp. 108
Object Viewsp. 110
Using Logical Pointersp. 111
Comparison of Object-Oriented and Object-Relational Databasesp. 115
Creating the Object-Relational Designp. 116
Logical Object Pointersp. 117
Automated Toolsp. 118
Summaryp. 119
8 Designing Replicated Databasesp. 121
Manual Replication Techniquesp. 122
Standby Databasep. 123
Replication Using Triggersp. 124
Replication Using Viewsp. 124
One-Way Replicationp. 125
Writeable Replicationp. 125
Updateable Replicationp. 126
The Push-Pull Methodp. 126
The Multi-Master Methodp. 127
The Streams Methodp. 129
What Are Conflicts?p. 130
Conflict Avoidancep. 131
Database Conflict Resolutionp. 132
Which Form of Replication is Right for You?p. 133
Planning Your Replication Schemap. 135
Primary Keysp. 135
Foreign Keysp. 135
Indexesp. 136
Denormalizationp. 136
Moving Large Datasetsp. 136
Resynching Datap. 137
Summaryp. 137
9 Design of the OLTP Databasep. 139
Designing for Online Transaction Processingp. 139
Normalizationp. 140
Data Storagep. 141
Database Data Cache Efficiencyp. 142
Data Growthp. 144
SQL Reusep. 146
Database Locking and Waitingp. 148
Deadlocksp. 149
Rollbacksp. 149
Indexingp. 150
Primary Keysp. 151
Table with Three or More Columnsp. 151
Multiple Indexes with the Most Restrictive Lead Columnsp. 151
Large Multi-Column Indexesp. 152
Organizing Tables as Indexesp. 152
Summaryp. 153
10 Design of Data Warehouses and Decision Support System Databasesp. 155
What Is a Data Warehouse?p. 155
OLAP, MOLAP, and ROLAPp. 156
Using an Operational Database as a Data Warehousep. 157
Gathering Datap. 158
Staging and Processing Datap. 158
Loading and Unloading Datap. 159
Data Martsp. 161
Designing the Data Warehousep. 161
Data Granularityp. 162
Partitioning Datap. 162
Which Attribute to Partition Onp. 163
Where to Partitionp. 164
Use of Keysp. 167
Normalizationp. 168
Dimensional Modelingp. 168
Pre-Aggregationp. 169
Protect the Datap. 171
Summaryp. 171
Indexp. 173
Go to:Top of Page