书籍详情
数据库与事务处理:面向应用的方法 英文本
作者:( )Philip M. Lewis著
出版社:高等教育出版社
出版时间:2002-10-01
ISBN:9787040113969
定价:¥65.00
购买这本书可以去
内容简介
进入21世纪,尤其随着我国加入WTO,信息产业的国际竞争将更加激烈。我国信息产业虽然在20世纪末取得了迅猛发展,但与发达国家相比,甚至与印度、爱尔兰等国家相比,还有很大差距。国家信息化的发展速度和信息产业的国际竞争能力,最终都将取决于信息科学技术人才的质量和数量。引进国外信息科学和技术优秀教材,在有条件的学校推动开展英语授课或双语教学,是教育部为加快培养大批高质量的信息技术人才采取的一项重要举措。为此,教育部要求由高等教育出版社首先开展信息科学和技术教材的引进试点工作。同时提出了两点要求,一是要高水平,二是要低价格。在高等教育出版社和信息科学技术引进教材专家组的努力下,经过比较短的时间,第一批引进的20多种教材已经陆续出版。这套教材出版后受到了广泛的好评,其中有不少是世界信息科学技术领域著名专家、教授的经典之作和反映信息科学技术最新进展的优秀作品,代表了目前世界信息科学技术教育的一流水平,而且价格也是最优惠的,与国内同类自编教材相当。这项教材引进工作是在教育部高等教育司和高教社的共同组织下,由国内信息科学技术领域的专家、教授广泛参与,在对大量国外教材进行多次遴选的基础上,参考了国内和国外著名大学相关专业的课程设置进行系统引进的。其中,JohnWiley公司出版的贝尔实验室信息科学研究中心副总裁Silberchatz教授的经典著作《操作系统概念》,是我们经过反复谈判,做了很多努力才得以引进的。WilliamStallings先生曾编写了在美国深受欢迎的信息科学技术系列教材,其中有多种教材获得过美国教材和学术著作者协会颁发的计算机科学与工程教材奖,这批引进教材中就有他的两本著作。留美中国学者JiaweiHan先生的《数据挖掘》是该领域中具有里程碑意义的著作。由达特茅斯学院刀ThomasCormen和麻省理工学院、哥伦比亚大学的几位学者共同编著的经典著作《算法导论》,在经历了11年的锤炼之后于2001年出版了第二版。目前任教于美国Massachusetts大学的JamesKurose教授,曾在美国三所高校先后10次获得杰出教师或杰出教学奖,由他主编的《计算机网络》出版后,以其体系新颖、内容先进而倍受欢迎。在努力降低引进教材售价方面,高等教育出版社做了大量和细致的工作。这套引进的教材体现了权威性、系统性、先进性和经济性等特点。教育部也希望国内和国外的出版商积极参与此项工作,共同促进中国信息技术教育和信息产业的发展。我们在与外商的谈判工作中,不仅要坚定不移地引进国外最优秀的教材,而且还要千方百计地将版权转让费降下来,要让引进教材的价格与国内自编教材相当,让广大教师和学生负担得起。中国的教育市场巨大,外国出版公司和国内出版社要通过扩大发行数量取得效益。在引进教材的同时,我们还应做好消化吸收,注意学习国外先进的教学思想和教学方法,提高自编教材的水平,使我们的教学和教材在内容体系上,在理论与实践的结合上,在培养学生的动手能力上能有较大的突破和创新。
作者简介
作者Philip M. Lewis、Arthur Bernstein、Michael Kifer均在美国纽约州立大学Stony Brook分校计算机科学系任教。
目录
Preface
PART One Introduction
1 Overview of Databases and Transactions
1.1 What Are Databases and Transactions?
1.2 Features of Modern Database and Transaction Processing Systems
1.3 Major Players in the Implementation and Support of Database and Transaction Processing Systems
1.4 Decision Support Systems OLAP and OLTP
1.5 Exercises
2 A Closer Look
2.1 Case Study:A Student Registration System
2.2 Introduction to Relational Databases
2.3 What Makes a Program a Transaction?
2.4 Bibliographic Notes
2.5 Exercises
3 Case Study:Starting the Student Registration System
3.1 Software Engineering Methodology
3.2 Requirements Document
3.3 Requirements Analysis New Issues
3.4 Application Generators
3.5 GUIs and Ojbects
3.6 Events and Procedures
3.7 Accessing Databases and Executing Transactions
3.8 Specifying the Student Registration System
3.9 Specification Document
3.10 Bibliographic Notes
3.11 Exercises
PART Two Database Management
4 The Relational Data Model
4.1 What Is a Data Model?
4.2 The Relational Model
4.3 SQL Data Definition Sublanguage
4.4 Bibliographic Notes
4.5 Exercises
5 Database Design I:The Entity-Relationship Model
5.1 Conceptual Modeling with the E-R Approach
5.2 Entities and Entity Types
5.3 Relationships and Relationship Types
5.4 Advanced Features of the E-R Approach
5.5 A Brokerage Firm Example
5.6 Limitations of the E-R Approach
5.7 Case Study:A Design for the Student Registration System
5.8 Bibliographic Notes
5.9 Exercises
6 Query Languages I:Relational Algebra and SQL
6.1 Relational Algebra:Under the Hood of SQL
6.2 The Query Sublanguage of SQL
6.3 Modifying Relation Instances in SQL
6.4 Bibliographic Notes
6.5 Exercises
7 Query Languages II:Relational Calculus and Visual Query Languages
7.1 Tuple Relational Calculus
7.2 Understanding SQL through Tuple Relational Calculus
7.3 Domain Relational Calculus and Visual Query Languages
7.4 Visual Query Languages:QBE and PC Databases
7.5 The Relationship between Relational Algebra and the Calculi
7.6 Recursive Queries in SQL:1999
7.7 Bibliographic Notes
7.8 Exercises
8 Database Design II:Relational Normalization Theory
8.1 The Problem of Redundancy
8.2 Decompositions
8.3 Functional Dependencies
8.4 Properties of Functional Dependencies
8.5 Normal Forms
8.6 Properties of Decompositions
8.7 An Algorithm for BCNF Decomposition
8.8 Synthesis of 3NF Schemas
8.9 The Fourth Normal Form
8.10 Advanced 4NF Design
8.11 Summary of Normal Form Decomposition
8.12 Case Study:Schema Refinement for the Student Registration System
8.13 Tuning Issues:To Decompose or Not to Decompose?
8.14 Bibliographic Notes
8.15 Exercises
9 Triggers and Active Database
9.1 Semantic Issues in Trigger Handling
9.2 Triggers in SQL:1999
9.3 Avoiding a Chain Reaction
9.4 Bibliographic Notes
9.5 Exercises
10 SQL in the Real World
10.1 Executing SQL Statements within an Application Program
10.2 Embedded
10.3 More on Integrity Constraints
10.4 Dynamic SQL
10.5 JDBC and SQLJ
10.6 ODBC*
10.7 Comparison
10.8 Bibliographic Notes
10.9 Exercises
11 Physical Data Organization and Indexing
11.1 Disk Organization
11.2 Heap Files
11.3 Sorted Files
11.4 Indices
11.5 Multilevel Indexing
11.6 Hash Indexing
11.7 Special-Purpose Indices
11.8 Tuning Issues:Choosing Indices for an Application
11.9 Bibliographic Notes
11.10 Exercises
12 Case Study:Completing the Student Registration System
12.1 The Design Document
12.2 Test Plan
12.3 Project Planning
12.4 Coding
12.5 Incremental Development
12.6 Design and Code for the Student Registration System
12.7 Bibliographic Notes
12.8 Exercises
13 The Basics of Query Processing
13.1 External Sorting
13.2 Computing Projection,Union,and Set Difference
13.3 Computing Selection
13.4 Computing Joins
13.5 Multi-Relational Joins
13.6 Computing Aggregate Functions
13.7 Tuning Issues:Impact on Physical Database Design
13.8 Bibliographic Notes
13.9 Exercises
14 An Overview of Query Optimization
14.1 Overview of Query Processing
14.2 Heuristic Optimaization Based on Algebraic Equivalences
14.3 Estimating the Cost of a Query Execution Plan
14.4 Estimating the Size of the Output
14.5 Choosing a Plan
14.6 Tuning Issues:Impact on Query Design
14.7 Bibliographic Notes
14.8 Exercises
15 An Overview of Transaction Processing
15.1 Isolation
15.2 Atomicity and Durability
15.3 Implementing Distributed Transactions
15.4 Bibliographic Notes
15.5 Exercises
PART Three Advanced Topics in Databases
16 Object Databases
16.1 Object Databases
16.2 Historical Developments
16.3 The Conceptual Object Data Model
16.4 The ODMG Standard
16.5 Ojbects in SQL:1999
16.6 Common Object Request Broker Architecture
16.7 Summary
16.8 Bibliographic Notes
16.9 Exercises
17 XML and Web Data
17.1 Semistructured Data
17.2 Overview of XML
17.3 XML Schema
17.4 XML Query Languages
17.5 Bibliographic Notes
17.6 Exercises
18 Distributed Databases
18.1 The Application Designer's View of the Database
18.2 Distributing Data among Different Databases
18.3 Query Planning Strategies
18.4 Bibliographic Notes
18.5 Exercises
19 OLAP and Data Mining
19.1 OLAP and Data Warehouses Old and New
19.2 A Multi-Dimensional Model for OLAP Applications
19.3 Aggregation
19.4 ROLAP and MOLAP
19.5 Implementation Issues
19.6 Data Mining
19.7 Populating a Data Warehouse
19.8 Bibliographic Notes
19.9 Exercises
PART Four Transaction Processing
20 ACID Properties of Transactions
20.1 Consistency
20.2 Atomicity
20.3 Durabiliyt
20.4 Isolation
20.5 The ACID Properties
20.6 Bibliographic Notes
20.7 Exercises
21 Models of Transactions
21.1 Flat Transactions
21.2 Providing Structure within a Transaction
21.3 Structuring an Application into Multiple Transactions
21.4 Bibliographic Notes
21.5 Exercises
22 Architecture of Transaction Processing Systems
22.1 Transaction Processing in a Centralized System
22.2 Transaction Processing in a Distributed System
22.3 Heterogeneous Systems and the TP Monitor
22.4 The TP Monitor:Communication and Global Atomicity
22.5 Transaction Processing on the Internet
22.6 Bibliographic Notes
22.7 Exercises
23 Implementing Isolation
23.1 Schedules and Their Equivalence
23.2 Recoverability,Cascaded Aborts,and Strictness
23.3 Models for Concurrency Control
23.4 A Strategy for Immediate-Update Pessimistic Concurrency Controls
23.5 Design of an Immediate-Update Pessimistic Concurrency Control
23.6 Objects and Semantic Commutativity*
23.7 Isolation in Structured Transaction Models
23.8 Other Concurrency Controls
23.9 Bibliographic Notes
23.10 Exercises
24 Isolation in Relational Databases
24.1 Locking
24.2 Locking and the SQL Isolation Levels
24.3 Granular Locking:Intention Locks and Index Locks
24.4 Improving System Performance
24.5 Multiversion Concurrency Controls
24.6 Bibliographic Notes
24.7 Exercises
25 Atomicity and Durability
25.1 Crash,Abort,and Media Failure
25.2 Immediate-Update Systems and Write-Ahead Logs
25.3 Recovery in Deferred-Update Systems
25.4 Recovery from Media Failure
25.5 Bibliographic Notes
25.6 Exercises
26 Implementing Distributed Transactions
26.1 Implementing the ACID Properties
26.2 Atomic Termination
26.3 Transfer of Coordination
26.4 Distributed Deadlock
26.5 Global Serialization
26.6 When Global Atomicity Cannot Be Guaranteed
26.7 Replicated Databases
26.8 Distributed Transactions in the Real World
26.9 Bibliographic Notes
26.10 Exercises
27 Security and Internet Commerce
27.1 Authentication,Authorization,and Encryption
27.2 Encryption
27.3 Digital Signatures
27.4 Key Distribution and Authentication
27.5 Authorization
27.6 Authenticated Remote Procedure Call
27.7 Internet Commerce
27.8 Bibliographic Notes
27.9 Exercises
Appendix System Issues
A.1 Basic System Issues
A.2 Multiprogrammed Operating Systems
A.3 Threads
A.4 Communication
References
Index
PART One Introduction
1 Overview of Databases and Transactions
1.1 What Are Databases and Transactions?
1.2 Features of Modern Database and Transaction Processing Systems
1.3 Major Players in the Implementation and Support of Database and Transaction Processing Systems
1.4 Decision Support Systems OLAP and OLTP
1.5 Exercises
2 A Closer Look
2.1 Case Study:A Student Registration System
2.2 Introduction to Relational Databases
2.3 What Makes a Program a Transaction?
2.4 Bibliographic Notes
2.5 Exercises
3 Case Study:Starting the Student Registration System
3.1 Software Engineering Methodology
3.2 Requirements Document
3.3 Requirements Analysis New Issues
3.4 Application Generators
3.5 GUIs and Ojbects
3.6 Events and Procedures
3.7 Accessing Databases and Executing Transactions
3.8 Specifying the Student Registration System
3.9 Specification Document
3.10 Bibliographic Notes
3.11 Exercises
PART Two Database Management
4 The Relational Data Model
4.1 What Is a Data Model?
4.2 The Relational Model
4.3 SQL Data Definition Sublanguage
4.4 Bibliographic Notes
4.5 Exercises
5 Database Design I:The Entity-Relationship Model
5.1 Conceptual Modeling with the E-R Approach
5.2 Entities and Entity Types
5.3 Relationships and Relationship Types
5.4 Advanced Features of the E-R Approach
5.5 A Brokerage Firm Example
5.6 Limitations of the E-R Approach
5.7 Case Study:A Design for the Student Registration System
5.8 Bibliographic Notes
5.9 Exercises
6 Query Languages I:Relational Algebra and SQL
6.1 Relational Algebra:Under the Hood of SQL
6.2 The Query Sublanguage of SQL
6.3 Modifying Relation Instances in SQL
6.4 Bibliographic Notes
6.5 Exercises
7 Query Languages II:Relational Calculus and Visual Query Languages
7.1 Tuple Relational Calculus
7.2 Understanding SQL through Tuple Relational Calculus
7.3 Domain Relational Calculus and Visual Query Languages
7.4 Visual Query Languages:QBE and PC Databases
7.5 The Relationship between Relational Algebra and the Calculi
7.6 Recursive Queries in SQL:1999
7.7 Bibliographic Notes
7.8 Exercises
8 Database Design II:Relational Normalization Theory
8.1 The Problem of Redundancy
8.2 Decompositions
8.3 Functional Dependencies
8.4 Properties of Functional Dependencies
8.5 Normal Forms
8.6 Properties of Decompositions
8.7 An Algorithm for BCNF Decomposition
8.8 Synthesis of 3NF Schemas
8.9 The Fourth Normal Form
8.10 Advanced 4NF Design
8.11 Summary of Normal Form Decomposition
8.12 Case Study:Schema Refinement for the Student Registration System
8.13 Tuning Issues:To Decompose or Not to Decompose?
8.14 Bibliographic Notes
8.15 Exercises
9 Triggers and Active Database
9.1 Semantic Issues in Trigger Handling
9.2 Triggers in SQL:1999
9.3 Avoiding a Chain Reaction
9.4 Bibliographic Notes
9.5 Exercises
10 SQL in the Real World
10.1 Executing SQL Statements within an Application Program
10.2 Embedded
10.3 More on Integrity Constraints
10.4 Dynamic SQL
10.5 JDBC and SQLJ
10.6 ODBC*
10.7 Comparison
10.8 Bibliographic Notes
10.9 Exercises
11 Physical Data Organization and Indexing
11.1 Disk Organization
11.2 Heap Files
11.3 Sorted Files
11.4 Indices
11.5 Multilevel Indexing
11.6 Hash Indexing
11.7 Special-Purpose Indices
11.8 Tuning Issues:Choosing Indices for an Application
11.9 Bibliographic Notes
11.10 Exercises
12 Case Study:Completing the Student Registration System
12.1 The Design Document
12.2 Test Plan
12.3 Project Planning
12.4 Coding
12.5 Incremental Development
12.6 Design and Code for the Student Registration System
12.7 Bibliographic Notes
12.8 Exercises
13 The Basics of Query Processing
13.1 External Sorting
13.2 Computing Projection,Union,and Set Difference
13.3 Computing Selection
13.4 Computing Joins
13.5 Multi-Relational Joins
13.6 Computing Aggregate Functions
13.7 Tuning Issues:Impact on Physical Database Design
13.8 Bibliographic Notes
13.9 Exercises
14 An Overview of Query Optimization
14.1 Overview of Query Processing
14.2 Heuristic Optimaization Based on Algebraic Equivalences
14.3 Estimating the Cost of a Query Execution Plan
14.4 Estimating the Size of the Output
14.5 Choosing a Plan
14.6 Tuning Issues:Impact on Query Design
14.7 Bibliographic Notes
14.8 Exercises
15 An Overview of Transaction Processing
15.1 Isolation
15.2 Atomicity and Durability
15.3 Implementing Distributed Transactions
15.4 Bibliographic Notes
15.5 Exercises
PART Three Advanced Topics in Databases
16 Object Databases
16.1 Object Databases
16.2 Historical Developments
16.3 The Conceptual Object Data Model
16.4 The ODMG Standard
16.5 Ojbects in SQL:1999
16.6 Common Object Request Broker Architecture
16.7 Summary
16.8 Bibliographic Notes
16.9 Exercises
17 XML and Web Data
17.1 Semistructured Data
17.2 Overview of XML
17.3 XML Schema
17.4 XML Query Languages
17.5 Bibliographic Notes
17.6 Exercises
18 Distributed Databases
18.1 The Application Designer's View of the Database
18.2 Distributing Data among Different Databases
18.3 Query Planning Strategies
18.4 Bibliographic Notes
18.5 Exercises
19 OLAP and Data Mining
19.1 OLAP and Data Warehouses Old and New
19.2 A Multi-Dimensional Model for OLAP Applications
19.3 Aggregation
19.4 ROLAP and MOLAP
19.5 Implementation Issues
19.6 Data Mining
19.7 Populating a Data Warehouse
19.8 Bibliographic Notes
19.9 Exercises
PART Four Transaction Processing
20 ACID Properties of Transactions
20.1 Consistency
20.2 Atomicity
20.3 Durabiliyt
20.4 Isolation
20.5 The ACID Properties
20.6 Bibliographic Notes
20.7 Exercises
21 Models of Transactions
21.1 Flat Transactions
21.2 Providing Structure within a Transaction
21.3 Structuring an Application into Multiple Transactions
21.4 Bibliographic Notes
21.5 Exercises
22 Architecture of Transaction Processing Systems
22.1 Transaction Processing in a Centralized System
22.2 Transaction Processing in a Distributed System
22.3 Heterogeneous Systems and the TP Monitor
22.4 The TP Monitor:Communication and Global Atomicity
22.5 Transaction Processing on the Internet
22.6 Bibliographic Notes
22.7 Exercises
23 Implementing Isolation
23.1 Schedules and Their Equivalence
23.2 Recoverability,Cascaded Aborts,and Strictness
23.3 Models for Concurrency Control
23.4 A Strategy for Immediate-Update Pessimistic Concurrency Controls
23.5 Design of an Immediate-Update Pessimistic Concurrency Control
23.6 Objects and Semantic Commutativity*
23.7 Isolation in Structured Transaction Models
23.8 Other Concurrency Controls
23.9 Bibliographic Notes
23.10 Exercises
24 Isolation in Relational Databases
24.1 Locking
24.2 Locking and the SQL Isolation Levels
24.3 Granular Locking:Intention Locks and Index Locks
24.4 Improving System Performance
24.5 Multiversion Concurrency Controls
24.6 Bibliographic Notes
24.7 Exercises
25 Atomicity and Durability
25.1 Crash,Abort,and Media Failure
25.2 Immediate-Update Systems and Write-Ahead Logs
25.3 Recovery in Deferred-Update Systems
25.4 Recovery from Media Failure
25.5 Bibliographic Notes
25.6 Exercises
26 Implementing Distributed Transactions
26.1 Implementing the ACID Properties
26.2 Atomic Termination
26.3 Transfer of Coordination
26.4 Distributed Deadlock
26.5 Global Serialization
26.6 When Global Atomicity Cannot Be Guaranteed
26.7 Replicated Databases
26.8 Distributed Transactions in the Real World
26.9 Bibliographic Notes
26.10 Exercises
27 Security and Internet Commerce
27.1 Authentication,Authorization,and Encryption
27.2 Encryption
27.3 Digital Signatures
27.4 Key Distribution and Authentication
27.5 Authorization
27.6 Authenticated Remote Procedure Call
27.7 Internet Commerce
27.8 Bibliographic Notes
27.9 Exercises
Appendix System Issues
A.1 Basic System Issues
A.2 Multiprogrammed Operating Systems
A.3 Threads
A.4 Communication
References
Index
猜您喜欢