Description
Efnisyfirlit
- Title Page
- Copyright Page
- Contents
- Preface
- About the Authors
- Part 1 Introduction to Databases
- Chapter 1 Databases and Database Users
- 1.1 Introduction
- 1.2 An Example
- 1.3 Characteristics of the Database Approach
- 1.4 Actors on the Scene
- 1.5 Workers behind the Scene
- 1.6 Advantages of Using the DBMS Approach
- 1.7 A Brief History of Database Applications
- 1.8 When Not to Use a DBMS
- 1.9 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 2 Database System Concepts and Architecture
- 2.1 Data Models, Schemas, and Instances
- 2.2 Three-Schema Architecture and Data Independence
- 2.3 Database Languages and Interfaces
- 2.4 The Database System Environment
- 2.5 Centralized and Client/Server Architectures for DBMSs
- 2.6 Classification of Database Management Systems
- 2.7 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 2 Conceptual Data Modeling and Database Design
- Chapter 3 Data Modeling Using the Entity–Relationship (ER) Model
- 3.1 Using High-Level Conceptual Data Models for Database Design
- 3.2 A Sample Database Application
- 3.3 Entity Types, Entity Sets, Attributes, and Keys
- 3.4 Relationship Types, Relationship Sets, Roles, and Structural Constraints
- 3.5 Weak Entity Types
- 3.6 Refining the ER Design for the COMPANY Database
- 3.7 ER Diagrams, Naming Conventions, and Design Issues
- 3.8 Example of Other Notation: UML Class Diagrams
- 3.9 Relationship Types of Degree Higher than Two
- 3.10 Another Example: A UNIVERSITY Database
- 3.11 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Chapter 4 The Enhanced Entity–Relationship (EER) Model
- 4.1 Subclasses, Superclasses, and Inheritance
- 4.2 Specialization and Generalization
- 4.3 Constraints and Characteristics of Specialization and Generalization Hierarchies
- 4.4 Modeling of UNION Types Using Categories
- 4.5 A Sample UNIVERSITY EER Schema, Design Choices, and Formal Definitions
- 4.6 Example of Other Notation: Representing Specialization and Generalization in UML Class Diagrams
- 4.7 Data Abstraction, Knowledge Representation, and Ontology Concepts
- 4.8 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Part 3 The Relational Data Model and SQL
- Chapter 5 The Relational Data Model and Relational Database Constraints
- 5.1 Relational Model Concepts
- 5.2 Relational Model Constraints and Relational Database Schemas
- 5.3 Update Operations, Transactions, and Dealing with Constraint Violations
- 5.4 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 6 Basic SQL
- 6.1 SQL Data Definition and Data Types
- 6.2 Specifying Constraints in SQL
- 6.3 Basic Retrieval Queries in SQL
- 6.4 INSERT, DELETE, and UPDATE Statements in SQL
- 6.5 Additional Features of SQL
- 6.6 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 7 More SQL: Complex Queries, Triggers, Views, and Schema Modification
- 7.1 More Complex SQL Retrieval Queries
- 7.2 Specifying Constraints as Assertions and Actions as Triggers
- 7.3 Views (Virtual Tables) in SQL
- 7.4 Schema Change Statements in SQL
- 7.5 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 8 The Relational Algebra and Relational Calculus
- 8.1 Unary Relational Operations: SELECT and PROJECT
- 8.2 Relational Algebra Operations from Set Theory
- 8.3 Binary Relational Operations: JOIN and DIVISION
- 8.4 Additional Relational Operations
- 8.5 Examples of Queries in Relational Algebra
- 8.6 The Tuple Relational Calculus
- 8.7 The Domain Relational Calculus
- 8.8 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Chapter 9 Relational Database Design by ER- and EER-to-Relational Mapping
- 9.1 Relational Database Design Using ER-to-Relational Mapping
- 9.2 Mapping EER Model Constructs to Relations
- 9.3 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Part 4 Database Programming Techniques
- Chapter 10 Introduction to SQL Programming Techniques
- 10.1 Overview of Database Programming Techniques and Issues
- 10.2 Embedded SQL, Dynamic SQL, and SQLJ
- 10.3 Database Programming with Function Calls and Class Libraries: SQL/CLI and JDBC
- 10.4 Database Stored Procedures and SQL/PSM
- 10.5 Comparing the Three Approaches
- 10.6 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 11 Web Database Programming Using PHP
- 11.1 A Simple PHP Example
- 11.2 Overview of Basic Features of PHP
- 11.3 Overview of PHP Database Programming
- 11.4 Brief Overview of Java Technologies for Database Web Programming
- 11.5 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 5 Object, Object-Relational, and XML: Concepts, Models, Languages, and Standards
- Chapter 12 Object and Object-Relational Databases
- 12.1 Overview of Object Database Concepts
- 12.2 Object Database Extensions to SQL
- 12.3 The ODMG Object Model and the Object Definition Language ODL
- 12.4 Object Database Conceptual Design
- 12.5 The Object Query Language OQL
- 12.6 Overview of the C++ Language Binding in the ODMG Standard
- 12.7 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 13 XML: Extensible Markup Language
- 13.1 Structured, Semistructured, and Unstructured Data
- 13.2 XML Hierarchical (Tree) Data Model
- 13.3 XML Documents, DTD, and XML Schema
- 13.4 Storing and Extracting XML Documents from Databases
- 13.5 XML Languages
- 13.6 Extracting XML Documents from Relational Databases
- 13.7 XML/SQL: SQL Functions for Creating XML Data
- 13.8 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 6 Database Design Theory and Normalization
- Chapter 14 Basics of Functional Dependencies and Normalization for Relational Databases
- 14.1 Informal Design Guidelines for Relation Schemas
- 14.2 Functional Dependencies
- 14.3 Normal Forms Based on Primary Keys
- 14.4 General Definitions of Second and Third Normal Forms
- 14.5 Boyce-Codd Normal Form
- 14.6 Multivalued Dependency and Fourth Normal Form
- 14.7 Join Dependencies and Fifth Normal Form
- 14.8 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Chapter 15 Relational Database Design Algorithms and Further Dependencies
- 15.1 Further Topics in Functional Dependencies: Inference Rules, Equivalence, and Minimal Cover
- 15.2 Properties of Relational Decompositions
- 15.3 Algorithms for Relational Database Schema Design
- 15.4 About Nulls, Dangling Tuples, and Alternative Relational Designs
- 15.5 Further Discussion of Multivalued Dependencies and 4NF
- 15.6 Other Dependencies and Normal Forms
- 15.7 Summary
- Review Questions
- Exercises
- Laboratory Exercises
- Selected Bibliography
- Part 7 File Structures, Hashing, Indexing, and Physical Database Design
- Chapter 16 Disk Storage, Basic File Structures, Hashing, and Modern Storage Architectures
- 16.1 Introduction
- 16.2 Secondary Storage Devices
- 16.3 Buffering of Blocks
- 16.4 Placing File Records on Disk
- 16.5 Operations on Files
- 16.6 Files of Unordered Records (Heap Files)
- 16.7 Files of Ordered Records (Sorted Files)
- 16.8 Hashing Techniques
- 16.9 Other Primary File Organizations
- 16.10 Parallelizing Disk Access Using RAID Technology
- 16.11 Modern Storage Architectures
- 16.12 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 17 Indexing Structures for Files and Physical Database Design
- 17.1 Types of Single-Level Ordered Indexes
- 17.2 Multilevel Indexes
- 17.3 Dynamic Multilevel Indexes Using B-Trees + and B -Trees
- 17.4 Indexes on Multiple Keys
- 17.5 Other Types of Indexes
- 17.6 Some General Issues Concerning Indexing
- 17.7 Physical Database Design in Relational Databases
- 17.8 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 8 Query Processing and Optimization
- Chapter 18 Strategies for Query Processing
- 18.1 Translating SQL Queries into Relational Algebra and Other Operators
- 18.2 Algorithms for External Sorting
- 18.3 Algorithms for SELECT Operation
- 18.4 Implementing the JOIN Operation
- 18.5 Algorithms for PROJECT and Set Operations
- 18.6 Implementing Aggregate Operations and Different Types of JOINs
- 18.7 Combining Operations Using Pipelining
- 18.8 Parallel Algorithms for Query Processing
- 18.9 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 19 Query Optimization
- 19.1 Query Trees and Heuristics for Query Optimization
- 19.2 Choice of Query Execution Plans
- 19.3 Use of Selectivities in Cost-Based Optimization
- 19.4 Cost Functions for SELECT Operation
- 19.5 Cost Functions for the JOIN Operation
- 19.6 Example to Illustrate Cost-Based Query Optimization
- 19.7 Additional Issues Related to Query Optimization
- 19.8 An Example of Query Optimization in Data Warehouses
- 19.9 Overview of Query Optimization in Oracle
- 19.10 Semantic Query Optimization
- 19.11 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 9 Transaction Processing, Concurrency Control, and Recovery
- Chapter 20 Introduction to Transaction Processing Concepts and Theory
- 20.1 Introduction to Transaction Processing
- 20.2 Transaction and System Concepts
- 20.3 Desirable Properties of Transactions
- 20.4 Characterizing Schedules Based on Recoverability
- 20.5 Characterizing Schedules Based on Serializability
- 20.6 Transaction Support in SQL
- 20.7 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 21 Concurrency Control Techniques
- 21.1 Two-Phase Locking Techniques for Concurrency Control
- 21.2 Concurrency Control Based on Timestamp Ordering
- 21.3 Multiversion Concurrency Control Techniques
- 21.4 Validation (Optimistic) Techniques and Snapshot Isolation Concurrency Control
- 21.5 Granularity of Data Items and Multiple Granularity Locking
- 21.6 Using Locks for Concurrency Control in Indexes
- 21.7 Other Concurrency Control Issues
- 21.8 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 22 Database Recovery Techniques
- 22.1 Recovery Concepts
- 22.2 NO-UNDO/REDO Recovery Based on Deferred Update
- 22.3 Recovery Techniques Based on Immediate Update
- 22.4 Shadow Paging
- 22.5 The ARIES Recovery Algorithm
- 22.6 Recovery in Multidatabase Systems
- 22.7 Database Backup and Recovery from Catastrophic Failures
- 22.8 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Part 10 Distributed Databases, NOSQL Systems, and Big Data
- Chapter 23 Distributed Database Concepts
- 23.1 Distributed Database Concepts
- 23.2 Data Fragmentation, Replication, and Allocation Techniques for Distributed Database Design
- 23.3 Overview of Concurrency Control and Recovery in Distributed Databases
- 23.4 Overview of Transaction Management in Distributed Databases
- 23.5 Query Processing and Optimization in Distributed Databases
- 23.6 Types of Distributed Database Systems
- 23.7 Distributed Database Architectures
- 23.8 Distributed Catalog Management
- 23.9 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 24 NOSQL Databases and Big Data Storage Systems
- 24.1 Introduction to NOSQL Systems
- 24.2 The CAP Theorem
- 24.3 Document-Based NOSQL Systems and MongoDB
- 24.4 NOSQL Key-Value Stores
- 24.5 Column-Based or Wide Column NOSQL Systems
- 24.6 NOSQL Graph Databases and Neo4j
- 24.7 Summary
- Review Questions
- Selected Bibliography
- Chapter 25 Big Data Technologies Based on MapReduce and Hadoop
- 25.1 What Is Big Data?
- 25.2 Introduction to MapReduce and Hadoop
- 25.3 Hadoop Distributed File System (HDFS)
- 25.4 MapReduce: Additional Details
- 25.5 Hadoop v2 alias YARN
- 25.6 General Discussion
- 25.7 Summary
- Review Questions
- Selected Bibliography
- Part 11 Advanced Database Models, Systems, and Applications
- Chapter 26 Enhanced Data Models: Introduction to Active, Temporal, Spatial, Multimedia, and Deductiv
- 26.1 Active Database Concepts and Triggers
- 26.2 Temporal Database Concepts
- 26.3 Spatial Database Concepts
- 26.4 Multimedia Database Concepts
- 26.5 Introduction to Deductive Databases
- 26.6 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 27 Introduction to Information Retrieval and Web Search
- 27.1 Information Retrieval (IR) Concepts
- 27.2 Retrieval Models
- 27.3 Types of Queries in IR Systems
- 27.4 Text Preprocessing
- 27.5 Inverted Indexing
- 27.6 Evaluation Measures of Search Relevance
- 27.7 Web Search and Analysis
- 27.8 Trends in Information Retrieval
- 27.9 Summary
- Review Questions
- Selected Bibliography
- Chapter 28 Data Mining Concepts
- 28.1 Overview of Data Mining Technology
- 28.2 Association Rules
- 28.3 Classification
- 28.4 Clustering
- 28.5 Approaches to Other Data Mining Problems
- 28.6 Applications of Data Mining
- 28.7 Commercial Data Mining Tools
- 28.8 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Chapter 29 Overview of Data Warehousing and OLAP
- 29.1 Introduction, Definitions, and Terminology
- 29.2 Characteristics of Data Warehouses
- 29.3 Data Modeling for Data Warehouses
- 29.4 Building a Data Warehouse
- 29.5 Typical Functionality of a Data Warehouse
- 29.6 Data Warehouse versus Views
- 29.7 Difficulties of Implementing Data Warehouses
- 29.8 Summary
- Review Questions
- Selected Bibliography
- Part 12 Additional Database Topics: Security
- Chapter 30 Database Security
- 30.1 Introduction to Database Security Issues
- 30.2 Discretionary Access Control Based on Granting and Revoking Privileges
- 30.3 Mandatory Access Control and Role-Based Access Control for Multilevel Security
- 30.4 SQL Injection
- 30.5 Introduction to Statistical Database Security
- 30.6 Introduction to Flow Control
- 30.7 Encryption and Public Key Infrastructures
- 30.8 Privacy Issues and Preservation
- 30.9 Challenges to Maintaining Database Security
- 30.10 Oracle Label-Based Security
- 30.11 Summary
- Review Questions
- Exercises
- Selected Bibliography
- Appendix A: Alternative Diagrammatic Notations for ER Models
- Appendix B: Parameters of Disks
- Appendix C: Overview of the QBE Language
- C.1 Basic Retrievals in QBE
- C.2 Grouping, Aggregation, and Database Modification in QBE
- Bibliography
- Index
- A
- B
- C
- D
- E
- F
- G
- H
- I
- J
- K
- L
- M
- N
- O
- P
- Q
- R
- S
- T
- U
- V
- W
- X
- Y
Reviews
There are no reviews yet.