Database and Transaction Processing (Hardcover)

Philip M. Lewis, Arthur Bernstein, Michael Kifer

  • 出版商: Addison Wesley
  • 出版日期: 2001-07-24
  • 售價: $931
  • 語言: 英文
  • 頁數: 1056
  • 裝訂: Hardcover
  • ISBN: 0201708728
  • ISBN-13: 9780201708721
  • 相關分類: 資料庫
  • 已絕版

買這商品的人也買了...

商品描述


Description

Databases and Transaction Processing presents the conceptual and engineering principles underlying the design and implementation of database and transaction processing applications. In contrast with other texts in this area that focus on how to implement the database management system itself, this text emphasizes how to build database applications, since many more students will be implementing applications than will be building DBMSs. In order to provide a solid foundation for these principles, the book thoroughly presents the theory underlying relational databases and relational query languages.

This book covers the material traditionally taught in an introductory course in database systems: the relational model, query languages (including SQL, QBE, relational algebra, and relational calculus), normalization theory, and query processing.

The book also contains advanced database material not in other intro texts. Object databases, XML, and document processing on the web are given extensive coverage. Together with additional material on distributed databases, CORBA, OLAP, and data mining, the latter part of the book provides the basis for an advanced course on databases.

The text also covers transaction processing in sufficient depth that an entire course can be devoted to the subject. In addition to discussing issues related to building transactions and ACID properties, it describes TP monitors, the architecture of centralized and distributed transaction processing systems, and the transactional issues related to building correct and efficient database applications.

Back to Top


Appropriate Courses

Database Systems, Database Management and Design, Advanced Database courses.

Back to Top


Features

  • Presents traditional material with an emphasis on how to build database applications.
  • Covers completely the traditional DBMS theory of the relational model and associated languages.
  • Provides extensive material on the “real-world” uses of SQL in host language programs, including embedded SQL, SQL/PSM, ODBC, JDBC, and SQLJ.
  • Includes extensive coverage of the transaction model and its use in implementing transaction processing applications.
  • Motivates application of the material via a running case study, “The Student Registration System,” which takes readers through the design, implementation, and testing of a DBMS application.
  • Discusses the important software engineering issues that arise when implementing transaction processing applications.
  • Presents in-depth coverage of object and object-relational databases.
  • Covers current topics in databases, including CORBA, OLAP, data mining, distributed databases, and triggers.
  • Contains extensive material on XML and document processing on the Web.
  • Contains in-depth coverage of the transactional and security issues that arise in Internet commerce.
Back to Top


Table Of Contents

I. INTRODUCTION.

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.

2. A Closer Look.
Cast Study: A Student Registration System.
Introduction to Relational Databases.
What Makes a Program a Transaction?

3. Case Study: Starting the Student Registration System.
Software Engineering Methodology.
Requirements Document.
Requirements Analysis-New Issues.
Application Generators.
GUIs and Objects.
Events and Procedures.
Accessing Databases and Executing Transactions.
Specifying the Student Registration System.
Specification Document.

II. DATABASE MANAGEMENT.

4. The Relational Data Model.
What Is a Data Model?
The Relational Model.
SQL: Data Definition Sublanguage.

5. Database Design I: The Entity-Relationship Model.
Conceptual Modeling with the E-R Approach.
Entities and Entity Types.
Relationships and Relationship Types.
Advanced Features of the E-R Approach.
A Brokerage Firm Example.
Limitations of the E-R Approach.
Case Study: A Design for the Student Registration System.

6. Query Languages I: Relational Algebra and SQL.
Relational Algebra: Under the Hood of SQL.
The Query Sublanguage of SQL.
Modifying Relation Instances in SQL.

7. Query Languages II: Relational Calculus and Visual Query Languages.
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.
Recursive Queries in SQL:1999.

8. Database Design II: 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.

9. Triggers and Active Databases.
Semantic Issues in Trigger Handling.
Triggers in SQL:1999.
Avoiding a Chain Reaction.

10. SQL in the Real World.
Executing SQL Statements within an Application Program.
Embedded SQL.
More on Integrity Constraints.
Dynamic SQL.
JDBC and SQLJ.
ODBC.
Comparison.

11. 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.

12. Case Study: Completing the Student Registration System.
The Design Document.
Test Plan.
Project Planning.
Coding.
Incremental Development.
Design and Code for the Student Registration System.

13. The Basics of Query Processing.
External Sorting.
Computing Projection, Union, and Set Difference.
Computing Selection.
Computing Joins.
Multi-Relational Joins.
Computing Aggregate Functions.
Tuning Issues: Impact on Physical Database Design.

14. Overview of Query Optimization.
Overview of Query Processing.
Heuristic Optimization Based on Algebraic Equivalences.
Estimating the Cost of a Query Execution Plan.
Estimating the Size of the Output.
Choosing a Plan.
Tuning Issues: Impact on Query Design.

15. An Overview of Transaction Processing.
Isolation.
Atomicity and Durability.
Implementing Distributed Transactions.

III. ADVANCED TOPICS IN DATABASES.

16. Object Databases.
Shortcomings of the Relational Data Model.
Historical Developments.
The Conceptual Object Data Model.
The ODMG Standard.
Objects in SQL:1999.
Common Object Request Broker Architecture.

17. XML and Web Data.
Semistructured Data.
Overview of XML.
XML Schema.
XML Query Languages.

18. Distributed Databases.
The Application Designer's View of the Database.
Distributing Data Among Different Databases.
Query Planning Strategies.

19. OLAP and Data Mining.
OLAP and Data Warehouses—Old and New.
A Multi-Dimensional Model for OLAP Applications.
Aggregation.
ROLAP and MOLAP.
Implementation Issues.
Data Mining.
Populating a Data Warehouse.

IV. TRANSACTION PROCESSING.

20. ACID Properties of Transactions.
Consistency.
Atomicity.
Durability.
Isolation.
The ACID Properties.

21. Models of Transactions.
Flat Transactions.
Providing Structure within a Transaction.
Structuring an Application into Multiple Transactions.

22. Architecture of Transaction Processing Systems.
Transaction Processing in a Centralized System.
Transaction Processing in a Distributed System.
Heterogeneous Systems and the TP Monitor.
The TP Monitor: Communication and Global Atomicity.
Transaction Processing on the Internet.

23. Implementing Isolation.
Schedules and Their Equivalence.
Recoverability, Cascaded Aborts, and Strictness.
Models for Concurrency Controls.
A Strategy for Immediate-Update Pessimistic Concurrency Controls.
Design of an Immediate-Update Pessimistic Concurrency Control.
Objects and Semantic Commutativity.
Isolation in Structured Transaction Models.
Other Concurrency Controls.

24. Isolation in Relational Databases.
Locking.
Locking and the SQL Isolation Levels.
Granular Locking: Intention Locks and Index Locks.
Improving System Performance.
Multiversion Concurrency Controls.

25. Atomicity and Durability.
Crash, Abort, and Media Failure.
Immediate-Update Systems and Write-Ahead Logs.
Recovery in Deferred-Update Systems.
Recovery from Media Failure.

26. 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.

27. Security and Internet Commerce.
Authentication, Authorization, and Encryption.
Encryption.
Digital Signatures.
Key Distribution and Authentication.
Authorization.
Authenticated Remote Procedure Call.
Internet Commerce.

Appendix: System Issues.
Basic System Issues.
Multigprogrammed Operating Systems.
Threads.
Communication.

References.
Index.


Back to Top



Supplements


Instructor Supplements

For more information about any of the supplements listed below, use our Rep. Locator to contact your Addison Wesley representative.

  • Solutions Manual

  • PowerPoints Slides
    For database and transaction processing course. PowerPoint slides of all figures.



Back to Top