Database Systems: An Application-Oriented Approach / Edition 2
by Michael Kifer, Philip M. Lewis, Arthur Bernstein
Designed for students learning databases for the first time, Database Systems: An Application Oriented Approach, Complete Version, Second Edition presents the principles underlying the design and implementation of databases and database applications. The second edition of the Complete Version is designed for use in either a one semester introductory/i>
… See more details belowOverview
Designed for students learning databases for the first time, Database Systems: An Application Oriented Approach, Complete Version, Second Edition presents the principles underlying the design and implementation of databases and database applications. The second edition of the Complete Version is designed for use in either a one semester introductory database course, or a longer sequence covering advanced material on databases or transaction processing. Chapters 1-12 cover the core material for an introductory course. Chapters 13-26 cover advanced database topics such as Object Databases, Security, XML and Data Mining. A new chapter 25 covers Web Services topics. A practical case study is integrated throughout giving students an opportunity to work with a rich database application and implement technical concepts such as database design, query processing and, transaction processing.
Product Details
- ISBN-13:
- 9780321268457
- Publisher:
- Pearson
- Publication date:
- 03/18/2005
- Edition description:
- Revised
- Pages:
- 1272
- Sales rank:
- 738,492
- Product dimensions:
- 7.55(w) x 9.13(h) x 2.44(d)
Table of Contents
PART ONE Introduction
Chapter 1 Overview of Databases and Transactions
What Are Databases and Transactions?
Features of Modern Database and Transaction Processing Systems
Major Players in the Implementation and Support of Database and Transaction Processing Systems
Decision Support Systems—OLAP and OLTP
Chapter 2 The Big Picture
Case Study: A Student Registration System
Introduction to Relational Databases
What Makes a Program a Transaction—The ACID Properties
Bibliographic Notes
Exercises
PART TWO Database Management
Chapter 3 The Relational Data Model
What Is a Data Model?
The Relational Model
SQL—Data Definition Sublanguage
Bibliographic Notes
Exercises
Chapter 4 Conceptual Modeling of Databases with Entity-Relationship Diagrams and the Unified Modeling Language
Conceptual Modeling with the E-R Approach
Entities and Entity Types
Relationships and Relationship Types
Advanced Features in Conceptual Data Modeling
From E-R Diagrams to Relational Database Schemas
UML: A New Kid on the Block
A Brokerage Firm Example
Case Study: A Database Design for the Student Registration System
Limitations of Data Modeling Methodologies
Bibliographic Notes
Exercises
Chapter 5 Relational Algebra and SQL
Relational Algebra: Under the Hood of SQL
The Query Sublanguage of SQL
Modifying Relation Instances in SQL
Bibliographic Notes
Exercises
Chapter 6 Database Design with the Relational Normalization Theory
The Problem of Redundancy
Decompositions
Functional Dependencies
Properties of Functional Dependencies
Normal Forms
Properties of Decompositions
An Algorithm for BCNF Decomposition
Synthesis of 3NF Schemas
The Fourth Normal Form
Advanced 4NF Design
Summary of Normal Form Decomposition
Case Study: Schema Refinement for the Student Registration System
Tuning Issues: To Decompose or Not to Decompose?
Bibliographic Notes
Exercises
Chapter 7 Triggers and Active Databases
What Is a Trigger?
Semantic Issues in Trigger Handling
Triggers in SQL
Avoiding a Chain Reaction
Bibliographic Notes
Exercises
Chapter 8 Using SQL in an Application
What Are the Issues Involved?
Embedded SQL
More on Integrity Constraints
Dynamic SQL
JDBC and SQLJ
ODBC
Comparison
Bibliographic Notes
Exercises
PART THREE Optimizing DBMS Performance
Chapter 9 Physical Data Organization and Indexing
Disk Organization
Heap Files
Sorted Files
Indices
Multilevel Indexing
Hash Indexing
Special-Purpose Indices
Tuning Issues: Choosing Indices for an Application
Bibliographic Notes
Exercises
Chapter 10 The Basics of Query Processing
Overview of Query Processing
External Sorting
Computing Projection, Union, and Set Difference
Computing Selection
Computing Joins
Multirelational Joins
Computing Aggregate Functions
Bibliographic Notes
Exercises
Chapter 11 An Overview of Query Optimization
Query Processing Architecture
Heuristic Optimization Based on Algebraic Equivalences
Estimating the Cost of a Query Execution Plan
Estimating the Size of the Output
Choosing a Plan
Bibliographic Notes
Exercises
Chapter 12 Database Tuning
Disk Caches
Tuning the Schema
Tuning the Data Manipulation Language
Tools
Managing Physical Resources
Influencing the Optimizer
Bibliographic Notes
Exercises
PART FOUR Advanced Topics in Databases
Chapter 13 Relational Calculus, Visual Query Languages, and Deductive Databases
Tuple Relational Calculus
Understanding SQL through Tuple Relational Calculus
Domain Relational Calculus and Visual Query Languages
Visual Query Languages: QBE and PC Databases
The Relationship between Relational Algebra and the Calculi
Deductive Databases
Bibliographic Notes
Exercises
Chapter 14 Object Databases
Limitations of the Relational Data Model
Object Databases versus Relational Databases
The Conceptual Object Data Model
Objects in SQL:1999 and SQL:2003
The ODMG Standard
Common Object Request Broker Architecture
Bibliographic Notes
Exercises
Chapter 15 XML and Web Data
Semistructured Data
Overview of XML
XML Schema
XML Query Languages
Bibliographic Notes
Exercises
Chapter 16 Distributed Databases
The Application Designer’s View of the Database
Distributing Data among Different Databases
Query Planning Strategies
Bibliographic Notes
Exercises
Chapter 17 OLAP and Data Mining
OLAP and Data Warehouses—Old and New
A Multidimensional Model for OLAP Applications
Aggregation
ROLAP and MOLAP
Implementation Issues
Populating a Data Warehouse
Data Mining Tasks
Mining Associations
Classification and Prediction Using Decision Trees
Classification and Prediction Using Neural Nets
Clustering
Bibliographic Notes
Exercises
PART FIVE Transaction Processing
Chapter 18 ACID Properties of Transactions
Consistency
Atomicity
Durability
Isolation
The ACID Properties
Bibliographic Notes
Exercises
Chapter 19 Models of Transactions
Flat Transactions
Providing Structure within a Transaction
Structuring an Application as Multiple Transactions
Bibliographic Notes
Exercises
Chapter 20 Implementing Isolation
Schedules and Schedule Equivalence
Recoverability, Cascaded Aborts, and Strictness
Models for Concurrency Control
A Strategy for Immediate-Update Pessimistic Concurrency Controls
Design of an Immediate-Update Pessimistic Concurrency Control
Objects and Semantic Commutativity
Atomicity, Recoverability, and Compensating Operations
Isolation in Structured Transaction Models
Other Concurrency Controls
Bibliographic Notes
Exercises
Chapter 21 Isolation in Relational Databases
Conflicts in a Relational Database
Locking and the SQL Isolation Levels
Granular Locking: Intention Locks and Index Locks
Tuning Transactions
Multiversion Concurrency Controls
Bibliographic Notes
Exercises
Chapter 22 Atomicity and Durability
Crash, Abort, and Media Failure
Immediate-Update Systems and Write-Ahead Logs
Recovery in Deferred-Update Systems
Recovery from Media Failure
Bibliographic Notes
Exercises
PART SIX Distributed Applications and the Web
Chapter 23 Architecture of Transaction Processing Systems
Transaction Processing in a Centralized System
Transaction Processing in a Distributed System
The TP Monitor: An Overview
The TP Monitor: Global Atomicity and the Transaction Manager
The TP Monitor: Remote Procedure Call
The TP Monitor: Peer-to-Peer Communication
The TP Monitor: Event Communication
Storage Architectures
Transaction Processing on the Internet
Web Application Servers—J2EE
Bibliographic Notes
Exercises
Chapter 24 Implementing Distributed Transactions
Implementing the ACID Properties
Atomic Termination
Transfer of Coordination
Distributed Deadlock
Global Serialization
When Global Atomicity Cannot Be Guaranteed
Replicated Databases
Distributed Transactions in the Real World
Bibliographic Notes
Exercises
Chapter 25 Web Services
The Basic Idea
Web Basics
Hypertext Transfer Protocol
SOAP: Message Passing
WSDL: Specifying Web Services
BPEL: Specifying Business Processes
UDDI: Publishing and Discovering Information about Services
WS-Coordination: Transactional Web Services
Bibliographic Notes
Exercises
Chapter 26 Security and Electronic Commerce
Authentication, Authorization, and Encryption
Encryption
Digital Signatures
Key Distribution and Authentication
Authorization
Authenticated Remote Procedure Call
Electronic Commerce
The Secure Sockets Layer Protocol: Certificates
Passport: Single Sign-On
Keeping Credit Card Numbers Private
The Secure Electronic Transaction Protocol: Dual Signatures
Goods Atomicity, Certified Delivery, and Escrow
Electronic Cash: Blind Signatures
Security in XML-Based Web Services
Bibliographic Notes
Exercises
Bibliography
Index
Appendices, available on the Web
A An Overview of Transaction Processing
Isolation
Atomicity and Durability
Implementing Distributed Transactions
Bibliographic Notes
Exercises
B Requirements and Specifications
Software Engineering Methodology
The Requirements Document for the Student Registration System
Requirements Analysis—New Issues
Specifying the Student Registration System
The Specification Document for the Student Registration System: Section III
The Next Step in the Software Engineering Process
Bibliographic Notes
Exercises
C Design, Coding, and Testing
The Design Process
Test Plan
Project Planning
Coding
Incremental Development
The Project Management Plan
Design and Code for the Student Registration System
Bibliographic Notes
Exercises
Customer Reviews
Average Review: