第六部分 分布式DBMS与复制 2
第24章 DDBMS——概念与设计 2
24.1引言 3
24.1.1概念 3
24.1.2 DDBMS的优缺点 6
24.1.3同构DDBMS和异构DDBMS 8
24.2网络概述 10
24.3 DDBMS的功能和体系结构 13
24.3.1 DDBMS的功能 13
24.3.2 DDBMS的参考体系结构 13
24.3.3联邦MDBS的参考体系结构 14
24.3.4 DDBMS的组成结构 15
24.4分布式关系数据库设计 16
24.4.1数据分配 17
24.4.2分段 18
24.5 DDBMS的透明性 24
24.5.1分布透明性 24
24.5.2事务透明性 26
24.5.3性能透明性 29
24.5.4 DBMS透明性 31
24.5.5 DDBMS的透明性小结 31
24.6 Date关于DDBMS的12条规则 31
本章小结 32
思考题 33
习题 34
第25章 DDBMS——高级概念 35
25.1分布式事务管理 36
25.2分布式并发控制 36
25.2.1目标 36
25.2.2分布串行性 37
25.2.3锁协议 37
25.3分布式死锁管理 39
25.4分布式数据库恢复 42
25.4.1分布式环境中的故障 42
25.4.2故障对恢复的影响 43
25.4.3两段式提交 44
25.4.4三段式提交 48
25.4.5网络分区 51
25.5 X/Open分布式事务处理模型 53
25.6分布式查询优化 55
25.6.1数据定位 56
25.6.2分布式连接 58
25.6.3全局优化 59
25.7 Oracle中的分布特性 62
本章小结 67
思考题 67
习题 68
第26章 复制与移动数据库 69
26.1数据库复制简介 70
26.1.1复制的应用 71
26.1.2复制模型 71
26.1.3复制协议的功能模型 71
26.1.4一致性 72
26.2复制的体系结构 73
26.2.1基于内核的复制 73
26.2.2基于中间件的复制 73
26.2.3更新处理 74
26.2.4更新传播 75
26.2.5更新场所(数据所有权) 76
26.2.6终止协议 78
26.3复制模式 79
26.3.1积极主备份 79
26.3.2懒惰主备份 83
26.3.3积极随处更新 86
26.3.4懒惰随处更新 86
26.3.5使用统一全序广播的随处更新 89
26.3.6 SI与统一全序广播复制 92
26.4移动数据库简介 97
26.4.1移动DBMS 98
26.4.2与移动DBMS相关的问题 98
26.5 Oracle中的复制 108
本章小结 113
思考题 114
习题 114
第七部分 对象DBMS 118
第27章 OODBMS——概念与设计 118
27.1下一代数据库系统 119
27.2 OODBMS简介 120
27.2.1面向对象DBMS的定义 120
27.2.2函数数据模型 122
27.2.3持久型编程语言 125
27.2.4开发OODBMS的可选策略 126
27.3 OODBMS的持久性 127
27.3.1指针切换技术 128
27.3.2访问对象 131
27.3.3持久性模式 132
27.3.4正交持久性 133
27.4 OODBMS中的问题 135
27.4.1事务 135
27.4.2版本 135
27.4.3模式演化 136
27.4.4体系结构 139
27.4.5基准测试 141
27.5 OODBMS的优点和缺点 142
27.5.1优点 143
27.5.2缺点 144
27.6 ORDBMS与OODBMS的比较 145
27.7面向对象数据库设计 146
27.7.1面向对象数据建模与概念数据建模的比较 146
27.7.2联系和引用完整性 147
27.7.3行为设计 149
27.8采用UML的面向对象分析与设计 150
27.8.1 UML图 151
27.8.2 UML在数据库设计方法学中的应用 155
本章小结 156
思考题 157
习题 158
第28章 OODBMS——标准与系统 159
28.1对象管理组 159
28.1.1背景 160
28.1.2公共对象请求代理架构 162
28.1.3其他OMG规范 166
28.1.4模型驱动的架构 167
28.2对象数据标准ODMG 3.0 170
28.2.1对象数据管理组 170
28.2.2对象模型 171
28.2.3对象定义语言 177
28.2.4对象查询语言 178
28.2.5 ODMG标准的其他部分 183
28.2.6将概念设计映射为逻辑(面向对象的)设计 186
28.3 ObjectStore 187
28.3.1总体结构 187
28.3.2构建ObjectStore应用程序 189
28.3.3 ObjectStore中的数据定义 190
28.3.4 ObjectStore中的数据操作 193
本章小结 196
思考题 197
习题 197
第八部分 Web与DBMS 200
第29章 Web技术与DBMS 200
29.1 Internet和Web简介 201
29.1.1企业内联网与外联网 202
29.1.2电子贸易和电子商务 203
29.2 Web 203
29.2.1超文本传输协议 204
29.2.2超文本标记语言 206
29.2.3统一资源定位符 207
29.2.4静态和动态网页 208
29.2.5 Web服务 208
29.2.6对Web与DBMS集成的需求 209
29.2.7 Web-DBMS方案的优缺点 210
29.2.8集成Web与DBMS的方法 212
29.3脚本语言 213
29.3.1 JavaScript和JScript 213
29.3.2 VBScript 214
29.3.3 Perl和PHP 214
29.4公共网关接口 215
29.4.1向CGI脚本传递信息 216
29.4.2 CGI的优缺点 217
29.5 HTTP Cookie 218
29.6扩展Web服务器 219
29.7 Java 220
29.7.1 JDBC 223
29.7.2 SQLJ 227
29.7.3 JDBC和SQLJ的比较 227
29.7.4管理容器持久性 228
29.7.5 JDO 231
29.7.6 JPA 237
29.7.7 Java servlet 243
29.7.8 JSP 244
29.7.9 Java Web服务 245
29.8 Microsoft的Web解决平台 246
29.8.1通用数据访问 247
29.8.2 ASP和ADO 248
29.8.3远程数据服务 250
29.8.4 ASP和JSP的比较 251
29.8.5 Microsoft.NET 251
29.8.6 Microsoft Web服务 255
29.9 Oracle Internet平台 255
29.9.1 Oracle WebLogic服务器 256
29.9.2 Oracle Metadata Repository 257
29.9.3 Oracle Identity Management 257
29.9.4 Oracle Portal 258
29.9.5 Oracle WebCenter 258
29.9.6 Oracle BI Discoverer 259
29.9.7 Oracle SOA Suite 259
本章小结 261
思考题 262
习题 263
第30章 半结构化数据与XML 265
30.1半结构化数据 266
30.1.1对象交换模型 267
30.1.2 Lore和Lorel 268
30.2 XML简介 271
30.2.1 XML概览 273
30.2.2文档类型定义 275
30.3 XML相关技术 278
30.3.1 DOM和SAX接口 278
30.3.2命名空间 279
30.3.3 XSL和XSLT 279
30.3.4 XPath 281
30.3.5 XPointer 282
30.3.6 XLink 282
30.3.7 XHTML 282
30.3.8 SOAP 283
30.3.9 WSDL 284
30.3.10 UDDI 284
30.3.11 JSON 285
30.4 XML Schema 287
30.5 XML查询语言 295
30.5.1扩展Lore和Lorel来处理XML 295
30.5.2 XML查询工作组 297
30.5.3 XQuery——XML的一种查询语言 298
30.5.4 XML信息集 305
30.5.5 XQuery 1.0和XPath 2.0数据模型 306
30.5.6 XQuery Update Facility 1.0 311
30.5.7形式化语义 313
30.6 XML和数据库 319
30.6.1在数据库中存储XML 320
30.6.2 XML和SQL 322
30.6.3纯XML数据库 333
30.7 Oracle中的XML 334
本章小结 337
思考题 338
习题 339
第九部分 商务智能 342
第31章 数据仓库的概念 342
31.1数据仓库引言 342
31.1.1数据仓库演化过程 343
31.1.2数据仓库概念简介 343
31.1.3数据仓库的优势 344
31.1.4联机事务处理系统与数据仓库的比较 344
31.1.5数据仓库的问题 345
31.1.6实时数据仓库 346
31.2数据仓库体系结构 347
31.2.1运营数据 348
31.2.2运营数据存储 348
31.2.3 ETL管理器 348
31.2.4仓库管理器 348
31.2.5查询管理器 348
31.2.6细节数据 348
31.2.7轻度和高度汇总数据 349
31.2.8存档/备份数据 349
31.2.9元数据 349
31.2.10终端用户访问工具 349
31.3数据仓库工具与技术 350
31.3.1提取、变换和加载 350
31.3.2数据仓库DBMS 351
31.3.3数据仓库元数据 353
31.3.4执行和管理工具 354
31.4数据集市 354
31.5数据仓库和时态数据库 355
31.6使用Oracle建立数据仓库 359
31.6.1 Oracle 11 g的仓库特性 361
31.6.2 Oracle对时态数据的支持 362
本章小结 363
思考题 363
习题 364
第32章 数据仓库的设计 366
32.1设计数据仓库数据库 366
32.2数据仓库开发方法学 367
32.3 Kimball的业务维度生命周期 368
32.4维度建模 369
32.5 Kimball的业务维度生命周期的维度建模阶段 371
32.5.1创建高层维度模型(阶段Ⅰ) 372
32.5.2确定维度模型的所有维度属性(阶段Ⅱ) 375
32.6数据仓库开发的问题 378
32.7使用Oracle设计数据仓库 378
32.7.1 Oracle Warehouse Builder组件 379
32.7.2使用Oracle Warehouse Builder 380
32.7.3 Oracle 11 g中的Warehouse Builder特性 382
本章小结 383
思考题 384
习题 384
第33章 OLAP 387
33.1联机分析处理 387
33.2 OLAP应用 388
33.3多维数据模型 390
33.3.1可选多维数据表示 390
33.3.2维层次 392
33.3.3多维操作 392
33.3.4多维模式 393
33.4 OLAP工具 393
33.4.1 OLAP工具的Codd准则 393
33.4.2 OLAP服务器——实现问题 394
33.4.3 OLAP服务器的种类 395
33.5 SQL的OLAP扩展 398
33.5.1扩展的分组能力 398
33.5.2基本OLAP操作 402
33.6 Oracle OLAP 404
33.6.1 Oracle的OLAP环境 404
33.6.2商务智能应用平台 404
33.6.3 Oracle数据库 404
33.6.4 Oracle OLAP 406
33.6.5性能 407
33.6.6系统管理 407
33.6.7系统需求 407
33.6.8 Oracle llg中的OLAP特性 407
本章小结 408
思考题 408
习题 408
第34章 数据挖掘 409
34.1数据挖掘简介 409
34.2数据挖掘技术 410
34.2.1预测性建模 411
34.2.2数据库分段 412
34.2.3连接分析 413
34.2.4偏离检测 413
34.3数据挖掘过程 413
34.4数据挖掘工具 414
34.5数据挖掘与数据仓库 415
34.6 Oracle Data Mining 416
34.6.1数据挖掘能力 416
34.6.2数据挖掘应用使能 416
34.6.3预测和洞察 416
34.6.4 Oracle数据挖掘环境 416
34.6.5 Oracle llg中的数据挖掘特性 417
本章小结 417
思考题 418
习题 418
附录 420
附录A DreamHome案例研究的用户需求说明 420
附录B 其他案例研究 424
附录C 可选的ER建模表示法 433
附录D 关系数据库设计方法学总结 436
附录E 轻量级RDBMS:Pyrrho简介 440