Preface |
|
xxix | |
|
PART I THE CONTEXT OF DATABASE MANAGEMENT |
|
|
1 | (86) |
|
|
1 | (2) |
|
|
3 | (35) |
|
|
3 | (1) |
|
|
3 | (2) |
|
|
5 | (1) |
|
Basic Concepts and Definitions |
|
|
6 | (5) |
|
|
6 | (1) |
|
|
7 | (1) |
|
|
8 | (1) |
|
Database Management Systems |
|
|
9 | (1) |
|
|
9 | (1) |
|
|
9 | (1) |
|
|
9 | (2) |
|
|
11 | (1) |
|
Traditional File Processing Systems |
|
|
11 | (2) |
|
File Processing Systems at pine Valley Furniture Company |
|
|
11 | (1) |
|
Disadvantages of File Processing Systems |
|
|
12 | (1) |
|
|
12 | (1) |
|
|
12 | (1) |
|
|
13 | (1) |
|
Lenghty Development Times |
|
|
13 | (1) |
|
Excessive Program Maintenance |
|
|
13 | (1) |
|
|
13 | (5) |
|
Advantages of The Database Approach |
|
|
14 | (1) |
|
Program-Data Independence |
|
|
14 | (1) |
|
|
14 | (1) |
|
Improved Data Consistency |
|
|
15 | (1) |
|
|
15 | (1) |
|
Increased Productivity of Application Development |
|
|
15 | (1) |
|
|
15 | (1) |
|
|
16 | (1) |
|
Improved Data Accessibility and Responsiveness |
|
|
16 | (1) |
|
Reduced Program Maintenance |
|
|
16 | (1) |
|
Improved Decision Support |
|
|
17 | (1) |
|
Cautions About Database Benefits |
|
|
17 | (1) |
|
Costs and Risks of The Database Approach |
|
|
17 | (1) |
|
New, Specialized Personnel |
|
|
17 | (1) |
|
Installation and Management Cost and Complexity |
|
|
17 | (1) |
|
|
18 | (1) |
|
Need for Explicit Backup and Recovery |
|
|
18 | (1) |
|
|
18 | (1) |
|
Components of the Database Environment |
|
|
18 | (2) |
|
The Range of Database Applications |
|
|
20 | (7) |
|
|
20 | (1) |
|
|
21 | (2) |
|
Departmental/Divisional Databases |
|
|
23 | (1) |
|
|
23 | (2) |
|
|
25 | (1) |
|
Summary of Database Applications |
|
|
26 | (1) |
|
Evolution of Database Systems |
|
|
27 | (2) |
|
|
27 | (1) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
28 | (1) |
|
|
29 | (1) |
|
|
30 | (1) |
|
|
30 | (1) |
|
|
30 | (1) |
|
|
31 | (2) |
|
|
33 | (1) |
|
|
34 | (1) |
|
|
34 | (1) |
|
|
34 | (1) |
|
Case: Mountain View Community Hospital |
|
|
35 | (3) |
|
The Database Development Process |
|
|
38 | (49) |
|
|
38 | (1) |
|
|
39 | (1) |
|
Database Development Within Information Systems Development |
|
|
40 | (5) |
|
Information Systems Architecture |
|
|
40 | (1) |
|
|
41 | (1) |
|
Information Systems Planning |
|
|
41 | (1) |
|
Identifying Strategic Planning Factors |
|
|
41 | (1) |
|
Identifying Corporate Planning Objects |
|
|
42 | (1) |
|
Developing an Enterprise Model |
|
|
42 | (3) |
|
Database Development Process |
|
|
45 | (9) |
|
Systems Development Life Cycle |
|
|
45 | (1) |
|
Planning-Enterprise Modeling |
|
|
46 | (1) |
|
Planning-Conceptual Data Modeling |
|
|
47 | (1) |
|
Analysis-Conceptual Data Modeling |
|
|
48 | (1) |
|
Design-Logical Database Design |
|
|
48 | (1) |
|
Design-Physical Database Design and Definition |
|
|
49 | (1) |
|
Implementation-Database Implementation |
|
|
49 | (1) |
|
Maintenance-Database Maintenance |
|
|
49 | (1) |
|
Alternative IS Development Approaches |
|
|
49 | (2) |
|
Role of Packaged Data Models |
|
|
51 | (1) |
|
|
52 | (1) |
|
Industry-Specific Data Models |
|
|
52 | (1) |
|
|
52 | (1) |
|
The Role of CASE and a Repository |
|
|
53 | (1) |
|
Managing the People Involved in Database Development |
|
|
54 | (1) |
|
Three-Schema Architecture for Database Development |
|
|
55 | (4) |
|
|
55 | (1) |
|
|
56 | (1) |
|
|
57 | (1) |
|
|
57 | (1) |
|
|
57 | (1) |
|
|
57 | (1) |
|
|
58 | (1) |
|
Strategies for Development |
|
|
58 | (1) |
|
Three-Tiered Database Location Architecture |
|
|
59 | (2) |
|
Developing a Database Application for Pine Valley Furniture Company |
|
|
61 | (13) |
|
Simplified Project Data Model Example |
|
|
62 | (3) |
|
A Current Pine Valley Furniture Company Project Request |
|
|
65 | (1) |
|
Matching User Needs to the Information Systems Architecture |
|
|
66 | (2) |
|
Analyzing Database Requirements |
|
|
68 | (1) |
|
|
69 | (2) |
|
|
71 | (3) |
|
Administering the Database |
|
|
74 | (1) |
|
|
74 | (1) |
|
|
75 | (1) |
|
|
75 | (1) |
|
|
75 | (1) |
|
|
76 | (2) |
|
|
78 | (1) |
|
|
79 | (1) |
|
|
79 | (1) |
|
|
79 | (1) |
|
Case: Mountain View Community Hospital |
|
|
80 | (7) |
|
PART II DATABASE ANALYSIS |
|
|
87 | (112) |
|
|
87 | (2) |
|
Modeling Data in the Organization |
|
|
89 | (61) |
|
|
89 | (1) |
|
|
90 | (1) |
|
Modeling the Rules of the Organization |
|
|
91 | (6) |
|
Overview of Business Rules |
|
|
92 | (1) |
|
The Business Rules Paradigm |
|
|
92 | (1) |
|
|
93 | (1) |
|
|
93 | (1) |
|
|
93 | (1) |
|
Data Names and Definitions |
|
|
94 | (1) |
|
|
94 | (1) |
|
|
95 | (1) |
|
|
96 | (1) |
|
The E-R Model: An Overview |
|
|
97 | (3) |
|
|
97 | (2) |
|
|
99 | (1) |
|
Modeling Entities and Attributes |
|
|
100 | (10) |
|
|
100 | (1) |
|
Entity Type Versus Entity Instance |
|
|
101 | (1) |
|
Entity Type Versus System Input, Output, or User |
|
|
101 | (1) |
|
Strong Versus Weak Entity Types |
|
|
102 | (1) |
|
Naming and Defining Entity Types |
|
|
103 | (2) |
|
|
105 | (1) |
|
Required Versus Optional Attributes |
|
|
105 | (1) |
|
Simple Versus Composite Attributes |
|
|
106 | (1) |
|
Single-Valued Versus Multivalued Attributes |
|
|
106 | (1) |
|
Stored Versus Derived Attributes |
|
|
107 | (1) |
|
|
107 | (2) |
|
Naming and Defining Attributes |
|
|
109 | (1) |
|
|
110 | (18) |
|
Basic Concepts and Definitions in Relationships |
|
|
111 | (1) |
|
Attributes on Relationships |
|
|
112 | (1) |
|
|
112 | (2) |
|
|
114 | (1) |
|
|
114 | (3) |
|
|
117 | (1) |
|
|
117 | (1) |
|
|
118 | (2) |
|
|
120 | (1) |
|
|
120 | (1) |
|
|
121 | (1) |
|
|
121 | (1) |
|
|
122 | (1) |
|
Modeling Time-Dependent Data |
|
|
123 | (2) |
|
|
125 | (2) |
|
Naming and Defining Relationships |
|
|
127 | (1) |
|
E-R Modeling Example: Pine Valley Furniture Company |
|
|
128 | (3) |
|
Database Processing at Pine Valley Furniture |
|
|
131 | (3) |
|
Showing Product Information |
|
|
131 | (1) |
|
Showing Customer Information |
|
|
132 | (1) |
|
Showing Customer Order Status |
|
|
132 | (1) |
|
|
133 | (1) |
|
|
134 | (1) |
|
|
135 | (1) |
|
|
135 | (1) |
|
|
136 | (1) |
|
|
137 | (9) |
|
|
146 | (1) |
|
|
146 | (1) |
|
|
147 | (1) |
|
|
147 | (1) |
|
Case: Mountain View Community Hospital |
|
|
148 | (2) |
|
The Enhanced E-R Model and Business Rules |
|
|
150 | (49) |
|
|
150 | (1) |
|
|
151 | (1) |
|
Representing Supertypes and Subtypes |
|
|
152 | (7) |
|
Basic Concepts and Notation |
|
|
152 | (2) |
|
|
154 | (1) |
|
|
154 | (1) |
|
When to Use Supertype/Subtype Relationships |
|
|
155 | (1) |
|
Representing Specialization and Generalization |
|
|
156 | (1) |
|
|
156 | (1) |
|
|
157 | (1) |
|
Combining Specialization and Generalization |
|
|
158 | (1) |
|
Specifying Constraints in Supertype/Subtype Relationships |
|
|
159 | (6) |
|
Specifying Completeness Constraints |
|
|
159 | (1) |
|
Total Specialization Rule |
|
|
159 | (1) |
|
Partial Specialization Rule |
|
|
159 | (1) |
|
Specifiying Disjointness Constraints |
|
|
159 | (1) |
|
|
160 | (1) |
|
|
161 | (1) |
|
Defining Subtype Discriminators |
|
|
162 | (1) |
|
|
162 | (1) |
|
|
163 | (1) |
|
Defining Supertype/Subtype Hierarchies |
|
|
163 | (1) |
|
|
164 | (1) |
|
Summary of Supertype/Subtype Hierarchies |
|
|
165 | (1) |
|
EER Modeling Example: Pine Valley Furniture |
|
|
165 | (4) |
|
|
169 | (3) |
|
|
172 | (6) |
|
|
178 | (8) |
|
Classification of Business Rules |
|
|
179 | (1) |
|
Stating a Structural Assertion |
|
|
180 | (1) |
|
|
181 | (1) |
|
Stating an Action Assertion |
|
|
181 | (1) |
|
Types of Action Assertions |
|
|
182 | (1) |
|
Representing and Enforcing Business Rules |
|
|
182 | (1) |
|
|
183 | (2) |
|
Identifying and Testing Business Rules |
|
|
185 | (1) |
|
|
186 | (1) |
|
|
187 | (1) |
|
|
187 | (1) |
|
|
187 | (1) |
|
|
188 | (6) |
|
|
194 | (1) |
|
|
194 | (1) |
|
|
195 | (1) |
|
|
195 | (1) |
|
Case: Mountain View Community Hospital |
|
|
196 | (3) |
|
|
199 | (108) |
|
An Overview of Part Three |
|
|
199 | (2) |
|
Logical Database Design and the Relational Model |
|
|
201 | (56) |
|
|
201 | (1) |
|
|
201 | (1) |
|
The Relational Data Model |
|
|
202 | (5) |
|
|
203 | (1) |
|
Relational Data Structure |
|
|
203 | (1) |
|
|
203 | (1) |
|
|
204 | (1) |
|
Removing Multivalued Attributes from Tables |
|
|
204 | (1) |
|
|
205 | (2) |
|
|
207 | (5) |
|
|
207 | (1) |
|
|
208 | (1) |
|
|
208 | (1) |
|
|
209 | (1) |
|
Creating Relational Tables |
|
|
210 | (1) |
|
Well-Structured Relations |
|
|
211 | (1) |
|
Transforming EER Diagrams into Relations |
|
|
212 | (14) |
|
Step 1: Map Regular Entities |
|
|
212 | (1) |
|
|
213 | (1) |
|
|
213 | (1) |
|
Step 2: Map Weak Entities |
|
|
214 | (1) |
|
When to Create a Surrogate Key |
|
|
215 | (1) |
|
Step 3: Map Binary Relationships |
|
|
216 | (1) |
|
Map Binary One-to-Many Relationships |
|
|
216 | (1) |
|
Map Binary Many-to-Many Relationships |
|
|
216 | (1) |
|
Map Binary One-to-One Relationships |
|
|
217 | (1) |
|
Step 4: Map Associative Entities |
|
|
218 | (1) |
|
|
219 | (1) |
|
|
219 | (2) |
|
Step 5: Map Unary Relationships |
|
|
221 | (1) |
|
Unary One-to-Many Relationships |
|
|
221 | (1) |
|
Unary Many-to-Many Relationships |
|
|
221 | (2) |
|
Step 6: Map Ternary (and n-ary) Relationships |
|
|
223 | (1) |
|
Step 7: Map Supertype/Subtype Relationships |
|
|
224 | (1) |
|
Summary of EER to Relational Transformations |
|
|
225 | (1) |
|
Introduction to Normalization |
|
|
226 | (4) |
|
|
227 | (1) |
|
Functional Dependencies and Keys |
|
|
228 | (1) |
|
|
228 | (1) |
|
|
228 | (2) |
|
Normalization Example: Pine Valley Furniture Company |
|
|
230 | (6) |
|
Step 0: Represent the View in Tabular Form |
|
|
230 | (1) |
|
Step 1: Convert to First Normal Form |
|
|
231 | (1) |
|
|
231 | (1) |
|
|
232 | (1) |
|
|
232 | (1) |
|
Step 2: Convert to Second Normal Form |
|
|
233 | (1) |
|
Step 3: Convert to Third Normal Form |
|
|
234 | (1) |
|
Removing Transitive Dependencies |
|
|
234 | (1) |
|
Determinants and Normalization |
|
|
235 | (1) |
|
Step 4: Further Normalization |
|
|
236 | (1) |
|
|
236 | (3) |
|
|
237 | (1) |
|
View Integration Problems |
|
|
237 | (1) |
|
|
237 | (1) |
|
|
237 | (1) |
|
|
238 | (1) |
|
Supertype/Subtype Relationships |
|
|
238 | (1) |
|
A Final Step for Defining Relational Keys |
|
|
239 | (1) |
|
|
240 | (2) |
|
|
242 | (1) |
|
|
242 | (1) |
|
|
242 | (1) |
|
|
243 | (7) |
|
|
250 | (1) |
|
|
251 | (1) |
|
|
251 | (1) |
|
|
251 | (1) |
|
Case: Mountain View Community Hospital |
|
|
252 | (5) |
|
Physical Database Design and Performance |
|
|
257 | (50) |
|
|
257 | (1) |
|
|
257 | (1) |
|
Physical Database Design Process |
|
|
258 | (3) |
|
Data Volume and Usage Analysis |
|
|
259 | (2) |
|
|
261 | (4) |
|
|
261 | (1) |
|
Coding and Compression Techniques |
|
|
262 | (1) |
|
Controlling Data Integrity-A Foundation for Sarbanes-Oxley Compliance |
|
|
263 | (2) |
|
|
265 | (1) |
|
Designing Physical Records and Denormalization |
|
|
265 | (7) |
|
|
266 | (1) |
|
|
266 | (1) |
|
Opportunities and Types of Denormalization |
|
|
267 | (5) |
|
|
272 | (11) |
|
|
273 | (1) |
|
|
273 | (1) |
|
Sequential File Organizations |
|
|
274 | (1) |
|
Indexed File Organizations |
|
|
274 | (5) |
|
Hashed File Organizations |
|
|
279 | (2) |
|
Summary of File Organizations |
|
|
281 | (1) |
|
|
281 | (2) |
|
Designing Controls for Files |
|
|
283 | (1) |
|
Using and Selecting Indexes |
|
|
283 | (2) |
|
Creating a Unique Key Index |
|
|
283 | (1) |
|
Creating a Secondary (Nonunique) Key Index |
|
|
284 | (1) |
|
|
284 | (1) |
|
RAID: Improving File Access Performance by Parallel Processing |
|
|
285 | (3) |
|
|
288 | (3) |
|
Optimizing for Query Performance |
|
|
291 | (5) |
|
Parallel Query Processing |
|
|
291 | (1) |
|
Overriding Automatic Query Optimization |
|
|
292 | (1) |
|
|
293 | (1) |
|
Balancing I/O Across Disk Controllers |
|
|
294 | (1) |
|
Guidelines for Better Query Design |
|
|
294 | (2) |
|
|
296 | (1) |
|
|
297 | (1) |
|
|
297 | (1) |
|
|
298 | (1) |
|
|
298 | (4) |
|
|
302 | (1) |
|
|
302 | (1) |
|
|
303 | (1) |
|
|
303 | (1) |
|
Case: Mountain View Community Hospital |
|
|
304 | (3) |
|
|
307 | (212) |
|
|
307 | (2) |
|
|
309 | (47) |
|
|
309 | (1) |
|
|
309 | (2) |
|
History of the SQL Standard |
|
|
311 | (1) |
|
The Role of SQL in a Database Architecture |
|
|
312 | (1) |
|
|
313 | (5) |
|
Defining a Database in SQL |
|
|
318 | (6) |
|
Generating SQL Database Definitions |
|
|
318 | (1) |
|
|
319 | (3) |
|
Creating Data Integrity Controls |
|
|
322 | (1) |
|
Changing Table Definitions |
|
|
323 | (1) |
|
|
324 | (1) |
|
Inserting, Updating, and Deleting Data |
|
|
324 | (3) |
|
|
326 | (1) |
|
Deleting Database Contents |
|
|
326 | (1) |
|
Updating Database Contents |
|
|
326 | (1) |
|
Internal Schema Definition in RDBMSs |
|
|
327 | (1) |
|
|
328 | (1) |
|
|
328 | (19) |
|
Clauses of the SELECT Statement |
|
|
329 | (2) |
|
|
331 | (1) |
|
|
331 | (1) |
|
|
332 | (1) |
|
Using Comparison Operators |
|
|
333 | (1) |
|
|
333 | (3) |
|
Using Ranges for Qualification |
|
|
336 | (1) |
|
|
337 | (2) |
|
Using IN and NOT IN with Lists |
|
|
339 | (1) |
|
Sorting Results: The ORDER BY Clause |
|
|
339 | (1) |
|
Categorizing Results: The GROUP BY Clause |
|
|
340 | (1) |
|
Qualifying Results by Categories: The HAVING Clause |
|
|
341 | (1) |
|
|
342 | (4) |
|
|
346 | (1) |
|
|
347 | (1) |
|
|
347 | (1) |
|
|
347 | (1) |
|
|
347 | (2) |
|
|
349 | (4) |
|
|
353 | (1) |
|
|
354 | (1) |
|
|
354 | (1) |
|
|
354 | (1) |
|
Case: Mountain View Community Hospital |
|
|
355 | (1) |
|
|
356 | (45) |
|
|
356 | (1) |
|
|
356 | (1) |
|
Processing Multiple Tables |
|
|
357 | (19) |
|
|
358 | (2) |
|
|
360 | (1) |
|
|
361 | (1) |
|
|
362 | (1) |
|
Sample Multiple Join Involving Four Tables |
|
|
363 | (1) |
|
|
364 | (4) |
|
|
368 | (1) |
|
|
369 | (1) |
|
|
369 | (3) |
|
|
372 | (1) |
|
More Complicated SQL Queries |
|
|
373 | (2) |
|
Tips for Developing Queries |
|
|
375 | (1) |
|
Ensuring Transaction Integrity |
|
|
376 | (2) |
|
Data Dictionary Facilities |
|
|
378 | (2) |
|
SQL: 200N Enhancements and Extensions to SQL |
|
|
380 | (4) |
|
|
380 | (1) |
|
|
381 | (1) |
|
|
382 | (1) |
|
|
382 | (2) |
|
|
384 | (4) |
|
|
385 | (1) |
|
|
386 | (2) |
|
Embedded SQL and Dynamic SQL |
|
|
388 | (3) |
|
|
391 | (2) |
|
|
393 | (1) |
|
|
394 | (1) |
|
|
394 | (1) |
|
|
394 | (1) |
|
|
395 | (4) |
|
|
399 | (1) |
|
|
399 | (1) |
|
|
399 | (1) |
|
|
399 | (1) |
|
Case: Mountain View Community Hospital |
|
|
400 | (1) |
|
The Client/Server Database Environment |
|
|
401 | (25) |
|
|
401 | (1) |
|
Location, Location, Location! |
|
|
401 | (2) |
|
|
403 | (1) |
|
Client/Server Architectures |
|
|
404 | (3) |
|
File Server Architectures |
|
|
404 | (1) |
|
Limitations of File Servers |
|
|
405 | (1) |
|
Database Server Architectures |
|
|
406 | (1) |
|
|
407 | (2) |
|
Partitioning an Application |
|
|
409 | (3) |
|
|
412 | (1) |
|
|
413 | (2) |
|
|
415 | (2) |
|
Using ODBC to Link External Tables Stored on a Database Server |
|
|
417 | (2) |
|
Using JDBC to Link External Tables Stored on a Database Server |
|
|
419 | (1) |
|
Looking Forward with Client/Server in Mind |
|
|
419 | (1) |
|
|
419 | (1) |
|
|
420 | (1) |
|
|
420 | (1) |
|
|
421 | (1) |
|
|
421 | (1) |
|
|
422 | (1) |
|
|
422 | (1) |
|
|
422 | (1) |
|
|
423 | (1) |
|
Case: Mountain View Community Hospital |
|
|
424 | (2) |
|
The Internet Database Environment |
|
|
426 | (33) |
|
|
426 | (1) |
|
|
427 | (1) |
|
The Internet and Database Connection |
|
|
427 | (1) |
|
|
428 | (2) |
|
Common Internet Architecture Components |
|
|
430 | (11) |
|
Internet-Related Languages |
|
|
430 | (3) |
|
|
433 | (4) |
|
|
437 | (1) |
|
|
438 | (1) |
|
|
439 | (1) |
|
|
440 | (1) |
|
|
441 | (11) |
|
|
443 | (7) |
|
|
450 | (1) |
|
|
450 | (1) |
|
Service-Oriented Architecture (SOA) |
|
|
451 | (1) |
|
|
451 | (1) |
|
Internet Technology Rate-of-Change Issues |
|
|
451 | (1) |
|
|
452 | (1) |
|
|
453 | (1) |
|
|
453 | (1) |
|
|
453 | (1) |
|
|
454 | (1) |
|
|
455 | (1) |
|
|
455 | (1) |
|
|
455 | (1) |
|
|
456 | (1) |
|
Case: Mountain View Community Hospital |
|
|
457 | (2) |
|
|
459 | (60) |
|
|
459 | (1) |
|
|
460 | (2) |
|
Basic Concepts of Data Warehousing |
|
|
462 | (5) |
|
|
463 | (1) |
|
The Need for Data Warehousing |
|
|
463 | (1) |
|
Need for a Company-wide View |
|
|
463 | (2) |
|
Need to Separate Operational and Informational Systems |
|
|
465 | (1) |
|
|
466 | (1) |
|
Data Warehouse Architectures |
|
|
467 | (9) |
|
Independent Data Mart Data Warehousing Environment |
|
|
468 | (2) |
|
Dependent Data Mart and Operational Data Store Architecture: A Three-Level Approach |
|
|
470 | (2) |
|
Logical Data Mart and Real-Time Data Warehouse Architecture |
|
|
472 | (3) |
|
Three-Layer Data Architecture |
|
|
475 | (1) |
|
Role of the Enterprise Data Model |
|
|
475 | (1) |
|
|
476 | (1) |
|
Some Characteristics of Data Warehouse Data |
|
|
476 | (4) |
|
|
476 | (1) |
|
Transient Versus Periodic Data |
|
|
477 | (1) |
|
An Example of Transient and Periodic Data |
|
|
477 | (2) |
|
|
479 | (1) |
|
|
479 | (1) |
|
Other Data Warehouse Changes |
|
|
479 | (1) |
|
|
480 | (18) |
|
Characteristics of Derived Data |
|
|
480 | (1) |
|
|
481 | (1) |
|
Fact Tables and Dimension Tables |
|
|
481 | (1) |
|
|
482 | (2) |
|
|
484 | (1) |
|
|
485 | (1) |
|
|
486 | (1) |
|
|
486 | (1) |
|
|
487 | (1) |
|
Variations of the Star Schema |
|
|
488 | (1) |
|
|
488 | (1) |
|
|
489 | (1) |
|
Normalizing Dimension Tables |
|
|
490 | (1) |
|
|
490 | (1) |
|
|
491 | (2) |
|
Slowly Changing Dimensions |
|
|
493 | (3) |
|
Determining Dimensions and Facts |
|
|
496 | (2) |
|
|
498 | (9) |
|
|
498 | (1) |
|
|
498 | (2) |
|
Online Analytical Processing (OLAP) Tools |
|
|
500 | (1) |
|
|
501 | (1) |
|
|
502 | (1) |
|
Summarizing More Than Three Dimensions |
|
|
503 | (1) |
|
|
503 | (1) |
|
Business Performance Management and Dashboards |
|
|
504 | (1) |
|
|
505 | (1) |
|
|
505 | (1) |
|
|
506 | (1) |
|
|
507 | (1) |
|
|
508 | (1) |
|
|
508 | (1) |
|
|
508 | (1) |
|
|
509 | (5) |
|
|
514 | (1) |
|
|
514 | (1) |
|
|
515 | (1) |
|
|
515 | (1) |
|
Case: Mountain View Community Hospital |
|
|
516 | (3) |
|
PART V ADVANCED DATABASE TOPICS |
|
|
519 | (121) |
|
|
519 | (3) |
|
Data Quality and Integration |
|
|
522 | (34) |
|
|
522 | (1) |
|
|
522 | (2) |
|
|
524 | (9) |
|
The State of Data Quality |
|
|
526 | (1) |
|
|
527 | (1) |
|
Redundant Data Storage and Inconsistent Metadata |
|
|
527 | (1) |
|
|
527 | (1) |
|
Lack of Organizational Commitment |
|
|
527 | (1) |
|
|
527 | (1) |
|
Conduct a Data Quality Audit |
|
|
527 | (2) |
|
Improve Data Capture Processes |
|
|
529 | (1) |
|
Establish a Data Stewardship Program |
|
|
529 | (2) |
|
Apply TQM Principles and Practices |
|
|
531 | (1) |
|
Apply Modern Data Management Technology |
|
|
531 | (1) |
|
Estimate Return on Investment |
|
|
531 | (1) |
|
Start with a High-Quality Data Model |
|
|
531 | (2) |
|
|
533 | (1) |
|
Data Integration: An Overview |
|
|
533 | (4) |
|
General Approaches to Data Integration |
|
|
533 | (1) |
|
|
534 | (1) |
|
|
534 | (1) |
|
|
535 | (2) |
|
Data Integration for Data Warehousing: The Reconciled Data Layer |
|
|
537 | (7) |
|
Characteristics of Data After ETL |
|
|
537 | (1) |
|
|
538 | (1) |
|
Mapping and Metadata Management |
|
|
539 | (1) |
|
|
539 | (1) |
|
|
540 | (3) |
|
|
543 | (1) |
|
|
544 | (5) |
|
Data Transformation Functions |
|
|
545 | (1) |
|
|
545 | (1) |
|
|
546 | (1) |
|
More Complex Transformations |
|
|
546 | (1) |
|
Tools to Support Data Reconciliation |
|
|
546 | (1) |
|
|
547 | (2) |
|
|
549 | (1) |
|
|
549 | (1) |
|
|
549 | (1) |
|
|
549 | (1) |
|
|
550 | (1) |
|
|
550 | (1) |
|
|
550 | (1) |
|
|
551 | (1) |
|
|
552 | (1) |
|
|
552 | (1) |
|
|
553 | (1) |
|
|
553 | (1) |
|
Case: Mountain View Community Hospital |
|
|
554 | (2) |
|
Data and Database Administration |
|
|
556 | (59) |
|
|
556 | (1) |
|
|
557 | (1) |
|
The Roles of Data Database Administrators |
|
|
558 | (7) |
|
Traditional Data Administration |
|
|
559 | (1) |
|
Traditional Database Administration |
|
|
560 | (3) |
|
Evolving Approaches to Data Administration |
|
|
563 | (1) |
|
Blending Data and Database Administration |
|
|
563 | (1) |
|
|
563 | (1) |
|
|
563 | (2) |
|
Summary of Evolving Data Administration Roles |
|
|
565 | (1) |
|
|
565 | (2) |
|
|
567 | (1) |
|
|
567 | (1) |
|
Role of an Information Systems Architecture |
|
|
568 | (1) |
|
|
568 | (16) |
|
|
569 | (1) |
|
Establishing Client/Server Security |
|
|
570 | (1) |
|
|
571 | (1) |
|
|
571 | (1) |
|
Client/Server Security Issues for Web-Enabled Databases |
|
|
571 | (1) |
|
|
572 | (1) |
|
|
573 | (1) |
|
Database Software Data Security Features |
|
|
574 | (1) |
|
|
574 | (1) |
|
|
575 | (2) |
|
|
577 | (1) |
|
|
578 | (1) |
|
|
579 | (1) |
|
|
580 | (1) |
|
|
580 | (1) |
|
|
581 | (1) |
|
|
582 | (1) |
|
Security Policies and Procedures |
|
|
582 | (1) |
|
|
582 | (1) |
|
|
583 | (1) |
|
|
583 | (1) |
|
|
583 | (1) |
|
Database Backup and Recovery |
|
|
584 | (8) |
|
Basic Recovery Facilities |
|
|
584 | (1) |
|
|
584 | (1) |
|
|
585 | (1) |
|
|
586 | (1) |
|
|
586 | (1) |
|
Recovery and Restart Procedures |
|
|
586 | (1) |
|
|
586 | (1) |
|
|
586 | (1) |
|
Maintaining Transaction Integrity |
|
|
587 | (1) |
|
|
588 | (1) |
|
|
589 | (1) |
|
Types of Database Failure |
|
|
590 | (1) |
|
|
590 | (1) |
|
|
590 | (1) |
|
|
591 | (1) |
|
|
591 | (1) |
|
|
591 | (1) |
|
Controlling Concurrent Access |
|
|
592 | (6) |
|
The Problem of Lost Updates |
|
|
592 | (1) |
|
|
593 | (1) |
|
|
593 | (1) |
|
|
594 | (1) |
|
|
595 | (1) |
|
|
596 | (1) |
|
|
596 | (1) |
|
|
597 | (1) |
|
Data Dictionaries and Repositories |
|
|
598 | (3) |
|
|
598 | (1) |
|
|
599 | (2) |
|
Overview of Tuning the Database for Performance |
|
|
601 | (3) |
|
|
601 | (1) |
|
Memory and Storage Space Usage |
|
|
602 | (1) |
|
Input/Output (I/O) Contention |
|
|
602 | (1) |
|
|
603 | (1) |
|
|
603 | (1) |
|
|
604 | (2) |
|
|
604 | (1) |
|
Measures to Ensure Availability |
|
|
605 | (1) |
|
|
605 | (1) |
|
Loss or Corruption of Data |
|
|
605 | (1) |
|
|
605 | (1) |
|
|
606 | (1) |
|
|
606 | (1) |
|
|
606 | (1) |
|
|
607 | (1) |
|
|
607 | (1) |
|
|
607 | (2) |
|
|
609 | (3) |
|
|
612 | (1) |
|
|
613 | (1) |
|
|
613 | (1) |
|
|
613 | (1) |
|
Case: Mountain View Community Hospital |
|
|
614 | (1) |
|
Overview: Distributed Databases |
|
|
615 | (5) |
|
|
615 | (1) |
|
|
616 | (2) |
|
Objectives and Trade-Offs |
|
|
616 | (1) |
|
Options for Distributing a Database |
|
|
616 | (1) |
|
|
617 | (1) |
|
|
618 | (1) |
|
|
618 | (1) |
|
|
618 | (1) |
|
|
619 | (1) |
|
|
619 | (1) |
|
Overview: Object-Oriented Data Modeling |
|
|
620 | (9) |
|
|
620 | (1) |
|
|
621 | (7) |
|
The Unified Modeling Language |
|
|
621 | (1) |
|
Object-Oriented Data Modeling |
|
|
622 | (5) |
|
|
627 | (1) |
|
|
628 | (1) |
|
|
628 | (1) |
|
|
628 | (1) |
|
|
628 | (1) |
|
Overview: Using Relational Databases to Provide Object Persistence |
|
|
629 | (11) |
|
|
629 | (1) |
|
|
630 | (7) |
|
Providing Persistence for Objects Using Relational Databases |
|
|
631 | (1) |
|
Call-Level Application Program Interfaces |
|
|
631 | (1) |
|
SQL Query Mapping Frameworks |
|
|
631 | (1) |
|
Object-Relational Mapping Frameworks |
|
|
631 | (1) |
|
|
632 | (1) |
|
Object-Relational Mapping Example |
|
|
633 | (1) |
|
|
634 | (2) |
|
Responsibilities of Object-Relational Mapping Frameworks |
|
|
636 | (1) |
|
|
637 | (1) |
|
|
638 | (1) |
|
|
638 | (1) |
|
|
639 | (1) |
|
|
639 | (1) |
|
APPENDIX A Data Modeling Tools and Notation |
|
|
640 | (11) |
|
Comparing E-R Modeling Conventions |
|
|
640 | (8) |
|
Visio Professional 2003 Notation |
|
|
643 | (1) |
|
|
643 | (1) |
|
|
643 | (1) |
|
AllFusion ERwin Data Modeler 4.1 SPI Notation |
|
|
643 | (1) |
|
|
643 | (2) |
|
|
645 | (1) |
|
Sybase Power Designer 11.1 Notation |
|
|
645 | (1) |
|
|
645 | (2) |
|
|
647 | (1) |
|
|
647 | (1) |
|
|
647 | (1) |
|
|
648 | (1) |
|
Comparison of Tool Interfaces and E-R Diagrams |
|
|
648 | (3) |
|
APPENDIX B Advanced Normal Forms |
|
|
651 | (6) |
|
|
651 | (3) |
|
Anomalies in Student Advisor |
|
|
651 | (1) |
|
Definition of Boyce-Codd Normal Form (BCNF) |
|
|
652 | (1) |
|
Converting a Relation to BCNF |
|
|
652 | (2) |
|
|
654 | (2) |
|
|
655 | (1) |
|
|
656 | (1) |
|
|
656 | (1) |
|
|
656 | (1) |
|
|
656 | (1) |
|
|
656 | (1) |
|
APPENDIX C Data Structures |
|
|
657 | (13) |
|
|
657 | (2) |
|
Data Structure Building Blocks |
|
|
659 | (1) |
|
|
660 | (6) |
|
|
662 | (1) |
|
|
662 | (1) |
|
|
662 | (3) |
|
|
665 | (1) |
|
Hazards of Chain Structures |
|
|
666 | (1) |
|
|
666 | (3) |
|
|
667 | (2) |
|
|
669 | (1) |
Glossary of Acronyms |
|
670 | (2) |
Glossary of Terms |
|
672 | (9) |
Index |
|
681 | |