Fundamentals of Database systems 3th edition PHẦN 1 potx

41 540 1
Fundamentals of Database systems 3th edition PHẦN 1 potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Fundamentals of Database Systems Preface 12 Contents of This Edition 13 Guidelines for Using This Book 14 Acknowledgments 15 Contents of This Edition 17 Guidelines for Using This Book 19 Acknowledgments 21 About the Authors 22 Part 1: Basic Concepts 23 Chapter 1: Databases and Database Users 23 1.1 Introduction 24 1.2 An Example 25 1.3 Characteristics of the Database Approach 26 1.4 Actors on the Scene 29 1.5 Workers behind the Scene 30 1.6 Advantages of Using a DBMS 31 1.7 Implications of the Database Approach 34 1.8 When Not to Use a DBMS 35 1.9 Summary 36 Review Questions 37 Exercises 37 Selected Bibliography 37 Footnotes 38 Chapter 2: Database System Concepts and Architecture 38 2.1 Data Models, Schemas, and Instances 39 2.2 DBMS Architecture and Data Independence 41 2.3 Database Languages and Interfaces 43 2.4 The Database System Environment 45 2.5 Classification of Database Management Systems 47 2.6 Summary 49 Review Questions 49 Exercises 50 Selected Bibliography 50 Footnotes 50 Chapter 3: Data Modeling Using the Entity-Relationship Model 52 3.1 Using High-Level Conceptual Data Models for Database Design 53 3.2 An Example Database Application 54 3.3 Entity Types, Entity Sets, Attributes, and Keys 55 1 Page 2 of 893 3.4 Relationships, Relationship Types, Roles, and Structural Constraints 60 3.5 Weak Entity Types 64 3.6 Refining the ER Design for the COMPANY Database 65 3.7 ER Diagrams, Naming Conventions, and Design Issues 66 3.8 Summary 68 Review Questions 69 Exercises 70 Selected Bibliography 72 Footnotes 72 Chapter 4: Enhanced Entity-Relationship and Object Modeling 74 4.1 Subclasses, Superclasses, and Inheritance 75 4.2 Specialization and Generalization 76 4.3 Constraints and Characteristics of Specialization and Generalization 78 4.4 Modeling of UNION Types Using Categories 82 4.5 An Example UNIVERSITY EER Schema and Formal Definitions for the EER Model 84 4.6 Conceptual Object Modeling Using UML Class Diagrams 86 4.7 Relationship Types of a Degree Higher Than Two 88 4.8 Data Abstraction and Knowledge Representation Concepts 90 4.9 Summary 93 Review Questions 93 Exercises 94 Selected Bibliography 96 Footnotes 97 Chapter 5: Record Storage and Primary File Organizations 100 5.1 Introduction 101 5.2 Secondary Storage Devices 103 5.3 Parallelizing Disk Access Using RAID Technology 107 5.4 Buffering of Blocks 111 5.5 Placing File Records on Disk 111 5.6 Operations on Files 115 5.7 Files of Unordered Records (Heap Files) 117 5.8 Files of Ordered Records (Sorted Files) 118 5.9 Hashing Techniques 120 5.10 Other Primary File Organizations 126 5.11 Summary 126 Review Questions 127 Exercises 128 Selected Bibliography 131 Footnotes 131 Chapter 6: Index Structures for Files 133 1 Page 3 of 893 6.1 Types of Single-Level Ordered Indexes 134 6.2 Multilevel Indexes 139 6.3 Dynamic Multilevel Indexes Using B-Trees and B+-Trees 142 6.4 Indexes on Multiple Keys 153 6.5 Other Types of Indexes 155 6.6 Summary 157 Review Questions 157 Exercises 158 Selected Bibliography 160 Footnotes 160 Part 2: Relational Model, Languages, and Systems 163 Chapter 7: The Relational Data Model, Relational Constraints, and the Relational Algebra 163 7.1 Relational Model Concepts 164 7.2 Relational Constraints and Relational Database Schemas 169 7.3 Update Operations and Dealing with Constraint Violations 173 7.4 Basic Relational Algebra Operations 176 7.5 Additional Relational Operations 189 7.6 Examples of Queries in Relational Algebra 192 7.7 Summary 196 Review Questions 197 Exercises 198 Selected Bibliography 202 Footnotes 203 Chapter 8: SQL - The Relational Database Standard 205 8.1 Data Definition, Constraints, and Schema Changes in SQL2 206 8.2 Basic Queries in SQL 212 8.3 More Complex SQL Queries 221 8.4 Insert, Delete, and Update Statements in SQL 236 8.5 Views (Virtual Tables) in SQL 239 8.6 Specifying General Constraints as Assertions 243 8.7 Additional Features of SQL 244 8.8 Summary 244 Review Questions 247 Exercises 247 Selected Bibliography 249 Footnotes 250 Chapter 9: ER- and EER-to-Relational Mapping, and Other Relational Languages 252 9.1 Relational Database Design Using ER-to-Relational Mapping 253 9.2 Mapping EER Model Concepts to Relations 257 9.3 The Tuple Relational Calculus 260 1 Page 4 of 893 9.4 The Domain Relational Calculus 271 9.5 Overview of the QBE Language 274 9.6 Summary 278 Review Questions 279 Exercises 279 Selected Bibliography 280 Footnotes 281 Chapter 10: Examples of Relational Database Management Systems: Oracle and Microsoft Access 282 10.1 Relational Database Management Systems: A Historical Perspective 283 10.2 The Basic Structure of the Oracle System 284 10.3 Database Structure and Its Manipulation in Oracle 287 10.4 Storage Organization in Oracle 291 10.5 Programming Oracle Applications 293 10.6 Oracle Tools 304 10.7 An Overview of Microsoft Access 304 10.8 Features and Functionality of Access 308 10.9 Summary 311 Selected Bibliography 312 Footnotes 312 Part 3: Object-Oriented and Extended Relational Database Technology 316 Chapter 11: Concepts for Object-Oriented Databases 316 11.1 Overview of Object-Oriented Concepts 317 11.2 Object Identity, Object Structure, and Type Constructors 319 11.3 Encapsulation of Operations, Methods, and Persistence 323 11.4 Type Hierarchies and Inheritance 325 11.5 Complex Objects 329 11.6 Other Objected-Oriented Concepts 331 11.7 Summary 333 Review Questions 334 Exercises 334 Selected Bibliography 334 Footnotes 335 Chapter 12: Object Database Standards, Languages, and Design 339 12.1 Overview of the Object Model of ODMG 341 12.2 The Object Definition Language 347 12.3 The Object Query Language 349 12.4 Overview of the C++ Language Binding 359 12.5 Object Database Conceptual Design 361 12.6 Examples of ODBMSs 364 1 Page 5 of 893 12.7 Overview of the CORBA Standard for Distributed Objects 370 12.8 Summary 372 Review Questions 372 Exercises 373 Selected Bibliography 373 Footnotes 374 Chapter 13: Object Relational and Extended Relational Database Systems 379 13.1 Evolution and Current Trends of Database Technology 380 13.2 The Informix Universal Server 381 13.3 Object-Relational Features of Oracle 8 395 13.4 An Overview of SQL3 399 13.5 Implementation and Related Issues for Extended Type Systems 407 13.6 The Nested Relational Data Model 408 13.7 Summary 411 Selected Bibliography 411 Footnotes 411 Part 4: Database Design Theory and Methodology 416 Chapter 14: Functional Dependencies and Normalization for Relational Databases 416 14.1 Informal Design Guidelines for Relation Schemas 417 14.2 Functional Dependencies 423 14.3 Normal Forms Based on Primary Keys 429 14.4 General Definitions of Second and Third Normal Forms 434 14.5 Boyce-Codd Normal Form 436 14.6 Summary 437 Review Questions 438 Exercises 439 Selected Bibliography 442 Footnotes 443 Chapter 15: Relational Database Design Algorithms and Further Dependencies 445 15.1 Algorithms for Relational Database Schema Design 446 15.2 Multivalued Dependencies and Fourth Normal Form 455 15.3 Join Dependencies and Fifth Normal Form 459 15.4 Inclusion Dependencies 460 15.5 Other Dependencies and Normal Forms 462 15.6 Summary 463 Review Questions 463 Exercises 464 Selected Bibliography 465 Footnotes 465 Chapter 16: Practical Database Design and Tuning 467 1 Page 6 of 893 16.1 The Role of Information Systems in Organizations 468 16.2 The Database Design Process 471 16.3 Physical Database Design in Relational Databases 483 16.4 An Overview of Database Tuning in Relational Systems 486 16.5 Automated Design Tools 493 16.6 Summary 495 Review Questions 495 Selected Bibliography 496 Footnotes 497 Part 5: System Implementation Techniques 501 Chapter 17: Database System Architectures and the System Catalog 501 17.1 System Architectures for DBMSs 502 17.2 Catalogs for Relational DBMSs 504 17.3 System Catalog Information in ORACLE 506 17.4 Other Catalog Information Accessed by DBMS Software Modules 509 17.5 Data Dictionary and Data Repository Systems 510 17.6 Summary 510 Review Questions 510 Exercises 511 Selected Bibliography 511 Footnotes 511 Chapter 18: Query Processing and Optimization 512 18.1 Translating SQL Queries into Relational Algebra 514 18.2 Basic Algorithms for Executing Query Operations 515 18.3 Using Heuristics in Query Optimization 528 18.4 Using Selectivity and Cost Estimates in Query Optimization 534 18.5 Overview of Query Optimization in ORACLE 543 18.6 Semantic Query Optimization 544 18.7 Summary 544 Review Questions 545 Exercises 545 Selected Bibliography 546 Footnotes 547 Chapter 19: Transaction Processing Concepts 551 19.1 Introduction to Transaction Processing 551 19.2 Transaction and System Concepts 556 19.3 Desirable Properties of Transactions 558 19.4 Schedules and Recoverability 559 19.5 Serializability of Schedules 562 19.6 Transaction Support in SQL 568 1 Page 7 of 893 19.7 Summary 570 Review Questions 571 Exercises 571 Selected Bibliography 573 Footnotes 573 Chapter 20: Concurrency Control Techniques 575 20.1 Locking Techniques for Concurrency Control 576 20.2 Concurrency Control Based on Timestamp Ordering 583 20.3 Multiversion Concurrency Control Techniques 585 20.4 Validation (Optimistic) Concurrency Control Techniques 587 20.5 Granularity of Data Items and Multiple Granularity Locking 588 20.6 Using Locks for Concurrency Control in Indexes 591 20.7 Other Concurrency Control Issues 592 20.8 Summary 593 Review Questions 594 Exercises 595 Selected Bibliography 595 Footnotes 596 Chapter 21: Database Recovery Techniques 597 21.1 Recovery Concepts 597 21.2 Recovery Techniques Based on Deferred Update 601 21.3 Recovery Techniques Based on Immediate Update 605 21.4 Shadow Paging 606 21.5 The ARIES Recovery Algorithm 607 21.6 Recovery in Multidatabase Systems 609 21.7 Database Backup and Recovery from Catastrophic Failures 610 21.8 Summary 611 Review Questions 611 Exercises 612 Selected Bibliography 614 Footnotes 615 Chapter 22: Database Security and Authorization 616 22.1 Introduction to Database Security Issues 616 22.2 Discretionary Access Control Based on Granting/Revoking of Privileges 619 22.3 Mandatory Access Control for Multilevel Security 624 22.4 Introduction to Statistical Database Security 626 22.5 Summary 627 Review Questions 627 Exercises 628 Selected Bibliography 628 1 Page 8 of 893 Footnotes 629 Part 6: Advanced Database Concepts & Emerging Applications 630 Chapter 23: Enhanced Data Models for Advanced Applications 630 23.1 Active Database Concepts 631 23.2 Temporal Database Concepts 637 23.3 Spatial and Multimedia Databases 647 23.4 Summary 649 Review Questions 650 Exercises 651 Selected Bibliography 652 Footnotes 652 Chapter 24: Distributed Databases and Client-Server Architecture 656 24.1 Distributed Database Concepts 657 24.2 Data Fragmentation, Replication, and Allocation Techniques for Distributed Database Design 660 24.3 Types of Distributed Database Systems 664 24.4 Query Processing in Distributed Databases 666 24.5 Overview of Concurrency Control and Recovery in Distributed Databases 671 24.6 An Overview of Client-Server Architecture and Its Relationship to Distributed Databases 674 24.7 Distributed Databases in Oracle 675 24.8 Future Prospects of Client-Server Technology 677 24.9 Summary 678 Review Questions 678 Exercises 679 Selected Bibliography 681 Footnotes 682 Chapter 25: Deductive Databases 683 25.1 Introduction to Deductive Databases 684 25.2 Prolog/Datalog Notation 685 25.3 Interpretations of Rules 689 25.4 Basic Inference Mechanisms for Logic Programs 691 25.5 Datalog Programs and Their Evaluation 693 25.6 Deductive Database Systems 709 25.7 Deductive Object-Oriented Databases 713 25.8 Applications of Commercial Deductive Database Systems 715 25.9 Summary 717 Exercises 717 Selected Bibliography 721 Footnotes 722 Chapter 26: Data Warehousing And Data Mining 723 1 Page 9 of 893 26.1 Data Warehousing 723 26.2 Data Mining 732 26.3 Summary 746 Review Exercises 747 Selected Bibliography 748 Footnotes 748 Chapter 27: Emerging Database Technologies and Applications 750 27.1 Databases on the World Wide Web 751 27.2 Multimedia Databases 755 27.3 Mobile Databases 760 27.4 Geographic Information Systems 764 27.5 Genome Data Management 770 27.6 Digital Libraries 776 Footnotes 778 Appendix A: Alternative Diagrammatic Notations 780 Appendix B: Parameters of Disks 782 Appendix C: An Overview of the Network Data Model 786 C.1 Network Data Modeling Concepts 786 C.2 Constraints in the Network Model 791 C.3 Data Manipulation in a Network Database 795 C.4 Network Data Manipulation Language 796 Selected Bibliography 803 Footnotes 803 Appendix D: An Overview of the Hierarchical Data Model 805 D.1 Hierarchical Database Structures 805 D.2 Integrity Constraints and Data Definition in the Hierarchical Model 810 D.3 Data Manipulation Language for the Hierarchical Model 811 Selected Bibliography 816 Footnotes 816 Selected Bibliography 818 Format for Bibliographic Citations 819 Bibliographic References 819 A 820 B 822 C 826 D 831 E 833 F 836 G 837 H 839 1 Page 10 of 893 [...]... fileprocessing software In Section 1. 6 we discuss additional functions that characterize a DBMS First, however, we categorize the different types of persons who work in a database environment 1 Page 28 of 893 student’s birthdate erroneously as JAN -19 -19 74, whereas the other user groups may enter the correct value of JAN-29 -19 74 In the database approach, the views of different user groups are integrated during database. .. details of how they are internally implemented In that sense, an abstraction of the miniworld activity is made available to the user as an abstract operation 1. 3.3 Support of Multiple Views of the Data A database typically has many users, each of whom may require a different perspective or view of the database A view may be a subset of the database or it may contain virtual data that is derived from the database. .. 862 W 864 Y 866 Z 866 Copyright Information 868 1 Page 11 of 893 We would like to repeat our thanks to those who have reviewed and contributed to both previous editions of Fundamentals of Database Systems For the first edition these individuals include Alan Apt (editor), Don Batory, Scott Downing, Dennis Heimbigner, Julia Hodges, Yannis... The operations of each class are specified in terms of predefined procedures called methods Relational DBMSs have been extending their models to incorporate object database concepts and other capabilities; these systems are referred to as object-relational or extended-relational systems We discuss object databases and extended-relational systems in Chapter 11 , Chapter 12 and Chapter 13 The network... C++ program The persistent storage of program objects and data structures is an important function of database systems Traditional database systems often suffered from the so-called impedance mismatch problem, since the data structures provided by the DBMS were incompatible with the programming language’s data structures Object-oriented database systems typically offer data structure compatibility... search for particular database records efficient We discuss physical storage techniques and access structures in Chapter 5 and Chapter 6 2 .1. 2 Schemas, Instances, and Database State In any data model it is important to distinguish between the description of the database and the database itself The description of a database is called the database schema, which is specified during database design and is... encouragement, and patience of our families R.E S.B.N © Copyright 2000 by Ramez Elmasri and Shamkant B Navathe 1 Page 16 of 893 Part 6 covers a number of advanced topics Chapter 23 gives detailed introductions to the concepts of active and temporal databases—which are increasingly being incorporated into database applications— and also gives an overview of spatial and multimedia database concepts Chapter... current snapshot of the database Note 7 This is also known as the ANSI/SPARC architecture, after the committee that proposed it (Tsichritzis and Klug 19 78) 1 Page 51 of 893 particular entity will have a value for each of its attributes The attribute values that describe each entity become a major part of the data stored in the database Figure 03.03 shows two entities and the values of their attributes... (Domains) of Attributes Each simple attribute of an entity type is associated with a value set (or domain of values), which specifies the set of values that may be assigned to that attribute for each individual entity In Figure 03.06, if the range of ages allowed for employees is between 16 and 70, we can specify the value set of the Age attribute of EMPLOYEE to be the set of integer numbers between 16 and... binary relationship types are 1: 1, 1: N, N :1, and M:N An example of a 1: 1 binary relationship is MANAGES (Figure 03 .12 ), which relates a department entity to the employee who manages that department This represents the miniworld constraints that an employee can manage only one department and that a department has only one manager The relationship type WORKS_ON (Figure 03 .13 ) is of cardinality ratio M:N, . Files 11 5 5.7 Files of Unordered Records (Heap Files) 11 7 5.8 Files of Ordered Records (Sorted Files) 11 8 5.9 Hashing Techniques 12 0 5 .10 Other Primary File Organizations 12 6 5 .11 Summary 12 6. Organizations 10 0 5 .1 Introduction 10 1 5.2 Secondary Storage Devices 10 3 5.3 Parallelizing Disk Access Using RAID Technology 10 7 5.4 Buffering of Blocks 11 1 5.5 Placing File Records on Disk 11 1 5.6. Fundamentals of Database Systems Preface 12 Contents of This Edition 13 Guidelines for Using This Book 14 Acknowledgments 15 Contents of This Edition 17 Guidelines for

Ngày đăng: 08/08/2014, 18:22

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan