数据库管理系统:第2版

数据库管理系统:第2版
作 者: Raghu Ramakrishnan Johannes Gehrke 周立柱 周立柱
出版社: 清华大学出版社
丛编项: 世界著名计算机教材精选
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 数据库存储与管理
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《数据库管理系统:第2版》作者简介

内容简介

RaghuRamakrishnan,JohannesGehrke著周立柱张勇蒋旭东等译本书是一本全面论述数据库管理系统知识的优秀教材,从基本原理、关系查询、数据库存储和索引、查询求解、数据库设计、事物管理、新课题等七个方面对数据库的设计与使用、数据库管理系统基本原理与实现技术,以及数据库研究的新进展做了详细论述。每章后都附有练习和文献注解。本书主要特征是:SQL的全部论述均基于SQL-92和SQL:1999标准;数据库设计包括概念设计、规范化、物理设计和调整;全面论述文件组织和索引;深入探讨诸如数据挖掘、决策支持(包括数据仓库和OLAP)、空间数据管理以及因特网数据库(包括XML和搜索引擎)等新课题;强调广泛使用的概念,提供大量例证及每章后详细的复习要点。本书可作为高等院校计算机专业本科生、研究生及教师的教材及教学参考,对于从事数据库系统研究以及学习数据库系统技术的人都是极有帮助的。

图书目录

译者序

前言

第一部分基本原理

第1章 数据库系统简介

1. l 概述

1. 2 历史回顾

1. 3 文件系统和数据库管理系统

1. 4 数据库管理系统的优点

1. 5 数据库管理系统中数据的描述和存储

1. 5. l 关系模型

1. 5. 2 数据库管理系统的抽象级别

1. 5. 3 数据独立性

1. 6 数据库管理系统中的查询

1. 7 事务管理

1. 7. 1 事务的并发执行

1. 7. 2 未完成的事务和系统崩溃

1. 7. 3 要点

1. 8 数据库管理系统的结构

1. 9 与数据库打交道的人

1. 10 复习要点

练习

项目练习

文献注解

第2章 实体一联系模型

2. 1 数据库设计纵览

2. 1. l 其他步骤

2. 2 实体. 属性和实体集

2. 3 联系和联系集

2. 4 ER模型的其他特征

2. 4. 1 码约束

2. 4. 2 参与约束

2. 4. 3 弱实体

2. 4. 4 类层次

2. 4. 5 聚合

2. 5 用ER模型进行概念数据库设计

2. 5. l 实体与属性

2. 5. 2 实体与联系

2. 5. 3 二元与三元联系

2. 5. 4 聚合与三元联系

2. 6 大型企业的概念数据库设计

2. 7 复习要点

练习

文献注解

第3章 关系模型

3. l 关系模型简介

3. l. l 使用SQL-92创建和修改关系

3. 2 关系上的完整性约束

3. 2. l 码约束

3. 2. 2 外码约束

3. 2. 3 一般约束

3. 3 完整性约束的强制执行

3. 4 查询关系数据

3. 5 逻辑数据库设计:从ER模型到关系模型

3. 5. 1 从实体集合到关系表

3. 5. 2 从联系集(不包括约束)到关系表

3. 5. 3 转换带有码约束的联系集

3. 5. 4 转换带有参与约束的联系集

3. 5. 5 转换弱实体集合

3. 5. 6 转换类层次

3. 5. 7 转换带聚合的ER图

3. 5. 8 ER模型到关系模型:更多的例子

3. 6 视图简介

3. 6. l 视图. 数据独立性和安全

3. 6. 2 视图的更新

3. 7 删除/修改关系表和视图

3. 8 复习要点

练习

项目练习

文献注解

第二部分 关系查询

第4章 关系代数和演算

4. l 预备知识

4. 2 关系代数

4. 2. l 选择和投影

4. 2. 2 集合操作

4. 2. 3 改名

4. 2. 4 连接

4. 2. 5 除

4. 2. 6 关系代数查询的其他实例

4. 3 关系演算

4. 3. l 元组关系演算

4. 3. 2 域关系演算

4. 4 代数与演算的表达能力

4. 5 复习要点

练习

文献注解

第5章 SQL:查询. 编程与触发程序

5. l 用例说明

5. 2 基本SQL查询的形式

5. 2. l 基本SQL查询的实例

5. 2. 2 在SELECT命令中的表达式和字符串

5. 3 UNION. INTERSECT和 EXCEPT

5. 4 嵌套查询

5. 4. l 嵌套查询简介

5. 4. 2 相关嵌套查询

5. 4. 3 集合比较操作

5. 4. 4 有关嵌套查询的其他例子

5. 5 聚合操作符

5. 5. 1 GROUP BY和 HAVING子句

5. 5. 2 聚合查询的其他例子

5. 6 空值

5. 6. l 使用空值的比较

5. 6. 2 逻辑连接运算 AND. OR和 NOT

5. 6. 3 SQL构造符的作用

5. 6. 4 外连接

5. 6. 5 禁止使用空值

5. 7 嵌入式SQL

5. 7. 1 声明变量和异常

5. 7. 2 嵌入SQL语句

5. 8 游标

5. 8. l 基本的游标定义和用法

5. 8. 2 游标的性质

5. 9 动态SQL

5. 10 ODBC和JDBC

5. 10. 1 体系结构

5. 10. 2 使用JDBC的例子

5. 11 SQL-92中的复杂完整性约束

5. 11. 1 单表上的约束

5. 11. 2 域约束

5. 11. 3 断言:几个表上的IC

5. 12 触发程序和主动数据库

5. 12. 1 SQL中触发程序的例子

5. 13 设计主动数据库

5. 13. l 为什么触发程序难以理解

5. 13. 2 约束和触发程序

5. 13. 3 触发程序的其他用途

5. 14 复习要点

练习

项目练习

文献注解

第6章 示例查询--QBE

6. l 简介

6. 2 基本QBE查询

6. 2. l 其他的特点:复制. 排序的答案

6. 3 多个关系上的查询

6. 4 在"关系名"列上的否定

6. 5 聚合

6. 6 条件框

6. 6. 1 And/Or查询

6. 7 无名列

6. 8 更新

6. 8. l 更新命令上的限制

6. 9 除和关系完整性

6. 10 复习要点

练习

项目练习

文献注解

第三部分 数据存储和索引

第7章 存储数据:磁盘和文件

7. 1 存储层次

7. 1. l 磁盘

7. 1. 2 磁盘结构对性能的影响

7. 2 RAID

7. 2. l 数据划分

7. 2. 2 冗余

7. 2. 3 冗余的层次

7. 2. 4 RAID级别的选择

7. 3 磁盘空间管理

7. 3. l 跟踪空闲块

7. 3. 2 使用操作系统中的文件系统来管理磁盘空间

7. 4 缓冲区管理程序

7. 4. l 缓冲区替换策略

7. 4. 2 数据库管理系统和操作系统的缓冲区管理

7. 5 文件和索引

7. 5. 1 堆文件

7. 5. 2 索引简介

7. 6 页格式

7. 6. l 定长记录

7. 6. 2 变长记录

7. 7 记录格式

7. 7. l 定长记录

7. 7. 2 变长记录

7. 8 复习要点

练习

项目练习

文献注解

第8章 文件组织和索引

8. l 代价模型

8. 2 比较三种文件组织方式

8. 2. l 堆文件

8. 2. 2 排序文件

8. 2. 3 哈希文件

8. 2. 4 选择文件的组织方式

8. 3 索引概述

8. 3. l 索引中数据目录项的不同选择

8. 4 索引的性质

8. 4. l 聚集索引和非聚集索引

8. 4. 2 稠密索引和稀疏索引

8. 4. 3 主索引和二级索引

8. 4. 4 使用组合搜索码的索引

8. 5 SQL-92中的索引说明

8. 6 复习要点

练习

项目练习

文献注解

第9章 树结构索引

9. 1 索引顺序存取方法

9. 2 B十树:一种动态索引结构

9. 3 节点的格式

9. 4 搜索

9. 5 插入

9. 6 删除

9. 7 重复

9. 8 实际的B十树

9. 8. l 码压缩

9. 8. 2 B十树中的块载人

9. 8. 3 秩的概念

9. 8. 4 在rid上的插人和删除的影响

9. 9 复习要点

练习

项目练习

文献注解

第10章 基于哈希的索引

10. 1 静态哈希

10. l. l 记号和约定

10. 2 可扩展哈希

10. 3 线性哈希

10. 4 可扩展哈希和线性哈希

10. 5 复习要点

练习

项目练习

文献注解

第四部分 查询求解

第11章 外排序

11. l 简单的两路归并排序算法

11. 2 外归并排序

11. 2. 1 运行次数的最小化

11. 3 最小化I/O代价和I/O的次数

11. 3. 1 块读写

11. 3. 2 双缓冲

11. 4 使用B十树来排序

11. 4. 1 聚集索引

11. 4. 2 非聚集索引

11. 5 复习要点

练习

项目练习

文献注解

第12章 关系操作求解

12. l 查询处理介绍

12. 1. 1 存取路径

12. 1. 2 预备知识:例子和代价计算

12. 2 选择操作

12. 2. 1 没有索引的非排序数据

12. 2. 2 没有索引的排序数据

12. 2. 3 B十树索引

12. 2. 4 哈希排序, 等价选择

12. 3 一般的选择条件

12. 3. 1 CNF和索引匹配

12. 3. 2 求解没有析取的选择

12. 3. 3 带有析取的选择

12. 4 投影操作

12. 4. 1 基于排序的投影

12. 4. 2 基于哈希函数的投影

12. 4. 3 用于投影的排序和哈希

12. 4. 4 用于投影的索引的使用

12. 5 连接操作

12. 5. l 嵌套循环连接算法

12. 5. 2 排序归并连接算法

12. 5. 3 哈希连接

12. 5. 4 一般的连接条件

12. 6 集合操作

12. 6. 1 用于并和差的排序

12. 6. 2 用于并和差的哈希

12. 7 聚合操作

12. 7. l 使用索引实现聚合

12. 8 缓冲的影响

12. 9 复习要点

练习

项目练习

文献注解

第13章 查询优化简介

13. l 关系查询优化概述

13. 1. l 查询求解计划

13. 1. 2 流水线求解

13. 1. 3 操作符和访问方法的迭代接口

13. 1. 4 System R优化器

13. 2 在关系DBMS中的系统目录

13. 2. 1 存储在系统目录中的信息

13. 3 可选计划:研究这一问题动机的实例

13. 3. 1 下推选择

13. 3. 2 使用索引

13. 4 复习要点

练习

第14章 典型的关系查询优化器

14. l 将SQL查询转换成关系代数表达式

14. 2 估算执行计划的开销

14. 2. 1 估计结果的大小

14. 3 关系代数的等价

14. 3. 1 选择

14. 3. 2 投影

14. 3. 3 叉积和连接

14. 3. 4 选择. 投影和连接

14. 3. 5 其他的等价

14. 4 列举可选的执行计划

14. 4. l 单关系查询

14. 4. 2 多关系查询

14. 5 嵌套子查询

14. 6 查询优化的其他方法

14. 7 复习要点

练习

项目练习

文献注解

第五部分 数据库设计

第15章 模式求精和范式

15. l 模式求精简介

15. 1. l 冗余导致的问题

15. 1. 2 模式分解

15. 1. 3 模式分解中的一些问题

15. 2 函数依赖

15. 3 模式求精的动机

15. 3. l 实体集上的约束

15. 3. 2 联系集上的约束

15. 3. 3 实体属性的确定

15. 3. 4 确定实体集

15. 4 函数依赖推理

15. 4. l 函数依赖集的闭包

15. 4. 2 属性闭包

15. 5 范式

15. 5. 1 Boyce-Codd范式

15. 5. 2 第三范式

15. 6 分解

15. 6. l 无损连接分解

15. 6. 2 依赖保持分解

15. 7 规范化

15. 7. l 分解为BCNF

15. 7. 2 分解为3 NF

15. 8 其他类型的依赖

15. 8. l 多值依赖

15. 8. 2 第四范式

15. 8. 3 连接依赖

15. 8. 4 第五范式

15. 8. 5 包含依赖

15. 9 复习要点

练习

项目练习

文献注解

第16章 物理数据库设计和调整

16. l 物理数据库设计简介

16. 1. l 数据库负载

16. 1. 2 物理设计和调整的决策

16. 1. 3 数据库调整的必要性

16. 2 索引选择的指导方针

16. 3 索引选择的基本例子

16. 4 聚集和索引

16. 4. l 两个关系的协同聚集

16. 5 在多属性搜索码上的索引

16. 6 能够实现只读索引计划的索引

16. 7 数据库调整简介

16. 7. l 调整索引

16. 7. 2 调整概念模式

16. 7. 3 调整查询和视图

16. 8 调整概念模式时的选择

16. 8. l 设置一个弱范式

16. 8. 2 分解

16. 8. 3 分解的选择

16. 8. 4 垂直分解

16. 8. 5 水平分解

16. 9 调整查询和视图中的选择

16. 10 并发控制的影响

16. 11 DBMS基准测试

16. 11. 1 著名的DBMS基准测试

16. 11. 2 基准测试的使用

16. 12 复习要点

练习

项目练习

文献注解

第17章 安全

17. l 数据库安全简介

17. 2 存取控制

17. 3 任意存取控制

17. 3. l 授予和回收视图的访问控制和完整性约束

17. 4 强制性存取控制

17. 4. l 多级关系和多实例化

17. 4. 2 转换通道, DoD安全级别

17. 5 有关安全的其他问题

17. 5. l 数据库管理员的任务

17. 5. 2 统计数据库的安全

17. 5. 3 加密

17. 6 复习要点

练习

项目练习

文献注解

第六部分 事务管理

第18章 事务管理简介

18. l 事务概念

18. 1. 1 一致性和隔离性

18. 1. 2 原子性和持久性

18. 2 事务和调度

18. 3 事务的并发执行

18. 3. l 并发执行的动机

18. 3. 2 可串行化

18. 3. 3 交叉执行带来的异常

18. 3. 4 包括中止事务的调度

18. 4 基于加锁的并发控制

18. 4. l 严格的两阶段加锁

18. 5 崩溃恢复简介

18. 5. 1 偷帧和强制写页

18. 5. 2 正常执行时与恢复相关的执行步骤

18. 5. 3 ARIES简介

18. 6 复习要点

练习

文献注解

第19章 并发控制

19. l 回顾基于加锁的并发控制方法

19. 1. 1 2PL. 可串行性和可恢复性

19. 1. 2 观测可串行化

19. 2 加锁管理

19. 2. 1 实现加锁和解锁请求

19. 2. 2 死锁

19. 2. 3 基于加锁的并发控制的性能

19. 3 特殊的加锁技术

19. 3. 1 动态数据库和幻影问题

19. 3. 2 B十树的并发控制

19. 3. 3 多粒度锁

19. 4 SQL-92对事务的支持

19. 4. 1 事务特性

19. 4. 2 事务和约束

19. 5 不加锁的并发控制

19. 5. l 乐观的并发控制

19. 5. 2 基于时间戳的并发控制

19. 5. 3 多版本并发控制

19. 6 复习要点

练习

文献注解

第20章 崩溃恢复

20. 1 ARIES算法简介

20. 1. 1 日志

20. 1. 2 其他和恢复相关的数据结构

20. 1. 3 日志写优先的协议

20. 1. 4 检查点

20. 2 从系统崩溃中恢复

20. 2. 1 分析阶段

20. 2. 2 重做阶段

20. 2. 3 取消阶段

20. 3 介质恢复

20. 4 其他算法以及与并发控制的交互作用

20. 5 复习要点

练习

文献注解

第七部分 新课题

第21章 并行和分布式数据库

21. l 并行数据库系统的可用结构

21. 2 并行查询处理

21. 2. 1 数据划分

21. 2. 2 并行化顺序数据操作处理程序

21. 3 数据操作的并行化

21. 3. 1 批量载人和扫描

21. 3. 2 排序

21. 3. 3 连接

21. 4 并行查询优化

21. 5 分布式数据库简介

21. 5. 1 分布式数据库系统的类型

21. 6 分布式DBMS的体系结构

21. 6. 1 客户/服务器系统

21. 6. 2 协同服务器系统

21. 6. 3 中间件系统

21. 7 分布式DBMS的数据存储

21. 7. l 划分

21. 7. 2 复制

21. 8 分布目录管理

21. 8. 1 命名对象

21. 8. 2 目录结构

21. 8. 3 分布数据的独立性

21. 9 分布式查询处理

21. 9. 1 分布式DBMS中无连接的查询

21. 9. 2 分布式DBMS中的连接操作

21. 9. 3 基于代价的查询优化

21. 10 分布数据的更新

21. 10. 1 同步复制

21. 10. 2 异步复制

21. 11 分布式事务处理简介

21. 12 分布式并发控制

21. 12. l 分布式死锁

21. 13 分布式事务恢复

21. 13. 1 事务正常执行和提交协议

21. 13. 2 发生故障后进行恢复

21. 13. 3 重新讨论两阶段提交

21. 13. 4 三阶段提交

21. 14 复习要点

练习

文献注解

第22章 因特网数据库

22. l 万维网

22. 1. 1 HTML简介

22. 1. 2 数据库和万维网

22. 2 体系结构

22. 2. l 应用服务器和服务器端Java

22. 3 HTML以外的其他技术

22. 3. 1 XML简介

22. 3. 2 XML DTD

22. 3. 3 特定领域的DTD

22. 3. 4 XML-QL:查询 XML数据

22. 3. 5 半结构化数据模型

22. 3. 6 半结构化数据的实现问题

22. 4 用于文本搜索的索引

22. 4. l 倒排文件

22. 4. 2 签名文件

22. 5 万维网上的分级关键字搜索

22. 5. 1 万维网页分级算法

22. 6 复习要点

练习

文献注解

第23章 决策支持

23. l 决策支持简介

23. 2 数据仓库

23. 2. l 创建和管理数据仓库

23. 3 OLAP

23. 3. l 多维数据模型

23. 3. 2 OLAP查询

23. 3. 3 面向OLAP的数据库设计

23. 4 OLAP实现技术

23. 4. l 位图索引

23. 4. 2 连接索引

23. 4. 3 文件组织

23. 4. 4 其他OLAP实现问题

23. 5 视图和决策支持

23. 5. 1 视图. OLAP和数据仓库

23. 5. 2 查询的修改

23. 5. 3 视图实物化和按需要进行计算

23. 5. 4 视图实物化的问题

23. 6 快速得到查询结果

23. 6. 1 前N项查询

23. 6. 2 联机聚集

23. 7 复习要点

练习

文献注解

第24章 数据挖掘

24. l 数据挖掘简介

24. 2 关联计数

24. 2. l 频繁项集

24. 2. 2 冰山式查询

24. 3 规则挖掘

24. 3. 1 关联规则

24. 3. 2 找出关联规则的算法

24. 3. 3 关联规则和ISA层次

24. 3. 4 通用化关联规则

24. 3. 5 顺序模式

24. 3. 6 使用关联规则进行预测

24. 3. 7 贝叶斯网络

24. 3. 8 分类和回归规则

24. 4 树结构规则

24. 4. l 决策树

24. 4. 2 建立决策树的算法

24. 5 聚类

24. 5. l 聚类算法

24. 6 在序列上的相似搜索

24. 6. 1 找出相似序列的算法

24. 7 其他的数据挖掘任务

24. 8 复习要点

练习

文献注解

第25章 对象数据库系统

25. 1 说明研究动因的实例

25. 1. 1 新的数据类型

25. 1. 2 操纵新类型数据

25. 2 用户定义的抽象数据类型

25. 2. 1 ADT方法的定义

25. 3 构造类型

25. 3. 1 构造类型的数据操纵

25. 4 对象. 对象标识符和引用类型

25. 4. 1 相等的概念

25. 4. 2 引用类型的解除

25. 5 继承

25. 5. l 定义带有继承的类型

25. 5. 2 方法联编

25. 5. 3 群体层次. 类型区间和查询

25. 6 ORDBMS的数据库设计

25. 6. l 构造类型和ADT

25. 6. 2 对象标识符

25. 6. 3 扩展 ER模型

25. 6. 4 使用嵌套群体

25. 7 实现ORDBMS的新挑战

25. 7. 1 存储和存取方法

25. 7. 2 查询处理

25. 7. 3 查询优化

25. 8 OODBMS

25. 8. 1 ODMG数据模型和ODL

25. 8. 2 OQL

25. 9 RDBMS与OODBMS和ORDBMS的比较

25. 9. 1 RDBMS和ORDBMS

25. 9. 2 OODBMS和ORDBMS:相似点

25. 9. 3 OODBMS和ORDBMS:不同点

25. 10 复习要点

练习

文献注解

第26章 空间数据管理

26. l 空间数据和查询类型

26. 2 涉及空间数据的应用

26. 3 空间索引简介

26. 3. l 已提出的索引结构概述

26. 4 基于空间填充曲线的索引

26. 4. l 区域四叉树和Z一排序区域数据

26. 4. 2 使用Z一排序的空间查询

26. 5 网格文件

26. 5. l 使用网格文件来处理区域

26. 6 R树:点和区域数据

26. 6. 1 查询

26. 6. 2 插入和删除操作

26. 6. 3 并发控制

26. 6. 4 通用化搜索树

26. 7 高维索引问题

26. 8 复习要点

练习

文献注解

第27章 演绎数据库

27. l 递归查询简介

27. 1. 1 Datalog

27. 2 理论基础

27. 2. l 最小模型语义

27. 2. 2 安全datalog程序

27. 2. 3 不动点操作符

27. 2. 4 最小模型. 最小不动点

27. 3 带有否定的递归查询

27. 3. l 范围限制和否定

27. 3. 2 分层

27. 3. 3 聚合操作

27. 4 递归查询的有效求解

27. 4. l 无重复推理的不动点求解

27. 4. 2 下移选择操作来避免不相关的推理

27. 5 复习要点

练习

文献注解

第28章 其他专题

28. l 高级事务处理

28. 1. l 事务处理监视程序

28. 1. 2 新的事务模型

28. 1. 3 实时DBMS

28. 2 对多个数据源的集成访问

28. 3 移动数据库

28. 4 主存数据库

28. 5 多媒体数据库

28. 6 地理信息系统

28. 7 时态和序列数据库

28. 8 信息可视化

28. 9 总结

文献注解

附录A 数据库设计实例研究:因特网商店

附录B MINIBASE教学辅助软件

参考文献