《数据库系统基础 第6版》PDF下载

  • 购买积分:24 如何计算积分?
  • 作  者:(美)埃尔玛斯利,(美)纳瓦特赫著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302260448
  • 页数:901 页
图书介绍:本书是被世界众多高校广泛采用的讲述数据库系统的经典教材。全面阐述了数据库系统在设计、使用、实现和应用中所需的基本概念。

第1部分 数据库概述 3

第1章 数据库与数据库用户 3

1.1引言 3

1.2一个示例 6

1.3数据库方法的特征 8

1.3.1数据模型数据库系统的自描述性 8

1.3.2程序与数据分离和数据抽象 9

1.3.3支持数据的多视图 11

1.3.4数据共享和多用户事务处理 11

1.4幕前角色 12

1.4.1数据库管理员 12

1.4.2数据库设计者 12

1.4.3最终用户 13

1.4.4系统分析员和应用程序员 13

1.5幕后工作者 14

1.6使用DBMS方法的优势 14

1.6.1控制冗余 14

1.6.2限制非授权访问 16

1.6.3为程序对象提供永久性存储 16

1.6.4为高效查询处理提供存储结构和搜索技术 16

1.6.5提供备份与恢复 17

1.6.6提供多用户接口 17

1.6.7表示数据间的复杂联系 17

1.6.8强制执行完整性约束 17

1.6.9允许使用规则进行推理和动作 18

1.6.10使用数据库方法的其他潜在优势 18

1.7数据库应用简史 19

1.7.1使用层次和网状系统的早期数据库应用 19

1.7.2提供数据抽象和应用灵活性的关系数据库 20

1.7.3面向对象的应用和对更复杂数据库的需求 20

1.7.4使用XML在Web上交换数据以实现电子商务 21

1.7.5为新应用扩展数据库性能 21

1.7.6数据库与信息检索 22

1.8何时不使用DBMS 22

1.9本章小结 23

复习题 23

练习题 23

选读文献 24

第2章 数据库系统的概念和体系结构 25

2.1数据模型、模式和实例 25

2.1.1数据模型的分类 26

2.1.2模式、实例和数据库状态 27

2.2三层模式体系结构和数据独立性 28

2.2.1三层模式体系结构 28

2.2.2数据独立性 30

2.3数据库语言和界面 31

2.3.1 DBMS语言 31

2.3.2 DBMS界面 32

2.4数据库系统环境 33

2.4.1 DBMS的组成模块 34

2.4.2数据库系统实用工具 36

2.4.3工具、应用环境和通信软件 36

2.5 DBMS的集中式和客户机/服务器体系结构 37

2.5.1集中式DBMS的体系结构 37

2.5.2基本的客户机/服务器体系结构 37

2.5.3 DBMS的两层客户机/服务器体系结构 39

2.5.4面向Web应用的三层和n层体系结构 40

2.6数据库管理系统的分类 41

2.7本章小结 44

复习题 45

练习题 45

选读文献 46

第2部分 关系数据模型与SQL 49

第3章 关系数据模型和关系数据库约束 49

3.1关系模型概念 50

3.1.1域、属性、元组和关系 50

3.1.2关系的特性 52

3.1.3关系模型表示法 55

3.2关系模型约束和关系数据库模式 55

3.2.1域约束 56

3.2.2码约束和NULL值约束 56

3.2.3关系数据库和关系数据库模式 58

3.2.4实体完整性、参照完整性和外码 59

3.2.5其他类型的约束 62

3.3更新操作、事务和处理违例约束 62

3.3.1插入操作 63

3.3.2删除操作 64

3.3.3更新操作 65

3.3.4事务的概念 65

3.4本章小结 66

复习题 66

练习题 67

选读文献 70

第4章SQL基础 71

4.1 SQL数据定义和数据类型 72

4.1.1 SQL中模式和目录的概念 72

4.1.2 SQL的CREATE TABLE命令 73

4.1.3 SQL中的属性数据类型和域 75

4.2在SQL中定义约束 77

4.2.1指定属性约束和属性默认值 77

4.2.2指定码和参照完整性约束 78

4.2.3为约束命名 79

4.2.4使用CHECK指定元组约束 79

4.3 SQL中的基本查询 79

4.3.1基本SQL查询的SELECT-FROM-WHERE结构 80

4.3.2多义属性名、别名、重命名和元组变量 82

4.3.3未指定WHERE子句的查询语句和星号(*)的用法 84

4.3.4 SQL中作为集合的表 84

4.3.5子串模式匹配和算术运算符 86

4.3.6查询结果排序 87

4.3.7基本SQL检索查询的讨论与小结 88

4.4 SQL中的插入、删除和更新语句 88

4.4.1 INSERT命令 88

4.4.2 DELETE命令 90

4.4.3 UPDATE命令 90

4.5 SQL的其他特性 91

4.6本章小结 92

复习题 92

练习题 93

选读文献 94

第5章 更多SQL:复杂查询、触发器、视图和模式修改 95

5.1更复杂的SQL查询 95

5.1.1包含空值和三值逻辑的比较 95

5.1.2嵌套查询、元组与集/多集比较 97

5.1.3关联嵌套查询 99

5.1.4 SQL中的EXISTS和UNION函数 99

5.1.5 SQL中的显式集合和属性重命名 101

5.1.6 SQL中的连接表和外连接 102

5.1.7 SQL中的聚集函数 103

5.1.8分组:GROUP BY和HAVING子句 105

5.1.9 SQL查询的讨论与小结 108

5.2指定约束作为断言以及动作作为触发器 109

5.2.1指定一般约束作为SQL中的断言 109

5.2.2 SQL中的触发器 110

5.3 SQL中的视图(虚表) 111

5.3.1 SQL中视图的概念 111

5.3.2指定SQL中的视图 112

5.3.3视图的实现、更新和内联视图 113

5.4 SQL中的模式更改语句 115

5.4.1 DROP命令 115

5.4.2 ALTER命令 116

5.5本章小结 117

复习题 118

练习题 118

选读文献 119

第6章 关系代数和关系演算 121

6.1一元关系运算:选择和投影 122

6.1.1选择运算 122

6.1.2投影运算 124

6.1.3运算序列和更名运算 125

6.2基于集合论的关系代数运算 127

6.2.1并、交和差运算 127

6.2.2笛卡儿积(叉积)运算 129

6.3二元关系运算:连接运算和除运算 130

6.3.1连接运算 130

6.3.2连接的变体:等值连接和自然连接 132

6.3.3关系代数运算的完备集 134

6.3.4除运算 134

6.3.5查询树表示法 136

6.4其他关系运算 137

6.4.1广义投影 137

6.4.2聚集函数和分组 138

6.4.3递归闭包运算 139

6.4.4外连接运算 140

6.4.5外并运算 141

6.5关系代数中的查询示例 142

6.6元组关系演算 144

6.6.1元组变量和值域关系 145

6.6.2元组关系演算中的表达式与公式 146

6.6.3存在量词与全称量词 146

6.6.4元组关系演算的查询示例 147

6.6.5查询图表示法 149

6.6.6全称量词与存在量词的转换 149

6.6.7查询中使用全称量词 150

6.6.8安全表达式 151

6.7域关系演算 152

6.8本章小结 154

复习题 155

练习题 155

实验题 159

选读文献 160

第3部分 概念建模与数据库设计 165

第7章 使用实体-联系(ER)模型的数据建模 165

7.1使用高级概念数据模型进行数据库设计 166

7.2一个数据库应用示例 167

7.3实体类型、实体集、属性和码 169

7.3.1实体和属性 169

7.3.2实体类型、实体集、码和值集 171

7.3.3 COMPANY数据库的初步概念设计 174

7.4联系类型、联系集、角色和结构约束 175

7.4.1联系类型、联系集和联系实例 175

7.4.2联系度、角色名称和递归联系 176

7.4.3二元联系类型的约束 178

7.4.4联系类型的属性 180

7.5弱实体类型 181

7.6改进COMPANY数据库的ER设计 182

7.7 ER图、命名约定和设计问题 183

7.7.1 ER图表示法小结 183

7.7.2模式结构的正确命名 183

7.7.3 ER概念设计的设计选择 185

7.7.4 ER图的替代表示法 185

7.8其他表示法示例:UML类图 186

7.9大于2度的联系类型 188

7.9.1对二元和三元(或度数更高)联系的选择 188

7.9.2三元(或度数更高)联系上的约束 191

7.10本章小结 192

复习题 193

练习题 193

实验题 199

选读文献 200

第8章 增强的实体-联系(EER)建模 201

8.1子类、超类和继承 201

8.2特化和泛化 203

8.2.1特化 203

8.2.2泛化 204

8.3特化和泛化层次的约束和特征 205

8.3.1特化与泛化的约束 205

8.3.2特化和泛化的层次和格 208

8.3.3利用特化和泛化改进概念模型 210

8.4采用类别的并类型建模 211

8.5示例UNIVERSITY的EER模式、设计选择和形式化定义 213

8.5.1 UNIVERSITY数据库示例 213

8.5.2特化/泛化的设计选择 215

8.5.3 EER模型概念的形式化定义 215

8.6其他表示法的示例:UML类图中的特化/泛化表示 216

8.7数据抽象、知识表示和本体概念 218

8.7.1分类和实例化 218

8.7.2标识 219

8.7.3特化和泛化 220

8.7.4聚集和关联 220

8.7.5本体和语义词 222

8.8本章小结 222

复习题 223

练习题 223

实验题 230

选读文献 231

第9章 使用ER到关系的映射和EER到关系的映射进行关系数据库设计 233

9.1使用ER到关系的映射进行关系数据库设计 233

9.1.1 ER到关系的映射算法 233

9.1.2 ER模型构造映射的讨论和总结 238

9.2 EER模型构造到关系的映射 239

9.2.1特化或泛化的映射 239

9.2.2共享子类(多重继承)的映射 242

9.2.3类别的映射(并类型) 242

9.3本章小结 244

复习题 244

练习题 244

实验题 245

选读文献 246

第10章 实际数据库设计方法学和UML图的使用 247

10.1组织中信息系统的角色 248

10.1.1使用数据库系统的组织环境 248

10.1.2信息系统的生命周期 250

10.1.3数据库应用系统的生命周期 250

10.2数据库设计与实现过程 252

10.2.1第1阶段:需求汇集和分析 253

10.2.2第2阶段:概念数据库设计 255

10.2.3第3阶段:DBMS的选择 263

10.2.4第4阶段:数据模型映射(逻辑数据库设计) 265

10.2.5第5阶段:物理数据库设计 265

10.2.6第6阶段:数据库系统的实现和调优 266

10.3使用UML图作为数据库设计规范说明的辅助工具 267

10.3.1 UML作为规范说明的标准 267

10.3.2将UML用于数据库应用设计 267

10.3.3各种UML图 268

10.3.4建模和设计的示例:UNIVERSITY数据库 272

10.4基于UML的设计工具:Rational Rose 274

10.4.1面向数据库设计的Rational Rose 274

10.4.2 Rational Rose Data Modeler 274

10.4.3使用Rational Rose Data Modeler的数据建模 275

10.5自动化数据库设计工具 279

10.6本章小结 281

复习题 282

选读文献 283

第4部分 对象、对象关系与XML:概念、模型、语言与标准 287

第11章 对象及对象关系数据库 287

11.1对象数据库概念概述 288

11.1.1面向对象的概念和特征 288

11.1.2对象标识以及对象和文字的比较 290

11.1.3复杂类型结构的对象和文字 291

11.1.4操作封装和对象持久性 293

11.1.5类型层次和继承 296

11.1.6其他面向对象的概念 298

11.1.7对象数据库概念小结 299

11.2对象-关系特征:SQL标准中的对象数据库扩展 300

11.2.1对象的用户定义类型和复杂结构 300

11.2.2使用引用类型的对象标识符 303

11.2.3基于UDT创建表 303

11.2.4 SQL中操作的封装 304

11.2.5 SQL中的指定继承和函数重载 304

11.2.6通过引用指定联系 305

11.3 ODMG对象模型和ODL对象定义语言 305

11.3.1 ODMG对象模型概述 306

11.3.2 ODMG对象模型中的继承 311

11.3.3对象模型中的内置接口和类 311

11.3.4原子(用户定义)对象 313

11.3.5类外延、码和工厂对象 315

11.3.6对象定义语言ODL 317

11.4对象数据库概念设计 321

11.4.1 ODB与RDB概念设计的区别 321

11.4.2将EER模式映射为ODB模式 322

11.5对象查询语言OQL 324

11.5.1简单OQL查询,数据库入口点和迭代变量 324

11.5.2查询结果和路径表达式 325

11.5.3 OQL的其他特性 327

11.6 ODMG标准中的C﹢﹢语言绑定概述 331

11.7本章小结 332

复习题 333

练习题 334

选读文献 335

第12章XML:可扩展置标语言 337

12.1结构化、半结构化和非结构化数据 337

12.2 XML层次(树)数据模型 341

12.3 XML文档、DTD和XML模式 343

12.3.1合式、有效XML文档及XML DTD 343

12.3.2 XML模式 345

12.4从数据库存取XML文档 349

12.5 XML语言 350

12.5.1 XPath:在 XML中指定路径表达式 350

12.5.2 XQuery:在XML中指定查询 352

12.5.3 XML相关的其他语言和协议 353

12.6从关系数据库中抽取XML文档 353

12.6.1基于平面或图数据生成层次XML视图 353

12.6.2断开环以实现从图到树的转换 357

12.6.3从数据库抽取XML文档的其他步骤 358

12.7本章小结 358

复习题 359

练习题 359

选读文献 359

第5部分 数据库编程技术 363

第13章SQL程序设计技术简介 363

13.1数据库程序设计:问题与技术 364

13.1.1数据库程序设计方法 364

13.1.2阻抗失配 365

13.1.3数据库程序设计中的典型交互序列 365

13.2嵌入式SQL、动态SQL和SQLJ 366

13.2.1用嵌入式SQL检索单个元组 366

13.2.2用嵌入式SQL使用游标检索多个元组 369

13.2.3使用动态SQL在运行时指定查询 371

13.2.4 SQLJ:Java中嵌入SQL命令 372

13.2.5 SQLJ中使用迭代器 374

检索多个元组 374

13.3使用函数调用的数据库程序设计:SQL/CLI和JDBC 376

13.3.1以C语言为宿主语言,使用SQL/CLI进行数据库程序设计 376

13.3.2 JDBC:面向Java程序设计的SQL函数调用 380

13.4数据库存储过程和SQL/PSM 383

13.4.1数据库存储过程和函数 383

13.4.2 SQL/PSM:扩展SQL以指定持久存储模块 385

13.5三类方法的比较 386

13.6本章小结 386

复习题 387

练习题 387

选读文献 388

第14章 使用PHP进行Web数据库程序设计 389

14.1一个简单的PHP示例 389

14.2 PHP基本特性概述 392

14.2.1 PHP变量、数据类型和程序设计结构 392

14.2.2 PHP数组 393

14.2.3 PHP函数 394

14.2.4 PHP服务器变量和表单 396

14.3 PHP数据库程序设计概述 397

14.3.1连接数据库 397

14.3.2从表单中汇集数据并插入记录 398

14.3.3数据库表的检索查询 399

14.4本章小结 400

复习题 400

练习题 401

选读文献 401

第6部分 数据库设计理论与规范化 405

第15章 函数依赖和关系数据库规范化 405

15.1关系模式的非形式化设计准则 406

15.1.1给予关系中的属性以清晰的定义 406

15.1.2元组中的冗余信息和更新异常 409

15.1.3元组中的NULL值 411

15.1.4生成伪元组 412

15.1.5设计准则的总结和讨论 414

15.2函数依赖 414

5.2.1函数依赖的定义 414

15.3基于主码的范式 416

15.3.1关系的规范化 417

15.3.2范式的实际使用 417

15.3.3码的定义和参与码的属性 418

15.3.4第一范式 418

15.3.5第二范式 421

15.3.6第三范式 422

15.4第二范式和第三范式的通用定义 423

15.4.1第二范式的通用定义 424

15.4.2第三范式的通用定义 424

15.4.3解释第三范式的通用定义 426

15.5 Boyce-Codd范式 426

15.6多值依赖和第四范式 428

15.6.1多值依赖的形式化定义 429

15.7连接依赖和第五范式 430

15.8本章小结 432

复习题 432

练习题 433

实验题 436

选读文献 437

第16章 关系数据库设计算法和其他依赖 438

16.1函数依赖的高级主题:推理规则、等价和最小覆盖 439

16.1.1函数依赖的推理规则 439

16.1.2函数依赖集的等价 442

16.1.3最小函数依赖集 443

16.2关系分解的性质 444

16.2.1关系分解和范式的不足 444

16.2.2分解的依赖保持性质 445

16.2.3分解的非加性(无损)连接性质 446

16.2.4检验二元分解的非加性连接性质 448

16.2.5连续非加性连接分解 449

16.3关系数据库模式设计算法 449

16.3.1保持依赖的3NF模式分解 449

16.3.2非加性连接分解成BCNF模式 450

16.3.3保持依赖和非加性(无损)连接分解成3NF模式 451

16.4 NULL值和悬挂元组问题 453

16.4.1 NULL值和悬挂元组问题概述 453

16.4.2规范化算法的讨论 456

16.5多值依赖和第四范式的进一步讨论 457

16.5.1函数依赖和多值依赖的推理规则 457

16.5.2第四范式回顾 458

16.5.3非加性连接分解成4NF关系 459

16.6其他依赖和范式 460

16.6.1包含依赖 460

16.6.2模板依赖 461

16.6.3基于算术函数和例程的函数依赖 462

16.6.4域-码范式 462

16.7本章小结 463

复习题 463

练习题 464

实验题 465

选读文献 465

第7部分 文件结构、索引与散列 469

第17章 磁盘存储、基本文件结构和散列 469

17.1概述 469

17.1.1存储层次和存储设备 470

17.1.2数据库的存储 471

17.2二级存储设备 472

17.2.1磁盘设备的硬件描述 472

17.2.2磁带存储设备 476

17.3块缓冲 477

17.4把文件记录保存在磁盘上 478

17.4.1记录和记录类型 478

17.4.2文件、定长记录和变长记录 479

17.4.3记录块、跨块记录与非跨块记录 480

17.4.4在磁盘上分配文件块 481

17.4.5文件首部 481

17.5文件操作 482

17.6无序记录文件(堆文件) 484

17.7有序记录文件(排序文件) 485

17.8散列技术 488

17.8.1内部散列 488

17.8.2磁盘文件的外部散列法 490

17.8.3允许动态文件扩展的散列技术 492

17.9其他主文件组织 496

17.9.1混合记录文件 496

17.9.2 B树和其他数据结构作为主组织 497

17.10使用RAID技术的并行磁盘访问 497

17.10.1用RAID增强可靠性 498

17.10.2用RAID改善性能 499

17.10.3 RAID组织体系和级别 499

17.11新的存储系统 500

17.11.1存储局域网SAN 500

17.11.2网络连接存储NAS 501

17.11.3 iSCSI存储系统 501

17.12本章小结 502

复习题 503

练习题 504

选读文献 507

第18章 文件的索引结构 508

18.1单级有序索引的类型 508

18.1.1主索引 509

18.1.2聚簇索引 511

18.1.3辅助索引 513

18.1.4小结 516

18.2多级索引 517

18.3使用B树与B﹢树的动态多级索引 520

18.3.1搜索树和B树 520

18.3.2B﹢树 524

18.4多码上的索引 531

18.4.1多属性上的有序索引 531

18.4.2分区散列法 532

18.4.3网格文件 532

18.5其他类型的索引 533

18.5.1散列索引 533

18.5.2位图索引 533

18.5.3基于函数的索引 535

18.6关于索引的一般主题 537

18.6.1逻辑索引和物理索引 537

18.6.2讨论 537

18.6.3关系的列存储 538

18.7本章小结 538

复习题 539

练习题 540

选读文献 542

第8部分 查询处理与优化、数据库调试 547

第19章 查询处理和优化的算法 547

19.1把SQL查询转换成关系代数 548

19.2外排序算法 549

19.3选择与连接运算的算法 551

19.3.1选择运算的实现 551

19.3.2连接运算的实现 554

19.4投影和集合运算的算法 560

19.5聚集运算和外连接的实现 561

19.5.1聚集运算的实现 561

19.5.2外连接的实现 562

19.6用流水线组合运算 563

19.7在查询优化中使用启发式规则 563

19.7.1查询树和查询图的表示法 564

19.7.2查询树的启发式优化 565

19.7.3将查询树转换为查询执行计划 570

19.8利用选择度和代价估算进行查询优化 571

19.8.1查询执行的代价成分 571

19.8.2代价函数中使用的目录信息 572

19.8.3选择运算的代价函数示例 573

19.8.4连接的代价函数示例 575

19.8.5多关系查询和连接顺序 577

19.8.6说明基于代价的查询优化的示例 577

19.9 Oracle中的查询优化概述 579

19.10语义查询优化 580

19.11本章小结 581

复习题 581

练习题 581

选读文献 582

第20章 物理数据库设计和调优 584

20.1关系数据库中的物理数据库设计 584

20.1.1影响物理数据库设计的因素 584

20.1.2物理数据库设计决策 585

20.2关系系统中的数据库调优概述 588

20.2.1索引的调优 589

20.2.2数据库设计的调优 589

20.2.3查询的调优 590

20.2.4其他的查询优化原则 592

20.3本章小结 593

复习题 593

选读文献 594

第9部分 事务处理、并发控制与恢复 597

第21章 事务处理的概念与理论简介 597

21.1事务处理简介 597

21.1.1单用户系统与多用户系统 597

21.1.2事务、数据库项、读写操作和DBMS缓冲区 598

21.1.3并发控制的必要性 600

21.1.4恢复的必要性 602

21.2事务和系统的概念 603

21.2.1事务状态和附加操作 603

21.2.2系统日志 604

21.2.3事务的提交点 605

21.3事务的理想特性 605

21.4基于可恢复性的调度特征 606

21.4.1事务的调度(历史) 606

21.4.2基于可恢复性的调度特征 607

21.5基于可串行性调度的特征描述 609

21.5.1串行、非串行和冲突-可串行化调度 610

21.5.2测试调度的冲突可串行性 612

21.5.3可串行性如何用于并发控制 615

21.5.4视图等价和视图可串行性 615

21.5.5等价调度的其他类型 616

21.6 SQL对事务的支持 617

21.7本章小结 618

复习题 619

练习题 620

选读文献 621

第22章 并发控制技术 622

22.1并发控制的两阶段加锁技术 622

22.1.1锁类型和系统锁表 622

22.1.2通过两阶段加锁保证可串行性 626

22.1.3死锁和饿死处理 628

22.2基于时间戳排序的并发控制 631

22.2.1时间戳 631

22.2.2时间戳排序算法 631

22.3多版本并发控制技术 633

22.3.1基于时间戳排序的多版本技术 633

22.3.2使用验证锁的多版本两阶段加锁 634

22.4确认(乐观)并发控制技术 635

22.5数据项的粒度和多粒度加锁 636

22.5.1加锁的粒度级别考虑 636

22.5.2多粒度级别加锁 637

22.6在索引中使用加锁进行并发控制 639

22.7其他并发控制问题 639

22.7.1记录的插入、删除和幻像 640

22.7.2交互式事务 640

22.7.3锁存器 641

22.8本章小结 641

复习题 641

练习题 642

选读文献 642

第23章 数据库恢复技术 644

23.1恢复概念 644

23.1.1恢复概述和恢复算法的分类 644

23.1.2磁盘块的高速缓存(缓冲) 645

23.1.3先写日志、窃取/非窃取和强制/非强制 646

23.1.4系统日志中的检查点和模糊检查点 647

23.1.5事务回滚和级联回滚 648

23.1.6不会对数据库产生影响的事务行为 650

23.2基于延迟更新的NO-UNDO/REDO恢复 650

23.3基于即时更新的恢复技术 652

23.4镜像分页 653

23.5 ARIES恢复算法 655

23.6多数据库系统中的恢复 657

23.7数据库备份和灾难性故障恢复 658

23.8本章小结 659

复习题 660

练习题 660

选读文献 663

第10部分 其他数据库主题:安全性与分布性 667

第24章 数据库安全性 667

24.1数据库安全性问题简介 667

24.1.1安全性的类型 667

24.1.2控制措施 668

24.1.3数据库安全性和DBA 669

24.1.4访问控制、用户账户和数据库审计 670

24.1.5敏感数据和泄漏的类型 670

24.1.6信息安全性和信息保密性之间的关系 671

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

24.2.1自主性权限的类型 672

24.2.2使用视图指定权限 673

24.2.3权限的收回 673

24.2.4使用GRANT OPTION选项传播权限 674

24.2.5权限的授予和收回示例 674

24.2.6传播权限的限定 676

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

24.3.1自主访问控制与强制访问控制的比较 679

24.3.2基于角色的访问控制 679

24.3.3基于标签的安全性和行级访问控制 680

24.3.4 XML访问控制 681

24.3.5电子商务和Web的访问控制策略 681

24.4 SQL注入 682

24.4.1 SQL注入方法 682

24.4.2与SQL注入相关的危险 684

24.4.3 SQL注入的防御技术 684

24.5统计数据库的安全性简介 685

24.6流控制简介 686

24.6.1隐蔽信道 687

24.7加密和公钥架构 688

24.7.1数据加密标准和高级加密标准 688

24.7.2对称密钥算法 688

24.7.3公钥(非对称)加密 689

24.7.4数字签名 690

24.7.5数字证书 690

24.8保密性问题和保护 691

24.9数据库安全性所面临的挑战 691

24.9.1数据质量 691

24.9.2知识产权 692

24.9.3数据库生存能力 692

24.10 Oracle中基于标签的安全性 692

24.10.1虚拟保密数据库(VPD)技术 693

24.10.2标签安全性的体系结构 693

24.10.3数据标签和用户标签如何协同工作 694

24.11本章小结 695

复习题 695

练习题 696

选读文献 697

第25章 分布式数据库 699

25.1分布式数据库概念 700

25.1.1 DDB和多处理器系统的区别 700

25.1.2透明性 701

25.1.3自治性 702

25.1.4可靠性和可用性 702

25.1.5分布式数据库的优势 702

25.1.6分布式数据库的附加功能 703

25.2分布式数据库系统的类型 704

25.2.1联邦式数据库管理系统问题 705

25.3分布式数据库体系结构 706

25.3.1并行体系结构与分布式体系结构 706

25.3.2纯粹的分布式数据库的一般体系结构 708

25.3.3联邦式数据库模式的体系结构 708

25.3.4三层客户-服务器体系结构概述 710

25.4分布式数据库设计中的数据分片、复制和分配技术 711

25.4.1数据分片 711

25.4.2数据复制和分配 714

25.4.3分片、分配和复制示例 714

25.5分布式数据库中的查询处理和优化 717

25.5.1分布式查询处理 717

25.5.2分布式查询处理的数据传输代价 718

25.5.3使用半连接的分布式查询处理 719

25.5.4查询和更新分解 720

25.6分布式数据库中的事务管理概述 722

25.6.1两阶段提交协议 723

25.6.2三阶段提交协议 723

25.6.3支持事务管理的操作系统 723

25.7分布式数据库中的并发控制和恢复概述 724

25.7.1基于数据项标识副本的分布式并发控制 724

25.7.2基于投票的分布式并发控制 726

25.7.3分布式恢复 726

25.8分布式目录管理 726

25.9分布式数据库的发展趋势 727

25.9.1云计算 727

25.9.2对等网络数据库系统 728

25.10 Oracle分布式数据库 729

25.10.1目录服务 731

25.11本章小结 732

复习题 733

练习题 734

选读文献 735

第11部分 高级数据库模型、系统与应用 741

第26章 面向高级应用的增强数据模型 741

26.1主动数据库的概念和触发器 742

26.1.1主动数据库和触发器的一般模型 742

26.1.2主动数据库的设计和实现 746

26.1.3 STARBURST系统中语句级主动规则的示例 748

26.1.4主动数据库的潜在应用 750

26.1.5 SQL-99中的触发器 750

26.2时态数据库概念 751

26.2.1时间表示法、日历和时间维 752

26.2.2在关系数据库中通过元组版本化加入时间 753

26.2.3在面向对象数据库中通过属性版本化加入时间 758

26.2.4时态查询构造与TSQL2语言 760

26.2.5时间序列数据 761

26.3空间数据库概念 762

26.3.1空间数据库介绍 762

26.3.2空间数据类型和模型 763

26.3.3空间算子 764

26.3.4空间数据索引 765

26.3.5空间数据挖掘 766

26.3.6空间数据应用 767

26.4多媒体数据库概念 767

26.4.1图像的自动分析 769

26.4.2图像中的对象识别 770

26.4.3图像的语义标签 770

26.4.4音频数据源的分析 771

26.5演绎数据库介绍 771

26.5.1演绎数据库概述 771

26.5.2 Prolog/Datalog表示法 772

26.5.3 Datalog表示法 774

26.5.4子句形式与Horn子句 774

26.5.5规则解释 775

26.5.6 Datalog程序及其安全性 778

26.5.7关系操作的使用 780

26.5.8非递归Datalog查询的估算 781

26.6本章小结 782

复习题 783

练习题 784

选读文献 787

第27章 信息检索和Web搜索引论 790

27.1信息检索概念 790

27.1.1信息检索介绍 790

27.1.2数据库与IR系统的对比 792

27.1.3 IR的简要历史 793

27.1.4 IR系统中的交互方式 794

27.1.5通用的IR流水线结构 795

27.2检索模型 797

27.2.1布尔模型 797

27.2.2向量空间模型 797

27.2.3概率模型 799

27.2.4语义模型 800

27.3 IR系统中的查询类型 800

27.3.1关键字查询 801

27.3.2布尔查询 801

27.3.3短语查询 801

27.3.4近似查询 801

27.3.5通配符查询 802

27.3.6自然语言查询 802

27.4文本预处理 802

27.4.1删除停用词 802

27.4.2词干化 803

27.4.3使用辞典 803

27.4.4其他预处理步骤:数字、连字号、标点符号、格 804

27.4.5信息抽取 804

27.5倒排索引 805

27.6搜索相关性的评价尺度 806

27.6.1查全率和查准率 807

27.6.2平均查准率 808

27.6.3查全率/查准率曲线 808

27.6.4 F-Score 808

27.7 Web搜索和分析 809

27.7.1 Web分析及其与信息检索的关系 809

27.7.2搜索Web 810

27.7.3 Web页面的链接结构分析 811

27.7.4 Web内容分析 812

27.7.5 Web内容分析方法 814

27.7.6 Web用法分析 815

27.7.7 Web分析的实际应用 816

27.8信息检索的发展趋势 817

27.8.1刻面搜索 817

27.8.2社交搜索 817

27.8.3会话搜索 818

27.9本章小结 818

复习题 819

选读文献 820

第28章 数据挖掘概念 822

28.1数据挖掘技术概述 822

28.1.1数据挖掘与数据仓库 822

28.1.2数据挖掘是知识发现过程的一部分 823

28.1.3数据挖掘和知识发现的目标 823

28.1.4数据挖掘期间知识发现的类型 824

28.2关联规则 825

28.2.1市场购物篮模型、支持度与可信度 825

28.2.2 Apriori算法 826

28.2.3采样算法 828

28.2.4频繁模式(FP)树和FP增长算法 828

28.2.5分区算法 831

28.2.6其他类型的关联规则 831

28.2.7关联规则的附加考虑 834

28.3分类 834

28.4聚类 837

28.5其他数据挖掘问题的方法 839

28.5.1序列模式的发现 839

28.5.2时间序列中模式的发现 839

28.5.3回归 839

28.5.4神经网络 840

28.5.5遗传算法 840

28.6数据挖掘的应用 841

28.7商业化数据挖掘工具 842

28.7.1用户界面 842

28.7.2应用程序接口 842

28.7.3未来的方向 842

28.8本章小结 843

复习题 844

练习题 844

选读文献 846

第29章 数据仓库和OLAP概述 847

29.1概述、定义和术语 847

29.2数据仓库的特性 848

29.3数据仓库的数据模型 849

29.4构建数据仓库 853

29.5数据仓库的典型功能 855

29.6数据仓库和视图 856

29.7数据仓库实现中的困难 857

29.8本章小结 858

复习题 858

选读文献 858

附录 861

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

附录B磁盘参数 864

附录C QBE语言概述 866

C.1 QBE中的基本检索 866

C.2 QBE中的分组、聚集和数据库修改 869

选读文献 872

文献中所用缩写 872

文献引文格式 873

参考文献 874