Data Modeling Essentials

Data Modeling Essentials

von: Graeme Simsion, Graham Witt

Elsevier Reference Monographs, 2004

ISBN: 9780080488677 , 560 Seiten

3. Auflage

Format: PDF

Kopierschutz: DRM

Windows PC,Mac OSX Apple iPad, Android Tablet PC's

Preis: 60,95 EUR

Mehr zum Inhalt

Data Modeling Essentials


 

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