《数据库系统概念》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:(美)Abraham Silberschatz等著;杨冬青,唐世渭等译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2003
  • ISBN:7111116259
  • 页数:767 页
图书介绍:本书讲述数据库的基本概念,包括数据库设计、数据库语言、数据库系统实现。

第1章 引言 1

1.1 数据库系统的应用 1

1.2 数据库系统与文件系统 2

1.3 数据视图 3

1.3.1 数据抽象 4

1.3.2 实例和模式 5

1.4 数据模型 5

1.4.1 实体-联系模型 5

1.4.2 关系模型 6

1.4.3 其他数据模型 7

1.5 数据库语言 7

1.5.1 数据定义语言 7

1.5.2 数据操纵语言 8

1.5.3 来自应用程序的数据库访问 9

1.6 数据库用户和管理员 9

1.6.1 数据库用户和用户界面 9

1.6.2 数据库管理员 10

1.7 事务管理 10

1.8 数据库系统结构 11

1.8.1 存储管理器 11

1.8.2 查询处理器 12

1.9 应用程序体系结构 12

1.10 数据库系统的历史 12

1.11 小结 15

术语回顾 15

工具 16

习题 16

文献注解 16

第一部分 数据模型 18

第2章 实体-联系模型 18

2.1 基本概念 18

2.1.1 实体集 18

2.1.2 联系集 20

2.2 约束 22

2.2.1 映射基数 22

2.2.2 参与约束 23

2.3 码 23

2.3.1 实体集 23

2.3.2 联系集 24

2.4.2 用实体集还是用联系集 25

2.4 设计问题 25

2.4.1 用实体集还是用属性 25

2.4.3 二元联系集与n元联系集 26

2.4.4 联系属性的布局 27

2.5 实体-联系图 27

2.6 弱实体集 32

2.7 扩展的E-R特性 33

2.7.1 特殊化 33

2.7.2 一般化 34

2.7.3 属性继承 35

2.7.4 一般化约束 35

2.7.5 聚集 36

2.7.6 可选择的E-R符号 37

2.8.1 设计阶段 39

2.8 数据库E-R模式的设计 39

2.8.2 银行企业的数据库设计 40

2.9 将E-R模式转换为表 41

2.9.1 用表表示强实体集 42

2.9.2 用表表示弱实体集 43

2.9.3 用表表示联系集 43

2.9.4 复合属性 44

2.9.5 多值属性 45

2.9.6 用表表示一般化 45

2.9.7 用表表示聚集 45

2.10 统一建模语言UML 45

2.11 小结 46

习题 48

术语回顾 48

文献注解 51

工具 52

第3章 关系模型 53

3.1 关系数据库的结构 53

3.1.1 基本结构 53

3.1.2 数据库模式 55

3.1.3 码 57

3.1.4 模式图 58

3.1.5 查询语言 59

3.2 关系代数 59

3.2.1 基本运算 59

3.2.3 附加运算 65

3.2.2 关系代数的形式化定义 65

3.3 扩展的关系代数运算 69

3.3.1 广义投影 69

3.3.2 聚集函数 69

3.3.3 外连接 71

3.3.4 空值 73

3.4 数据库的修改 74

3.4.1 删除 74

3.4.2 插入 75

3.4.3 更新 75

3.5 视图 76

3.5.1 视图定义 76

3.5.3 用视图定义视图 77

3.5.2 通过视图进行更新与空值 77

3.6 元组关系演算 78

3.6.1 查询的例子 79

3.6.2 形式化定义 81

3.6.3 表达式的安全性 81

3.6.4 语言的表达能力 82

3.7 域关系演算 82

3.7.1 形式化定义 82

3.7.2 查询的例子 82

3.7.3 表达式的安全性 83

3.7.4 语言的表达能力 84

3.8 小结 84

习题 85

术语回顾 85

文献注解 88

第二部分 关系数据库 90

第4章 SQL 90

4.1 背景 90

4.2 基本结构 91

4.2.1 select子句 91

4.2.2 where子句 92

4.2.3 from子句 93

4.2.4 更名运算 93

4.2.5 元组变量 94

4.2.6 字符串操作 94

4.2.8 重复 95

4.2.7 排列元组的显示次序 95

4.3 集合运算 96

4.3.1 并运算 96

4.3.2 交运算 97

4.3.3 差运算 97

4.4 聚集函数 97

4.5 空值 99

4.6 嵌套子查询 100

4.6.1 集合成员资格 100

4.6.2 集合的比较 101

4.6.3 测试是否为空关系 102

4.6.4 测试是否存在重复元组 103

4.8.1 派生关系 104

4.8 复杂查询 104

4.7 视图 104

4.8.2 with子句 105

4.9 数据库的修改 106

4.9.1 删除 106

4.9.2 插入 107

4.9.3 更新 108

4.9.4 视图的更新 109

4.9.5 事务 110

4.10 关系的连接 110

4.10.1 举例 110

4.10.2 连接类型和条件 112

4.11 数据定义语言DDL 113

4.11.1 SQL中的域类型 114

4.11.2 SQL的模式定义 115

4.12 嵌入式SQL 117

4.13 动态SQL 119

4.13.1 ODBC 119

4.13.2 JDBC 121

4.14 其他SQL特性 123

4.14.1 模式、目录、环境 123

4.14.2 过程扩展与存储过程 123

4.15 小结 124

术语回顾 124

习题 125

文献注解 127

5.1.1 在一个关系上的查询 128

第5章 其他关系语言 128

5.1 Query-by-Example 128

5.1.2 在多个关系上的查询 130

5.1.3 条件框 131

5.1.4 结果关系 132

5.1.5 元组的显示次序 133

5.1.6 聚集操作 133

5.1.7 数据库的修改 134

5.1.8 在Microsoft Access中的QBE 136

5.2 Datalog 137

5.2.1 基本结构 137

5.2.2 Datalog规则的语法 139

5.2.3 非递归Datalog的语义 140

5.2.4 安全性 142

5.2.5 Datalog中的关系运算 143

5.2.6 Datalog中的递归 143

5.2.7 递归的能力 145

5.2.8 其他语言的递归 146

5.3 用户界面和工具 147

5.3.1 表单和图形用户界面 147

5.3.2 报表生成器 148

5.4 小结 149

术语回顾 149

习题 149

文献注解 151

工具 152

6.1 域约束 153

第6章 完整性和安全性 153

6.2 参照完整性 154

6.2.1 基本概念 154

6.2.2 E-R模型中的参照完整性 155

6.2.3 数据库的修改 156

6.2.4 SQL中的参照完整性 156

6.3 断言 158

6.4 触发器 158

6.4.1 触发器的需求 159

6.4.2 SQL中的触发器 159

6.4.3 何时不用触发器 161

6.5.1 安全性违例 162

6.5 安全性和授权 162

6.5.2 授权 163

6.5.3 授权与视图 164

6.5.4 权限的授予 164

6.5.5 角色的概念 165

6.5.6 审计追踪 166

6.6 SQL中授权 166

6.6.1 SQL中的权限 166

6.6.2 角色 167

6.6.3 授权的权限 167

6.6.4 其他特性 168

6.6.5 SQL授权的局限 168

6.7 加密和鉴定 168

6.7.1 加密技术 169

6.7.2 鉴定 170

6.8 小结 170

术语回顾 171

习题 171

文献注解 173

第7章 关系数据库设计 174

7.1 第一范式 174

7.2 关系数据库设计中易犯的错误 175

7.3 函数依赖 176

7.3.1 基本概念 176

7.3.2 函数依赖集的闭包 179

7.3.3 属性集的闭包 180

7.3.4 正则覆盖 181

7.4 模式分解 183

7.5 分解应具有的特性 186

7.5.1 无损连接分解 187

7.5.2 保持依赖 187

7.5.3 信息重复 189

7.6 Boyce-Codd范式 189

7.6.1 定义 189

7.6.2 分解算法 191

7.6.3 保持依赖 192

7.7 第三范式 193

7.7.1 定义 193

7.7.2 分解算法 194

7.7.3 BCNF和3NF的比较 195

7.8 第四范式 196

7.8.1 多值依赖 196

7.8.2 第四范式定义 198

7.8.3 分解算法 198

7.9 更多范式 199

7.10 整体数据库设计过程 199

7.10.1 E-R模型和规范化 200

7.10.2 泛关系设计方法 200

7.10.3 为了性能解除规范化 201

7.10.4 其他设计问题 202

7.11 小结 202

习题 203

术语回顾 203

文献注解 206

第三部分 基于对象的数据库和XML 208

第8章 面向对象数据库 208

8.1 复杂数据类型的需要 208

8.2 面向对象数据模型 208

8.2.1 对象结构 209

8.2.2 对象类 209

8.2.3 继承 211

8.2.4 多重继承 213

8.2.5 对象标识 214

8.2.6 对象包含 215

8.3 面向对象的语言 216

8.4 持久化程序设计语言 216

8.4.1 对象的持久性 217

8.4.3 持久对象的存储和访问 218

8.4.2 对象标识与指针 218

8.5 持久化C++系统 219

8.5.1 ODMG C++对象定义语言 219

8.5.2 ODMG C++对象操纵语言 222

8.6 持久化Java系统 225

8.7 小结 226

术语回顾 226

习题 226

文献注解 227

第9章 对象-关系数据库 229

9.1 嵌套关系 229

9.2.1 集合体与大对象类型 231

9.2 复杂类型 231

9.2.2 结构类型 232

9.2.3 复杂类型的值的创建 233

9.3 继承 234

9.3.1 类型继承 234

9.3.2 表继承 235

9.3.3 重叠子表 236

9.4 引用类型 237

9.5 与复杂类型有关的查询 238

9.5.1 路径表达式 238

9.5.2 以集合体为值的属性 238

9.5.3 嵌套与解除嵌套 239

9.6.1 SQL函数和过程 240

9.6 函数和过程 240

9.6.2 外部语言程序 241

9.6.3 过程的构造 242

9.7 面向对象与对象-关系 244

9.8 小结 245

术语回顾 245

习题 246

文献注解 247

工具 248

第10章 XML 249

10.1 背景 249

10.2 XML数据结构 251

10.3.1 文档类型定义 253

10.3 XML文档模式 253

10.3.2 XML模式 256

10.4 查询和转换 256

10.4.1 XPath 258

10.4.2 XSLT 259

10.4.3 XQuery 261

10.5 应用程序接口 264

10.6 XML数据的存储 264

10.6.1 关系数据库 264

10.6.2 非关系的数据存储 266

10.7 XML应用 266

10.7.1 数据交换 266

10.7.2 数据中介 267

10.8 小结 268

习题 269

术语回顾 269

文献注解 270

工具 271

第四部分 数据存储和查询 274

第11章 存储和文件结构 274

11.1 物理存储介质概述 274

11.2 磁盘 276

11.2.1 磁盘的物理特性 276

11.2.2 磁盘性能的度量 278

11.2.3 磁盘块存取的优化 279

11.3.1 通过冗余提高可靠性 281

11.3 RAID 281

11.3.2 通过并行提高性能 282

11.3.3 RAID级别 283

11.3.4 RAID级别的选择 285

11.3.5 硬件问题 286

11.3.6 其他的RAID应用 287

11.4 第三级存储 287

11.4.1 光盘 287

11.4.2 磁带 288

11.5 存储访问 288

11.5.1 缓冲区管理 289

11.5.2 缓冲区替换策略 289

11.6.1 定长记录 291

11.6 文件组织 291

11.6.2 变长记录 292

11.7 文件中记录的组织 295

11.7.1 顺序文件组织 296

11.7.2 聚簇文件组织 297

11.8 数据字典 298

11.9 面向对象数据库的存储 299

11.9.1 对象到文件的映射 299

11.9.2 对象标识符的实现 300

11.9.3 持久化指针的管理 301

11.9.4 硬件混写 301

11.9.5 对象的磁盘结构与内存结构 305

11.9.6 大对象 305

11.10 小结 306

术语回顾 307

习题 308

文献注解 309

第12章 索引与散列 311

12.1 基本概念 311

12.2 有序索引 312

12.2.1 主索引 312

12.2.2 辅助索引 316

12.3 B+树索引文件 317

12.3.1 B+树的结构 317

12.3.2 B+树上的查询 318

12.3.3 B+树的更新 320

12.3.4 B+树文件组织 323

12.4 B树索引文件 325

12.5.1 散列文件组织 326

12.5 静态散列 326

12.5.2 散列索引 329

12.6 动态散列 330

12.6.1 数据结构 330

12.6.2 查询和更新 331

12.6.3 与其他方案的比较 334

12.7 有序索引和散列的比较 335

12.8 SQL中的索引定义 336

12.9 多码访问 336

12.9.1 使用多个单码索引 336

12.9.3 网格文件 337

12.9.2 多码索引 337

12.9.4 位图索引 339

12.10 小结 342

术语回顾 343

习题 343

文献注解 344

第13章 查询处理 346

13.1 概述 346

13.2 查询代价的测量 347

13.3 选择运算 348

13.3.1 基本算法 348

13.3.2 使用索引的选择 349

13.3.4 复杂选择的实现 350

13.3.3 涉及比较的选择 350

13.4 排序 351

13.5 连接运算 353

13.5.1 嵌套循环连接 353

13.5.2 块嵌套循环连接 354

13.5.3 索引嵌套循环连接 355

13.5.4 归并连接 356

13.5.5 散列连接 358

13.5.6 复杂连接 361

13.6 其他运算 362

13.6.1 消除重复 362

13.6.2 投影 362

13.6.3 集合运算 362

13.6.5 聚集 363

13.6.4 外连接 363

13.7 表达式计算 364

13.7.1 实体化 364

13.7.2 流水线 365

13.8 小结 368

术语回顾 368

习题 369

文献注解 370

第14章 查询优化 371

14.1 概述 371

14.2 表达式结果统计信息的估计 372

14.2.1 目录信息 372

14.2.2 选择运算结果的估计 373

14.2.3 连接运算结果的估计 374

14.2.4 其他运算的结果的估计 375

14.2.5 不同取值个数的估计 376

14.3 关系表达式的转换 376

14.3.1 等价规则 377

14.3.2 转换的例子 379

14.3.3 连接的次序 380

14.3.4 等价表达式的枚举 381

14.4 执行计划的选择 382

14.4.1 查询执行技术的相互作用 382

14.4.2 基于代价的优化 383

14.4.3 启发式优化 384

14.4.4 查询优化器的结构 386

14.4.5 嵌套子查询的优化 387

14.5 物化视图 388

14.5.1 视图维护 389

14.5.2 增量视图维护 389

14.5.3 查询优化和物化视图 391

14.6 小结 392

术语回顾 393

习题 393

文献注解 395

第五部分 事务管理 398

第15章 事务 398

15.1 事务概念 398

15.2 事务状态 400

15.3 原子性和持久性的实现 401

15.4 并发执行 403

15.5 可串行化 405

15.5.1 冲突可串行化 406

15.5.2 视图可串行化 407

15.6 可恢复性 408

15.6.1 可恢复调度 408

15.6.2 无级联调度 409

15.7 隔离性的实现 409

15.8 SQL中的事务定义 409

15.9 可串行化的判定 410

15.10 小结 411

习题 412

术语回顾 412

文献注解 413

第16章 并发控制 414

16.1 基于锁的协议 414

16.1.1 锁 414

16.1.2 锁的授予 417

16.1.3 两阶段封锁协议 417

16.1.4 封锁的实现 419

16.1.5 基于图的协议 420

16.2 基于时间戳的协议 422

16.2.1 时间戳 422

16.2.2 时间戳排序协议 422

16.2.3 Thomas写规则 424

16.3 基于有效性检查的协议 424

16.4 多粒度 425

16.5 多版本机制 428

16.5.1 多版本时间戳排序 428

16.5.2 多版本两阶段封锁 429

16.6 死锁处理 429

16.6.1 死锁预防 430

16.6.2 基于超时的机制 431

16.6.3 死锁检测与恢复 431

16.7 插入与删除操作 432

16.7.1 删除 433

16.7.2 插入 433

16.7.3 幻象现象 433

16.8.2 游标稳定性 435

16.8.1 二级一致性 435

16.8 弱一致性级别 435

16.8.3 SQL中的弱一致性级别 436

16.9 索引结构中的并发 436

16.10 小结 438

术语回顾 440

习题 441

文献注解 443

第17章 恢复系统 445

17.1 故障分类 445

17.2 存储器结构 445

17.2.1 存储器类型 445

17.2.2 稳定存储器的实现 446

17.2.3 数据访问 447

17.3 恢复与原子性 448

17.4 基于日志的恢复 449

17.4.1 延迟的数据库修改 449

17.4.2 立即的数据库修改 451

17.4.3 检查点 453

17.5 影子分页 454

17.6 并发事务的恢复 457

17.6.1 与并发控制的关系 457

17.6.2 事务回滚 457

17.6.3 检查点 458

17.6.4 重启动恢复 458

17.7.2 数据库缓冲 459

17.7.1 日志记录缓冲 459

17.7 缓冲区管理 459

17.7.3 操作系统在缓冲区管理中的作用 460

17.8 非易失性存储器数据丢失的故障 461

17.9 高级恢复技术 461

17.9.1 逻辑undo日志 462

17.9.2 事务回滚 462

17.9.3 检查点 463

17.9.4 重启动恢复 463

17.9.5 模糊检查点 464

17.9.6 ARIES 464

17.10 远程备份系统 467

17.11 小结 468

习题 470

术语回顾 470

文献注解 472

第六部分 数据库系统体系结构 474

第18章 数据库系统体系结构 474

18.1 集中式体系结构与客户-服务器体系结构 474

18.1.1 集中式系统 474

18.1.2 客户-服务器系统 475

18.2 服务器系统体系结构 476

18.2.1 事务服务器进程结构 477

18.2.2 数据服务器 478

18.3 并行系统 479

18.3.1 加速比和扩展比 480

18.3.3 并行数据库体系结构 482

18.3.2 互连网络 482

18.4 分布式系统 484

18.4.1 分布式数据库的一个例子 486

18.4.2 实现问题 486

18.5 网络类型 487

18.5.1 局域网 487

18.5.2 广域网 488

18.6 小结 489

术语回顾 489

习题 490

文献注解 491

19.2 分布式数据存储 492

19.1 同构数据库和异构数据库 492

第19章 分布式数据库 492

19.2.1 数据复制 493

19.2.2 数据分片 493

19.2.3 透明性 494

19.3 分布式事务 495

19.3.1 系统结构 495

19.3.2 系统故障模式 496

19.4 提交协议 497

19.4.1 两阶段提交 497

19.4.2 三阶段提交 499

19.4.3 事务处理的可选择模型 500

19.5.1 封锁协议 501

19.5 分布式数据库的并发控制 501

19.5.2 时间戳 503

19.5.3 弱一致性复制 504

19.5.4 死锁处理 505

19.6 可用性 507

19.6.1 基于多数的方法 508

19.6.2 读一个、写所有可用的方法 508

19.6.3 站点重建 509

19.6.4 与远程备份比较 509

19.6.5 协调器的选择 509

19.7 分布式查询处理 510

19.7.1 查询转换 510

19.7.2 简单的连接处理 511

19.7.4 利用并行性的连接策略 512

19.7.3 半连接策略 512

19.8 异构分布式数据库 513

19.8.1 数据的统一视图 513

19.8.2 查询处理 514

19.9 目录系统 514

19.9.1 目录访问协议 515

19.9.2 LDAP:轻型目录访问协议 515

19.10 小结 518

术语回顾 520

习题 520

文献注解 522

20.1 引言 524

20.2 I/O并行 524

第20章 并行数据库 524

20.2.1 划分技术 525

20.2.2 划分技术的比较 525

20.2.3 偏斜的处理 526

20.3 查询间并行 527

20.4 查询内并行 528

20.5 操作内并行 529

20.5.1 并行排序 529

20.5.2 并行连接 530

20.5.3 其他关系运算 533

20.5.4 操作的并行计算的代价 534

20.6 操作间并行 534

20.6.1 流水线并行 534

20.6.3 查询优化 535

20.6.2 独立并行 535

20.7 并行系统设计 536

20.8 小结 537

术语回顾 538

习题 538

文献注解 539

第七部分 其他主题 542

第21章 应用开发和管理 542

21.1 数据库的Web接口 542

21.1.1 动机 542

21.1.2 Web基础 543

21.1.3 Web服务器和会话 545

21.1.4 servlet 546

21.2 性能调整 548

21.1.5 服务器端脚本 548

21.1.6 提高性能 548

21.2.1 瓶颈的定位 549

21.2.2 可调参数 550

21.2.3 硬件的调整 550

21.2.4 模式的调整 551

21.2.5 索引的调整 552

21.2.6 使用物化视图 552

21.2.7 事务的调整 553

21.2.8 性能模拟 555

21.3 性能基准程序 555

21.3.1 任务集 555

21.3.3 TPC基准程序 556

21.3.2 数据库应用类型 556

21.3.4 OODB基准程序 557

21.4 标准化 558

21.4.1 SQL标准 558

21.4.2 数据库连接标准 559

21.4.3 对象数据库标准 560

21.4.4 基于XML的标准 560

21.5 电子商务 561

21.5.1 电子目录 561

21.5.2 市场 561

21.5.3 订单结算 562

21.7 小结 563

21.6 遗留系统 563

术语回顾 564

习题 565

项目建议 565

文献注解 567

工具 567

第22章 高级查询和信息检索 568

22.1 决策支持系统 568

22.2 数据分析和联机分析处理 569

22.2.1 联机分析处理 569

22.2.2 联机分析处理实现 573

22.2.3 扩展聚集 573

22.2.4 排名次 575

22.2.5 分窗 577

22.3 数据挖掘 578

22.3.1 数据挖掘应用 578

22.3.2 分类 579

22.3.3 关联规则 584

22.3.4 其他类型的关联 586

22.3.5 聚类 586

22.3.6 其他类型的挖掘 587

22.4 数据仓库 588

22.4.1 数据仓库的成分 588

22.4.2 数据仓库模式 589

22.5 信息检索系统 590

22.5.1 关键字搜索 591

22.5.2 文档的索引 594

22.5.3 度量检索的有效性 595

22.5.4 Web搜索引擎 595

22.5.5 目录 596

22.6 小结 598

术语回顾 599

习题 600

文献注解 601

工具 602

第23章 高级数据类型和新的应用 603

23.1 动机 603

23.2 数据库中的时间 604

23.2.1 SQL中的时间定义 604

23.3 空间与几何数据 605

23.2.2 时态查询语言 605

23.3.1 几何信息的表示 606

23.3.2 设计数据库 607

23.3.3 地理数据 608

23.3.4 空间查询 609

23.3.5 空间数据的索引 610

23.4 多媒体数据库 613

23.4.1 多媒体数据格式 613

23.4.2 连续媒体数据 614

23.4.3 基于相似性的检索 614

23.5 移动计算和个人数据库 615

23.5.2 路由和查询处理 616

23.5.1 移动计算模型 616

23.5.3 广播数据 617

23.5.4 连接断开与一致性 617

23.6 小结 619

术语回顾 619

习题 620

文献注解 621

第24章 高级事务处理 623

24.1 事务处理监控器 623

24.1.1 TP监控器体系结构 623

24.1.2 使用TP监控器进行应用协调 625

24.2 事务工作流 626

24.2.1 工作流说明 628

24.2.2 工作流的故障原子性需求 628

24.2.3 工作流的执行 629

24.2.5 工作流管理系统 630

24.2.4 工作流的恢复 630

24.3 主存数据库 631

24.4 实时事务系统 632

24.5 长事务 633

24.5.1 不可串行化的执行 633

24.5.2 并发控制 634

24.5.3 嵌套事务和多级事务 635

24.5.4 补偿事务 635

24.5.5 实现问题 636

24.6 多数据库中的事务管理 637

24.6.1 两级可串行化 638

24.7 小结 639

24.6.2 保证全局可串行化 639

术语回顾 640

习题 641

文献注解 642

第八部分 实例研究 644

第25章 Oracle 644

25.1 数据库设计和查询工具 644

25.1.1 数据库设计工具 644

25.1.2 查询工具 645

25.2 SQL的变化和扩展 645

25.2.1 对象-关系特征 646

25.2.2 触发器 646

25.3.2 段 647

25.3.1 表空间 647

25.3 存储和索引 647

25.3.3 表 648

25.3.4 按索引组织的表 648

25.3.5 索引 649

25.3.6 位图索引 649

25.3.7 基于函数的索引 650

25.3.8 连接索引 650

25.3.9 域索引 651

25.3.10 划分 651

25.3.11 物化视图 652

25.4 查询处理和优化 653

25.4.1 执行方法 653

25.4.2 优化 654

25.4.3 并行执行 655

25.5 并发控制与恢复 657

25.5.1 并发控制 657

25.5.2 恢复的基本结构 658

25.5.3 管理备用数据库 658

25.6 系统体系结构 659

25.6.1 专用服务器:内存结构 659

25.6.2 专用服务器:进程结构 659

25.6.3 多线程服务器 660

25.6.4 Oracle9i Real Application Clusters 660

25.7 复制、分布以及外部数据 660

25.7.1 复制 660

25.8.1 Oracle Enterprise Manager 661

25.8 数据库管理工具 661

25.7.2 分布式数据库 661

25.7.3 外部数据源 661

25.8.2 数据库资源管理 662

文献注解 662

第26章 IBM DB2 Universal Database 663

26.1 数据库设计和查询工具 664

26.2 SQL的变化和扩展 664

26.2.1 数据类型的支持 664

26.2.2 用户定义函数和方法 665

26.2.3 大对象 665

26.2.4 XML支持 665

26.3.1 存储体系结构 666

26.3 存储和索引 666

26.2.5 索引扩展和约束 666

26.3.2 表、记录和索引 667

26.4 查询处理和优化 668

26.4.1 访问方法 670

26.4.2 连接、聚集和集合运算 670

26.4.3 支持复杂SQL处理 670

26.4.4 多处理器查询处理特性 670

26.4.5 查询优化 671

26.5 并发控制和恢复 671

26.5.1 并发与隔离 672

26.5.3 日志和恢复 673

26.6 系统体系结构 673

26.5.2 提交和回滚 673

26.7 复制、分布和外部数据 675

26.8 数据库管理工具 675

26.9 小结 676

文献注解 676

第27章 Microsoft SQL Server 678

27.1 管理、设计和查询工具 678

27.1.1 数据库开发和可视化数据库工具 678

27.1.2 数据库查询和调整工具 679

27.1.3 SQL Server Enterprise Manager 682

27.2.1 数据类型 683

27.2.2 用户定义函数 683

27.2 SQL的变化和扩展 683

27.2.3 视图 684

27.2.4 触发器 686

27.3 存储和索引 686

27.3.1 文件组 686

27.3.2 文件组中的空间管理 686

27.3.3 表 687

27.3.4 索引 687

27.3.5 扫描和预读 687

27.4 查询处理及优化 687

27.4.1 优化处理概述 687

27.4.2 查询简化 688

27.4.3 重排序和基于代价的优化 688

27.4.5 部分搜索和启发式搜索 689

27.4.4 更新计划 689

27.4.6 查询执行 690

27.5 并发与恢复 690

27.5.1 事务 690

27.5.2 封锁 691

27.5.3 日志和恢复 693

27.6 系统体系结构 694

27.6.1 服务器的线程池 694

27.6.2 内存管理 694

27.7 数据访问 695

27.7.1 数据访问API 695

27.7.2 SQL Server的内部通信 695

27.8.1 分布式异构查询处理 696

27.8 分布与复制 696

27.8.2 复制 697

27.9 关系数据上的全文查询 699

27.10 数据仓库和分析服务 700

27.10.1 分布式转换服务 700

27.10.2 联机分析处理服务 700

27.11 XML和Web支持 702

27.11.1 XML访问SQL Server的体系结构 702

27.11.2 SQL查询结果序列化成XML 703

27.11.3 在关系数据上提供XML视图 703

27.11.4 在XML上提供关系视图 704

27.12 小结 704

文献注解 704

参考文献 706

索引 734