出版時間:2012-12 出版社:機械工業(yè)出版社 作者:(美)西爾伯莎 等著,楊冬青 改編 頁數(shù):760
Tag標簽:無
前言
數(shù)據(jù)庫系統(tǒng)是對數(shù)據(jù)進行存儲、管理、處理和維護的軟件系統(tǒng),是現(xiàn)代計算環(huán)境中的一個核心成分。隨著計算機硬件、軟件技術的飛速發(fā)展和計算機系統(tǒng)在各行各業(yè)的廣泛應用,數(shù)據(jù)庫技術的發(fā)展尤其迅速,引人注目。有關數(shù)據(jù)庫系統(tǒng)的理論和技術是計算機科學技術教育中必不可少的部分?!稊?shù)據(jù)庫系統(tǒng)概念》是一本經(jīng)典的、備受贊揚的數(shù)據(jù)庫系統(tǒng)教科書,其內容由淺入深,既包含數(shù)據(jù)庫系統(tǒng)的基本概念,又反映數(shù)據(jù)庫技術新進展。本書被國際上許多著名大學采用,并多次再版?! ∥覀兿群髮⒈緯牡?版、第4版、第5版和第6版譯成中文,由機械工業(yè)出版社分別于2000年、2003年、2006年和2012年出版發(fā)行。國內許多大學采用《數(shù)據(jù)庫系統(tǒng)概念》作為本科生和研究生數(shù)據(jù)庫課程的教材或主要教學參考書,收到了良好的效果。 我們基于《數(shù)據(jù)庫系統(tǒng)概念》第5版進行了改編,保留其中的基本內容,壓縮或刪除了一些高級內容,形成了該書的本科教學版,其目的是使它更適合本科生的數(shù)據(jù)庫課程使用。該本科教學版由機械工業(yè)出版社于2008年出版發(fā)行,被國內許多高校采用作為本科生數(shù)據(jù)庫課程的教材或主要教學參考書。 現(xiàn)在我們又基于《數(shù)據(jù)庫系統(tǒng)概念》第6版進行了改編工作,希望它能夠成為一本效果更好、更實用的本科生數(shù)據(jù)庫課程的教材?! ?/pre>內容概要
《數(shù)據(jù)庫系統(tǒng)概念》是數(shù)據(jù)庫系統(tǒng)方面的經(jīng)典教材之一,其內容由淺入深,既包含數(shù)據(jù)庫系統(tǒng)基本概念,又反映數(shù)據(jù)庫技術新進展。它被國際上許多著名大學所采用,包括斯坦福大學、耶魯大學、得克薩斯大學、康奈爾大學、伊利諾伊大學等。我國也有多所大學采用《數(shù)據(jù)庫系統(tǒng)概念(英文精編版.第6版)》作為本科生和研究生數(shù)據(jù)庫課程的教材和主要教學參考書,收到了良好的效果。本書基于該書第6版進行改編,保留其中的基本內容,壓縮或刪除了一些高級內容,更加適合作為國內高校計算機及相關專業(yè)本科生數(shù)據(jù)庫課程教材。作者簡介
Abraham Silberchatz于紐約州立大學石溪分校獲得博士學位,現(xiàn)為耶魯大學計算機科學Sidney
J.Weinberg教授,計算機科學系主任,曾任貝爾實驗室信息科學研究中心副主任、、
Henry
F.Korth于普林斯頓大學獲得博士學位,現(xiàn)為利哈伊大學計算機科學與工程系Weiserman教授,曾任貝爾實驗室數(shù)據(jù)庫原理研究中心主任。他是ACM
Fellow和IEEE Fellow,是VLDB 10年貢獻獎的獲得者。
S.Sudarshan于威斯康星大學麥迪遜分校獲得博士學位,現(xiàn)為印度理工學院計算機科學與工程系教授,曾為貝爾實驗室數(shù)據(jù)庫研究組技術人員。
點擊查看更多內容書籍目錄
chapter 1 introduction
1.1 database-system applications
1.2 purpose of database systems
1.3 view of data
1.4 database languages
1.5 relational databases
1.6 database design
1.7 data storage and querying
1.8 transaction management
1.9 database architecture
1.10 data mining and information retrieval
1.11 specialty databases
1.12 database users and administrators
1.13 history of database systems
1.14 summary
review terms
practice exercises
exercises
tools
bibliographical notes
part one relational databases
chapter 2 introduction to the relational model
2.1 structure of relational databases
2.2 database schema
2.3 keys
2.4 schema diagrams
2.5 relational query languages
2.6 relational operations
2.7 summary
review terms
practice exercises
exercises
bibhographical notes
chapter 3 introduction to sql
3.1 overview of the sql query language
3.2 sql data definition
3.3 basic structure of sql queries
3.4 additional basic operations
3.5 set operations
3.6 null values
3.7 aggregate functions
3.8 nested subqueries
3.9 modification of the database
3.10 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 4 intermediate sql
4.1 join expressions
4.2 views
4.3 transactions
4.4 integrity constraints
4.5 sql data types and schemas
4.6 authorization
4.7 summary
review terms
practice exercises
exercises
bibliographical notes
chapter 5 advanced sql
5.1 accessing sql from a programming language
5.2 functions and procedures
5.3 triggers
5.4 recursive queries**
5.5 advanced aggregation features**
5.60lap**
5.7 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 6 formal relational query languages
6.1 the relational algebra
6.2 the tuple relational calculus
6.3 the domain relational calculus
6.4 summary
review terms
practice exercises
exercises
bibliographical notes
part two database design
chapter 7 database design and the e-r model
7.1 overview of the design process
7.2 the entity-relationship model
7.3 constraints
7.4 removing redundant attributes in entity sets
7.5 entity-relationship diagrams
7.6 reduction to relational schemas
7.7 entity-relationship design issues
7.8 extended e-r features
7.9 alternative notations for modeling data
7.10 other aspects of database design
7.11 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 8 relational database design
8.1 features of good relational designs
8.2 atomic domains and first normal form
8.3 decomposition using functional dependencies
8.4 functional-dependency theory
8.5 algorithms for decomposition
8.6 decomposition using multivalued dependencies
8.7 more normal forms
8.8 database-design process
8.9 modeling temporal data
8.10 summary
review terms
practice exercises
exercises
bibliographical notes
chapter 9 application design and development
9.1 application programs and user interfaces
9.2 web fundamentals
9.3 servlets and jsp
9.4 application architectures
9.5 rapid application development
9.6 application performance
9.7 application security
9.8 encryption and its applications
9.9 summary
review terms
practice exercises
exercises
project suggestions
tools
bibliographical notes
part three data storage,querying,and transaction management
chapter 10 data storage and data access
10.1 overview of physical storage media
10.2 magnetic disk and flash storage
10.3 organization of files and records
10.4 data-dictionary storage
10.5 database buffer
10.6 basic concepts of index
10.7 ordered indices
10.8 b+-tree index files
10.9 hash file organization and hash index
10.10 index definition in sql
10.11 summary
review terms
practice exercises
exercises
bibliographical notes
chapter 11 query processing and query optimization
11.1 overview
11.2 measures of query cost
11.3 implementation of relational algebra operation
11.4 evaluation of expressions
11.5 query optimization
11.6 summary
review terms
practice exercises
exercises
bibliographical notes
chapter 12 transaction management
12.1 transaction concept
12.2 transaction atomicity and durability
12.3 transaction isolation
12.4 serializability
12.5 recoverability
12.6 concurrency control
12.7 recovery system
12.8 summary
review terms
practice exercises
exercises
bibliographical notes
part four advanced topics
chapter 13 data warehousing and mining
13.1 decision-support systems
13.2 data warehousing
13.3 data mining
13.4 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 14 object-based databases
14.1 overview
14.2 complex data types
14.3 structured types and inheritance in sql
14.4 table inheritance
14.5 array and multiset types in sql
14.6 object-identity and reference types in sql
14.7 implementing o-r features
14.8 persistent programming languages
14.9 object-relational mapping
14.10 object-oriented versus object-relational
14.11 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 15 xml
15.1 motivation
15.2 structure of xml data
15.3 xml document schema
15.4 querying and transformation
15.5 application program interfaces to xml
15.6 storage of xml data
15.7 xml applications
15.8 summary
review terms
practice exercises
exercises
tools
bibliographical notes
chapter 16 advanced application development
16.1 performance tuning
16.2 performance benchmarks
16.3 other issues in application development
16.4 standardization
16.5 summary
review terms
practice exercises
exercises
bibliographical notes
bibliography章節(jié)摘錄
Atomicity: Suppose that, just before the execution of transaction Ti, the values of accounts A and B are $1000 and $2000, respectively. Now suppose that, during the execution of transaction Ti, a failure occurs that prevents Ti from completing its execution successfully. Further, suppose that the failure happened after the write(A) operation but before the write(B) operation. In this case, the values of accounts A and B reflected in the database are $950 and $2000. The system destroyed $50 as a result of this failure. In particular, we note that the sum A + B is no longer preserved. Thus, because of the failure, the state of the system no longer reflects a real state of the world that the database is supposed to capture. We term such a state an inconsistent state. We must ensure that such inconsistencies are not visible in a database system. Note, however, that the system must at some point be in an inconsistent state. Even if transaction Ti is executed to completion, there exists a point at which the value of account A is $950 and the value of account B is $2000, which is clearly an inconsistent state. This state, however, is eventually replaced by the consistent state where the value of account A is $950, and the value of account B is $2050.Thus, if the transaction never started or was guaranteed to complete, such an inconsistent state would not be visible except during the execution of the transaction. That is the reason for the atomicity requirement: If the atomicity property is present, all actions of the transaction are reflected in the database, or none are. The basic idea behind ensuring atomicity is this: The database system keeps track (on disk) of the old values of any data on which a transaction performs a write. This information is written to a file called the log. If the transaction does not complete its execution, the database system restores the old values from the log to make it appear as though the transaction never executed. Ensuring atomicity is the responsibility of the database system; specifically, it is handled by a component of the database called the recovery system, which we describe in detail in Section 12.7. Durability: Once the execution of the transaction completes successfully, and the user who initiated the transaction has been notified that the transfer of funds has taken place, it must be the case that no system failure can result in a loss of data corresponding to this transfer of funds. The durability property guarantees that, once a transaction completes successfully, all the updates that it carried out on the database persist, even if there is a system failure after the transaction completes execution. We assume for now that a failure of the computer system may result in loss of data in main memory, but data written to disk are never lost. We can guarantee durability by ensuring that either: 1. The updates carried out by the transaction have been written to disk before the transaction completes. 2. Information about the updates carried out by the transaction is written to disk, and such information is sufficient to enable the database to reconstruct the updates when the database system is restarted after the failure. ……編輯推薦
(美)Abraham Silberschatz、Henry F. Korth、(印)S. Sudarshan編著的《數(shù)據(jù)庫系統(tǒng)概念》前9章是最基本的內容,講述數(shù)據(jù)庫系統(tǒng)的基本概念,包括對數(shù)據(jù)庫系統(tǒng)的性質和目標的綜述,對關系數(shù)據(jù)模型和關系語言的介紹,對數(shù)據(jù)庫設計過程、關系數(shù)據(jù)庫理論以及數(shù)據(jù)庫應用設計和開發(fā)的詳細討論。第10至12章介紹了數(shù)據(jù)庫系統(tǒng)實現(xiàn)的核心技術,包括數(shù)據(jù)存儲管理、查詢處理和事務管理。第13至16章是高級話題,介紹了數(shù)據(jù)倉庫和數(shù)據(jù)挖掘,新型的數(shù)據(jù)庫系統(tǒng)——基于對象的數(shù)據(jù)庫和XML數(shù)據(jù)庫t以及與高級應用開發(fā)相關的性能調整、性能基準程序、標準化等內容。圖書封面
圖書標簽Tags
無評論、評分、閱讀與下載
數(shù)據(jù)庫系統(tǒng)概念 PDF格式下載