Suchen und Finden
Cover
1
Title Page
4
Copyright Page
5
Contents
8
Preface
24
Part I: The Basics
30
Chapter 1. What Is Data Modeling?
32
1.1 Introduction
32
1.2 A Data-Centered Perspective
32
1.3 A Simple Example
33
1.4 Design, Choice, and Creativity
35
1.5 Why Is the Data Model Important?
37
1.6 What Makes a Good Data Model?
39
1.7 Performance
44
1.8 Database Design Stages and Deliverables
45
1.9 Where Do Data Models Fit In? 20
49
1.10 Who Should Be Involved in Data Modeling?
52
1.11 Is Data Modeling Still Relevant?
53
1.12 Alternative Approaches to Data Modeling
58
1.13 Terminology
59
1.14 Where to from Here?„An Overview of Part I
60
1.15 Summary
61
Chapter 2. Basics of Sound Structure
62
2.1 Introduction
62
2.2 An Informal Example of Normalization
63
2.3 Relational Notation
65
2.4 A More Complex Example
66
2.5 Determining Columns
69
2.6 Repeating Groups and First Normal Form
72
2.7 Second and Third Normal Forms
76
2.8 Definitions and a Few Refinements
82
2.9 Choice, Creativity, and Normalization
89
2.10 Terminology
91
2.11 Summary
92
Chapter 3. The Entity-Relationship Approach
94
3.1 Introduction
94
3.2 A Diagrammatic Representation
94
3.3 The Top-Down Approach: Entity-Relationship Modeling
101
3.4 Entity Classes
105
3.5 Relationships
111
3.6 Attributes
133
3.7 Myths and Folklore
134
3.8 Creativity and E-R Modeling
135
3.9 Summary
138
Chapter 4. Subtypes and Supertypes
140
4.1 Introduction
140
4.2 Different Levels of Generalization
140
4.3 Rules versus Stability
142
4.4 Using Subtypes and Supertypes
144
4.5 Subtypes and Supertypes as Entity Classes
145
4.6 Diagramming Conventions
146
4.7 Definitions
148
4.8 Attributes of Supertypes and Subtypes
148
4.9 Nonoverlapping and Exhaustive
149
4.10 Overlapping Subtypes and Roles
152
4.11 Hierarchy of Subtypes
156
4.12 Benefits of Using Subtypes and Supertypes
157
4.13 When Do We Stop Supertyping and Subtyping?
163
4.14 Generalization of Relationships
167
4.15 Theoretical Background
171
4.16 Summary
172
Chapter 5. Attributes and Columns
174
5.1 Introduction
174
5.2 Attribute Definition
175
5.3 Attribute Disaggregation: One Fact per Attribute
176
5.4 Types of Attributes
181
5.5 Attribute Names
195
5.6 Attribute Generalization
200
5.7 Summary
209
Chapter 6. Primary Keys and Identity
212
6.1 Basic Requirements and Trade-Offs
212
6.2 Basic Technical Criteria
214
6.3 Surrogate Keys
220
6.4 Structured Keys
223
6.5 Multiple Candidate Keys
230
6.6 Guidelines for Choosing Keys
231
6.7 Partially-Null Keys
233
6.8 Summary
235
Chapter 7. Extensions and Alternatives
236
7.1 Introduction
236
7.2 Extensions to the Basic E-R Approach
238
7.3 The Chen E-R Approach
245
7.4 Using UML Object Class Diagrams
249
7.5 Object Role Modeling
256
7.6 Summary
257
Part II: Putting It Together
258
Chapter 8. Organizing the Data Modeling Task
260
8.1 Data Modeling in the Real World
260
8.2 Key Issues in Project Organization
262
8.3 Roles and Responsibilities
267
8.4 Partitioning Large Projects
269
8.5 Maintaining the Model
271
8.6 Packaging It Up
277
8.7 Summary
278
Chapter 9. The Business Requirements
280
9.1 Purpose of the Requirements Phase
280
9.2 The Business Case
282
9.3 Interviews and Workshops
283
9.4 Riding the Trucks
287
9.5 Existing Systems and Reverse Engineering
288
9.6 Process Models
290
9.7 Object Class Hierarchies
290
9.8 Summary
299
Chapter 10. Conceptual Data Modeling
302
10.1 Designing Real Models
302
10.2 Learning from Designers in Other Disciplines
304
10.3 Starting the Modeling
305
10.4 Patterns and Generic Models
306
10.5 Bottom-Up Modeling
314
10.6 Top-Down Modeling
317
10.7 When the Problem Is Too Complex
317
10.8 Hierarchies, Networks, and Chains
319
10.9 One-to-One Relationships
324
10.10 Developing Entity Class Definitions
329
10.11 Handling Exceptions
330
10.12 The Right Attitude
331
10.13 Evaluating the Model
334
10.14 Direct Review of Data Model Diagrams
335
10.15 Comparison with the Process Model
337
10.16 Testing the Model with Sample Data
337
10.17 Prototypes
338
10.18 The Assertions Approach
338
10.19 Summary
348
Chapter 11. Logical Database Design
350
11.1 Introduction
350
11.2 Overview of the Transformations Required
351
11.3 Table Specification
354
11.4 Basic Column Definition
363
11.5 Primary Key Specification
370
11.6 Foreign Key Specification
371
11.7 Table and Column Names
383
11.8 Logical Data Model Notations
384
11.9 Summary
386
Chapter 12. Physical Database Design
388
12.1 Introduction
388
12.2 Inputs to Database Design
390
12.3 Options Available to the Database Designer
391
12.4 Design Decisions Which Do Not Affect Program Logic
392
12.5 Crafting Queries to Run Faster
401
12.6 Logical Schema Decisions
403
12.7 Views
413
12.8 Summary
415
Part III: Advanced Topics
418
Chapter 13. Advanced Normalization
420
13.1 Introduction
420
13.2 Introduction to the Higher Normal Forms
421
13.3 Boyce-Codd Normal Form
423
13.4 Fourth Normal Form (4NF) and Fifth Normal Form (5NF)
427
13.5 Beyond 5NF: Splitting Tables Based on Candidate Keys
436
13.6 Other Normalization Issues
437
13.7 Advanced Normalization in Perspective
444
13.8 Summary
445
Chapter 14. Modeling Business Rules
446
14.1 Introduction
446
14.2 Types of Business Rules
447
14.3 Discovery and Verification of Business Rules
449
14.4 Documentation of Business Rules
451
14.5 Implementing Business Rules
456
14.6 Rules on Recursive Relationships
475
14.7 Summary
479
Chapter 15. Time-Dependent Data
480
15.1 The Problem
480
15.2 When Do We Add the Time Dimension?
481
15.3 Audit Trails and Snapshots
481
15.4 Sequences and Versions
491
15.5 Handling Deletions
492
15.6 Archiving
492
15.7 Modeling Time-Dependent Relationships
493
15.8 Date Tables
498
15.9 Temporal Business Rules
498
15.10 Changes to the Data Structure
502
15.11 Putting It into Practice
502
15.12 Summary
503
Chapter 16. Modeling for Data Warehouses Data Marts
504
16.1 Introduction
504
16.2 Characteristics of Data Warehouses and Data Marts
507
16.3 Quality Criteria for Warehouse and Mart Models
509
16.4 The Basic Design Principle
512
16.5 Modeling for the Data Warehouse
513
16.6 Modeling for the Data Mart
517
16.7 Summary
525
Chapter 17. Enterprise Data Models and Data Management
528
17.1 Introduction
528
17.2 Data Management
529
17.3 Classification of Existing Data
532
17.4 A Target for Planning
533
17.5 A Context for Specifying New Databases
535
17.6 Guidance for Database Design
537
17.7 Input to Business Planning
537
17.8 Specification of an Enterprise Database
538
17.9 Characteristics of Enterprise Data Models
540
17.10 Developing an Enterprise Data Model
541
17.11 Choice, Creativity, and Enterprise Data Models
545
17.12 Summary
546
Further Reading
548
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.