《数据库系统基础 高级篇 第5版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)RamezElmasri,ShamkantB.Navathe著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:7115171602
  • 页数:300 页
图书介绍:本书是一本讲述数据库系统原理的经典教材。

第一部分 事务处理的概念 2

第1章 事务处理的概念与理论简介 2

1.1 事务处理简介 2

1.1.1 单用户系统与多用户系统 2

1.1.2 事务、读写操作和DBMS缓冲区 3

1.1.3 并发控制的必要性 4

1.1.4 恢复的必要性 6

1.2 事务和系统概念 6

1.2.1 事务状态及附加操作 7

1.2.2 系统日志 7

1.2.3 事务的提交点 8

1.3 事务的描述特性 8

1.4 描述基于可恢复性调度的特征 9

1.4.1 事务的调度(历史) 9

1.4.2 描述基于可恢复性调度的特征 10

1.5 描述基于可串行性调度的特征 11

1.5.1 串行、非串行和冲突-可串行化调度 11

1.5.2 测试调度的冲突可串行性 14

1.5.3 可串行性的用途 16

1.5.4 视图等价和视图可串行性 17

1.5.5 调度等价性的其他类型 18

1.6 SQL中的事务支持 18

小结 19

复习题 20

练习题 20

参考文献 21

第2章 并发控制技术 22

2.1 并发控制的两阶段加锁技术 22

2.1.1 锁类型与系统锁表 22

2.1.2 通过两阶段加锁保证可串行性 26

2.1.3 死锁和饥饿处理 27

2.2 基于时间戳顺序的并发控制 29

2.2.1 时间戳 29

2.2.2 时间戳排序算法 30

2.3 多版本并发控制技术 31

2.3.1 基于时间戳排序的多版本技术 31

2.3.2 使用验证锁的多版本两阶段加锁 32

2.4 确认(乐观的)并发控制技术 32

2.5 数据项粒度和多粒度加锁 33

2.5.1 加锁的粒度级别考虑 34

2.5.2 多粒度级别加锁 34

2.6 索引中使用加锁进行并发控制 36

2.7 并发控制的其他问题 37

2.7.1 插入、删除以及幻像记录 37

2.7.2 交互式事务 38

2.7.3 锁存器 38

小结 38

复习题 38

练习题 39

参考文献 39

第3章 数据库恢复技术 41

3.1 恢复概念 41

3.1.1 恢复概述和恢复算法的分类 41

3.1.2 磁盘块的高速缓存(缓冲) 42

3.1.3 先写日志、潜入/非潜入和强制/非强制 42

3.1.4 系统日志中的检查点和模糊检查点 43

3.1.5 事务回滚 44

3.2 基于延迟更新的恢复技术 45

3.2.1 单用户环境下使用延迟更新的恢复 46

3.2.2 多用户环境下并发执行的延迟更新 46

3.2.3 不影响数据库的事务活动 48

3.3 基于即时更新的恢复技术 48

3.3.1 单用户环境下基于即时更新的UNDO/REDO恢复 49

3.3.2 多用户环境下基于即时更新的UNDO/REDO恢复 49

3.4 镜像分页 49

3.5 ARIES恢复算法 50

3.6 多数据库系统中的恢复 53

3.7 数据库备份和灾难性故障恢复 53

小结 54

复习题 54

练习题 55

参考文献 57

第二部分 对象和对象-关系数据库第4章 面向对象数据库的概念 60

4.1 面向对象的概念 61

4.2 对象标识、对象结构和类型构造器 63

4.2.1 对象标识 63

4.2.2 对象结构 63

4.2.3 类型构造器 66

4.3 操作、方法和持久性的封装 67

4.3.1 通过类操作指定对象行为 67

4.3.2 通过命名和可达性指定对象的持久性 69

4.4 类型、类层次和继承 70

4.4.1 类型层次和继承 70

4.4.2 对应于类型层次的外延约束 72

4.5 复杂对象 72

4.5.1 非结构化复杂对象和类型可扩展性 73

4.5.2 结构化复杂对象 73

4.6 其他面向对象的概念 74

4.6.1 多态性(操作符重载) 74

4.6.2 多重继承与选择性继承 75

4.6.3 版本和配置 75

小结 76

复习题 76

练习题 77

参考文献 77

第5章 对象数据库标准、语言和设计 78

5.1 ODMG对象模型概述 79

5.1.1 对象和文字 79

5.1.2 汇集对象的内置接口 83

5.1.3 原子(用户定义)对象 85

5.1.4 接口、类和继承 86

5.1.5 类外延、码和工厂对象 86

5.2 对象定义语言(ODL) 88

5.3 对象查询语言(OQL) 92

5.3.1 简单OQL查询、数据库入口点和迭代变量 92

5.3.2 查询结果和路径表达式 93

5.3.3 OQL的其他特性 95

5.4 C++语言绑定概述 98

5.5 对象数据库概念设计 99

5.5.1 ODB与RDB概念设计的区别 99

5.5.2 EER模式到ODB模式的映射 100

小结 101

复习题 102

练习题 102

参考文献 102

第6章 对象-关系和扩展-关系系统 104

6.1 SQL及其对象-关系特性概述 104

6.1.1 SQL标准及其组件 104

6.1.2 SQL-99中的对象-关系支持 105

6.1.3 SQL中一些新操作和特性 109

6.2 数据模型的演变和数据库技术的当前发展趋势 109

6.3 Informix Universal Server 110

6.3.1 可扩展数据类型 111

6.3.2 支持用户定义例程 112

6.3.3 支持继承 113

6.3.4 支持索引扩展 115

6.3.5 支持外部数据源 115

6.3.6 支持数据刀片应用编程接口 115

6.4 Oracle 8的对象-关系特性 118

6.4.1 Oracle对象-关系特性的一些示例 118

6.4.2 管理大对象以及其他存储特性 119

6.5 扩展类型系统的实现和相关问题 120

6.6 嵌套关系数据模型 120

小结 122

参考文献 122

第三部分 高级主题:安全性、高级建模和分布式第7章 数据库的安全性 126

7.1 数据库安全性问题简介 126

7.1.1 安全性的类型 126

7.1.2 控制措施 127

7.1.3 数据库安全性和DBA 128

7.1.4 访问保护、用户账户和数据库审计 128

7.2 基于授予和收回权限的自主访问控制 129

7.2.1 自主性权限的类型 129

7.2.2 使用视图指定权限 130

7.2.3 收回权限 130

7.2.4 使用GRANT OPTION选项传播权限 130

7.2.5 一个示例 130

7.2.6 指定权限传播的限定 131

7.3 多级安全性的强制访问控制和基于角色访问控制 132

7.3.1 自主访问控制与强制访问控制的比较 134

7.3.2 基于角色的访问控制 134

7.3.3 XML访问控制 135

7.3.4 电子商务和Web的访问控制策略 135

7.4 统计数据库的安全性简介 136

7.5 流控制简介 137

7.6 加密和公钥构架 138

7.6.1 数据加密标准和高级加密标准 138

7.6.2 公钥加密 138

7.6.3 数字签名 139

7.7 保密性问题和保护 140

7.8 数据库安全性所面临的挑战 140

7.8.1 数据质量 140

7.8.2 知识产权 140

7.8.3 数据库生存能力 140

小结 141

复习题 141

练习题 142

参考文献 142

第8章 面向高级应用的增强数据模型 144

8.1 主动数据库概念和触发器 145

8.1.1 主动数据库和Oracle触发器的一般模型 145

8.1.2 主动数据库的设计和实现 148

8.1.3 STARBURST系统中使用语句级主动规则的示例 150

8.1.4 主动数据库的潜在应用 151

8.1.5 SQL-99中的触发器 152

8.2 时态数据库概念 152

8.2.1 时间表示法、日历和时间维 153

8.2.2 使用元组版本化在关系数据库中加入时间 154

8.2.3 使用属性版本化在面向对象数据库中加入时间 159

8.2.4 时态查询构造与TSQL2语言 160

8.2.5 时间序列数据 161

8.3 空间和多媒体数据库 162

8.3.1 空间数据库概念介绍 162

8.3.2 多媒体数据库概念介绍 163

8.4 演绎数据库介绍 164

8.4.1 演绎数据库概述 164

8.4.2 Prolog/Datalog表示法 165

8.4.3 Datalog表示法 166

8.4.4 子句形式与Horn子句 167

8.4.5 规则解释 168

8.4.6 Datalog程序及其安全性 169

8.4.7 关系操作的使用 171

8.4.8 非递归Datalog查询的估算 172

小结 173

复习题 174

练习题 174

参考文献 177

第9章 分布式数据库和客户-服务器体系结构 178

9.1 分布式数据库概念 178

9.1.1 并行与分布式技术 179

9.1.2 分布式数据库的优势 180

9.1.3 分布式数据库的附加功能 181

9.2 分布式数据库设计的数据分片、复制和分配技术 182

9.2.1 数据分片 182

9.2.2 数据复制和分配 184

9.2.3 分片、分配和复制示例 185

9.3 分布式数据库系统的类型 187

9.4 分布式数据库中的查询处理 189

9.4.1 分布式查询处理的数据传输代价 189

9.4.2 使用半连接的分布式查询处理 191

9.4.3 查询和更新分解 191

9.5 分布式数据库中并发控制和恢复概述 193

9.5.1 基于识别数据项副本的分布式并发控制 194

9.5.2 基于投票方法的分布式并发控制 195

9.5.3 分布式恢复 195

9.6 三层客户-服务器体系结构概述 195

9.7 Oracle分布式数据库 197

小结 199

复习题 199

练习题 200

参考文献 201

第四部分 新兴技术 204

第10章 使用PHP进行Web数据库程序设计 204

10.1 结构化、半结构化以及非结构化数据 204

10.2 一个简单的PHP示例 207

10.3 PHP基本特性概述 209

10.3.1 PHP变量、数据类型和程序设计结构 209

10.3.2 PHP数组 210

10.3.3 PHP函数 211

10.3.4 PHP服务器变量和表单 213

10.4 PHP数据库程序设计概述 214

10.4.1 连接数据库 214

10.4.2 从表单中汇集数据并插入记录 215

10.4.3 数据库表的检索查询 216

小结 217

复习题 217

练习题 217

实验练习题 217

参考文献 218

第11章 XML:可扩展标记语言 219

11.1 XML层次(树)数据模型 219

11.2 XML文档、DTD和XML模式 221

11.2.1 合式、有效XML文档及XML DTD 221

11.2.2 XML模式 222

11.3 XML文档和数据库 226

11.3.1 存储XML文档的方法 226

11.3.2 从关系数据库中抽取XML文档 227

11.3.3 断开环以实现从图到树的转换 230

11.3.4 从数据库抽取XML文档的其他步骤 230

11.4 XML查询 231

11.4.1 XPath:在XML中指路径表达式 231

11.4.2 XQuery:在XML中指定查询 232

小结 232

复习题 233

练习题 233

参考文献 233

第12章 数据挖掘概念 234

12.1 数据挖掘技术概述 234

12.1.1 数据挖掘和数据仓库 234

12.1.2 数据挖掘是知识发现过程的一部分 234

12.1.3 数据挖掘和知识发现的目标 235

12.1.4 数据挖掘期间知识发现的类型 236

12.2 关联规则 237

12.2.1 市场购物篮模型、支持度与可信度 237

12.2.2 Apriori算法 238

12.2.3 采样算法 239

12.2.4 频繁模式树算法 239

12.2.5 分区算法 241

12.2.6 其他类型的关联规则 242

12.2.7 关联规则的附加考虑 244

12.3 分类 244

12.4 聚类 246

12.5 其他数据挖掘问题的方法 248

12.5.1 序列模式的发现 248

12.5.2 时间序列中模式的发现 248

12.5.3 回归 249

12.5.4 神经网络 249

12.5.5 遗传算法 249

12.6 数据挖掘的应用 250

12.7 商业化数据挖掘工具 250

12.7.1 用户界面 251

12.7.2 应用编程接口 251

12.7.3 未来的方向 251

小结 252

复习题 252

练习题 252

参考文献 254

第13章 数据仓库和OLAP概述 255

13.1 概述、定义和术语 255

13.2 数据仓库的特性 256

13.3 数据仓库的数据模型 257

13.4 构建数据仓库 261

13.5 数据仓库的典型功能 263

13.6 数据仓库和视图 263

13.7 数据仓库中的难题和开放问题 264

13.7.1 数据仓库实现中的困难 264

13.7.2 数据仓库的开放问题 264

小结 265

复习题 265

参考文献 265

第14章 新兴的数据库技术及应用 266

14.1 移动数据库 266

14.1.1 移动计算体系结构 266

14.1.2 移动环境的特征 269

14.1.3 数据管理问题 270

14.1.4 应用:间歇同步数据库 270

14.2 多媒体数据库 271

14.2.1 多媒体数据和应用的特征 271

14.2.2 数据管理问题 272

14.2.3 开放研究问题 273

14.2.4 多媒体数据库应用 274

14.3 地理信息系统(GIS) 275

14.3.1 GIS系统组件 276

14.3.2 GIS中数据的特征 276

14.3.3 GIS概念数据模型 278

14.3.4 GIS的DBMS增强功能 278

14.3.5 GIS标准和操作 279

14.3.6 GIS应用和软件 281

14.3.7 GIS未来的工作 282

14.4 基因组数据管理 283

14.4.1 生物科学和遗传学 283

14.4.2 生物数据的特征 284

14.4.3 人类基因组项目和现有的生物数据库 286

参考文献 289

致谢 291

附录A ER模型的可选图形表示法 292

附录B 磁盘参数 294

附录C QBE语言概述 296