數(shù)據(jù)庫管理:大數(shù)據(jù)與小數(shù)據(jù)的存儲、管理及分析實戰(zhàn)
定 價:149 元
叢書名:計算機科學叢書
- 作者:[比利時]維爾弗里德·勒瑪肖(Wilfried Lemahieu) 賽普·凡登
- 出版時間:2020/10/1
- ISBN:9787111665199
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP311.132.3
- 頁碼:0
- 紙張:
- 版次:
- 開本:16開
本書全面講解數(shù)據(jù)庫設計、建模、系統(tǒng)構(gòu)建、數(shù)據(jù)存儲以及數(shù)據(jù)倉庫、數(shù)據(jù)治理等方面的基礎知識,并提出了一種數(shù)據(jù)庫管理的新方法。本書的三位作者均為該領域?qū)<,在大?shù)據(jù)、數(shù)據(jù)分析、數(shù)據(jù)質(zhì)量和數(shù)據(jù)集成方面經(jīng)驗豐富。全書理論結(jié)合實踐,既有對現(xiàn)有數(shù)據(jù)庫技術的講解,又有對*新技術趨勢的分析。為了幫助讀者更好地理解基本概念,書中包含大量真實案例,涉及查詢實例、代碼以及圖形等,并搭建了在線學習環(huán)境,這使本書成為信息系統(tǒng)或計算機科學專業(yè)本科生和研究生入門課程的完美教材。
出版者的話
贊譽
譯者序
前言
作者簡介
第一部分 數(shù)據(jù)庫與數(shù)據(jù)庫設計
第1章 數(shù)據(jù)庫管理的基本概念 2
1.1 數(shù)據(jù)庫技術的應用 2
1.2 關鍵定義 3
1.3 基于文件與數(shù)據(jù)庫的數(shù)據(jù)管理方法 3
1.3.1 基于文件的方法 3
1.3.2 基于數(shù)據(jù)庫的方法 4
1.4 數(shù)據(jù)庫系統(tǒng)的元素 6
1.4.1 數(shù)據(jù)庫模型與實例 6
1.4.2 數(shù)據(jù)模型 7
1.4.3 三層架構(gòu) 7
1.4.4 目錄 8
1.4.5 數(shù)據(jù)庫用戶 9
1.4.6 數(shù)據(jù)庫語言 9
1.5 數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理的優(yōu)點 9
1.5.1 數(shù)據(jù)獨立性 9
1.5.2 數(shù)據(jù)庫建模 10
1.5.3 管理結(jié)構(gòu)化、半結(jié)構(gòu)化、非結(jié)構(gòu)化數(shù)據(jù) 10
1.5.4 管理數(shù)據(jù)冗余 10
1.5.5 指定完整性約束 11
1.5.6 并發(fā)控制 11
1.5.7 備份和恢復設備 12
1.5.8 數(shù)據(jù)安全性 12
1.5.9 性能分析工具 12
總結(jié) 12
關鍵術語表 13
思考題 13
問題和練習 14
第2章 數(shù)據(jù)庫管理系統(tǒng)的架構(gòu)與分類 15
2.1 DBMS的架構(gòu) 15
2.1.1 連接管理器和安全管理器 16
2.1.2 DDL編譯器 16
2.1.3 查詢處理器 16
2.1.4 存儲管理器 19
2.1.5 DBMS工具 20
2.1.6 DBMS接口 20
2.2 DBMS分類 21
2.2.1 基于數(shù)據(jù)模型的分類 21
2.2.2 基于同步訪問的分類 23
2.2.3 基于架構(gòu)的分類 23
2.2.4 基于使用方法的分類 24
總結(jié) 25
關鍵術語表 26
思考題 26
問題和練習 28
第3章 使用(E)ER模型和UML類圖進行概念數(shù)據(jù)建模 29
3.1 數(shù)據(jù)庫設計階段 29
3.2 實體關系模型 30
3.2.1 實體類型 31
3.2.2 屬性類型 31
3.2.3 關系類型 32
3.2.4 弱實體類型 36
3.2.5 三元關系類型 36
3.2.6 ER模型示例 38
3.2.7 ER模型的局限性 40
3.3 擴展的實體關系模型 40
3.3.1 特化/泛化 41
3.3.2 分類 42
3.3.3 聚集 43
3.3.4 EER模型的示例 43
3.3.5 設計EER模型 44
3.4 UML類圖 45
3.4.1 面向?qū)ο蟾攀? 45
3.4.2 類 45
3.4.3 變量 46
3.4.4 訪問修飾符 46
3.4.5 關聯(lián) 47
3.4.6 特化/泛化 49
3.4.7 聚集 49
3.4.8 UML示例 49
3.4.9 高級UML建模概念 50
3.4.10 UML與EER的對比 52
總結(jié) 53
關鍵術語表 56
思考題 56
問題和練習 59
第4章 數(shù)據(jù)管理的組織方面 62
4.1 數(shù)據(jù)管理 62
4.1.1 目錄和元數(shù)據(jù)的作用 62
4.1.2 元數(shù)據(jù)建模 63
4.1.3 數(shù)據(jù)質(zhì)量 63
4.1.4 數(shù)據(jù)治理 67
4.2 數(shù)據(jù)管理中的角色 68
4.2.1 信息架構(gòu)師 68
4.2.2 數(shù)據(jù)庫設計師 68
4.2.3 數(shù)據(jù)所有者 68
4.2.4 數(shù)據(jù)管理員 68
4.2.5 數(shù)據(jù)庫管理員 69
4.2.6 數(shù)據(jù)科學家 69
總結(jié) 69
關鍵術語表 70
思考題 70
問題和練習 70
第二部分 數(shù)據(jù)庫系統(tǒng)類型
第5章 傳統(tǒng)數(shù)據(jù)庫 72
5.1 分層模型 72
5.2 CODASYL模型 75
總結(jié) 79
關鍵術語表 79
思考題 80
問題和練習 80
第6章 關系數(shù)據(jù)庫:關系模型 81
6.1 關系模型 81
6.1.1 基本概念 82
6.1.2 正式定義 83
6.1.3 鍵的類型 84
6.1.4 關系約束 86
6.1.5 關系數(shù)據(jù)模型的示例 87
6.2 規(guī)范化 88
6.2.1 非規(guī)范化關系模型中的插入、刪除和更新異常 88
6.2.2 非正式的規(guī)范化準則 89
6.2.3 函數(shù)依賴和主屬性類型 90
6.2.4 規(guī)范化形式 90
6.3 將概念ER模型映射到關系模型 96
6.3.1 實體類型映射 96
6.3.2 關系類型映射 97
6.3.3 多值屬性類型映射 103
6.3.4 弱實體類型映射 103
6.3.5 小結(jié) 104
6.4 將概念EER模型映射到關系模型 105
6.4.1 EER特化映射 106
6.4.2 EER類別映射 107
6.4.3 EER聚集映射 108
總結(jié) 109
關鍵術語表 110
思考題 110
問題和練習 114
第7章 關系數(shù)據(jù)庫:結(jié)構(gòu)化查詢語言 116
7.1 關系數(shù)據(jù)庫管理系統(tǒng)和SQL 116
7.1.1 SQL的關鍵特征 116
7.1.2 三層數(shù)據(jù)庫架構(gòu) 118
7.2 SQL數(shù)據(jù)定義語言 119
7.2.1 DDL的關鍵概念 119
7.2.2 DDL的示例 120
7.2.3 參照完整性約束 123
7.2.4 DROP和ALTER命令 123
7.3 SQL數(shù)據(jù)操作語言 125
7.3.1 SQL SELECT語句 125
7.3.2 SQL INSERT語句 149
7.3.3 SQL DELETE語句 149
7.3.4 SQL UPDATE語句 150
7.4 SQL視圖 152
7.5 SQL索引 154
7.6 SQL權(quán)限 155
7.7 用于元數(shù)據(jù)管理的SQL 156
總結(jié) 157
關鍵術語表 159
思考題 160
問題和練習 167
第8章 面向?qū)ο蟮臄?shù)據(jù)庫以及對象持久性 169
8.1 概述:OO的基本概念 169
8.2 OO的高級概念 171
8.2.1 方法重載 171
8.2.2 繼承 171
8.2.3 方法重寫 173
8.2.4 多態(tài)和動態(tài)綁定 173
8.3 對象持久性的基本原則 175
8.4 面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng) 176
8.4.1 對象標識符 177
8.4.2 ODMG標準 177
8.4.3 對象模型 178
8.4.4 對象定義語言 178
8.4.5 對象查詢語言 181
8.4.6 語言綁定 183
8.5 評估OODBMS 185
總結(jié) 186
關鍵術語表 186
思考題 187
問題和練習 188
第9章 擴展關系數(shù)據(jù)庫 189
9.1 關系模型的局限性 189
9.2 RDBMS主動拓展 190
9.2.1 觸發(fā)器 190
9.2.2 存儲過程 192
9.3 對象-關系型RDBMS擴展 193
9.3.1 用戶定義類型 194
9.3.2 用戶定義函數(shù) 197
9.3.3 繼承 198
9.3.4 行為 200
9.3.5 多態(tài)性 201
9.3.6 集合類型 201
9.3.7 大對象 203
9.4 遞歸的SQL查詢 203
總結(jié) 205
關鍵術語表 206
思考題 207
問題和練習 208
第10章 XML數(shù)據(jù)庫 209
10.1 可擴展標記語言 209
10.1.1 基本概念 210
10.1.2 文檔類型定義和XMLSchema定義 213
10.1.3 可擴展樣式表語言 216
10.1.4 命名空間 219
10.1.5 XPath 219
10.2 處理XML文檔 220
10.3 存儲XML文檔 221
10.3.1 面向文檔的XML文檔存儲方法 222
10.3.2 面向數(shù)據(jù)的XML文檔存儲方法 222
10.3.3 存儲XML文檔的組合方法 222
10.4 XML數(shù)據(jù)和關系數(shù)據(jù)之間的差異 223
10.5 XML文檔和(對象-)關系數(shù)據(jù)之間的映射 223
10.5.1 基于表的映射 223
10.5.2 模式無關的映射 224
10.5.3 模式感知的映射 226
10.5.4 SQL/XML 227
10.6 搜索XML數(shù)據(jù) 230
10.6.1 全文搜索 231
10.6.2 基于關鍵字的搜索 231
10.6.3 XQuery的結(jié)構(gòu)化搜索 231
10.6.4 使用RDF和SPARQL進行語義搜索 232
10.7 用于信息交換的XML 234
10.7.1 面向消息的中間件 235
10.7.2 基于SOAP的Web服務 235
10.7.3 基于REST的Web服務 238
10.7.4 Web服務和數(shù)據(jù)庫 239
10.8 其他數(shù)據(jù)表示格式 239
總結(jié) 243
關鍵術語表 245
思考題 246
問題和練習 247
第11章 NoSQL數(shù)據(jù)庫 249
11.1 NoSQL運動 249
11.1.1 “一體適用”時代的終結(jié)? 249
11.1.2 NoSQL運動的出現(xiàn) 250
11.2 鍵-值存儲 252
11.2.1 從鍵到哈希 252
11.2.2 水平擴展 253
11.2.3 實例:Memcached 254
11.2.4 請求協(xié)調(diào)器 256
11.2.5 一致性哈希 256
11.2.6 復制和冗余 258
11.2.7 最終一致性 259
11.2.8 穩(wěn)定化 260
11.2.9 完整性約束和查詢 261
11.3 元組和文檔存儲 261
11.3.1 帶鍵的項 262
11.3.2 過濾和查詢 263
11.3.3 使用MapReduce進行復雜查詢和聚合 266
11.3.4 SQL畢竟…… 275
11.4 面向列的數(shù)據(jù)庫 276
11.5 基于圖的數(shù)據(jù)庫 277
11.5.1 Cypher概述 279
11.5.2 探索社交圖譜 280
11.6 其他NoSQL類別 285
總結(jié) 286
關鍵術語表 287
思考題 288
問題和練習 289
第三部分 物理數(shù)據(jù)存儲、
事務管理和數(shù)據(jù)庫訪問
第12章 物理文件組織和索引 292
12.1 存儲硬件和物理數(shù)據(jù)庫設計 292
12.1.1 存儲層次結(jié)構(gòu) 292
12.1.2 硬盤驅(qū)動器的內(nèi)部結(jié)構(gòu) 293
12.1.3 從邏輯概念到物理結(jié)構(gòu) 296
12.2 記錄組織 298
12.3 文件組織 300
12.3.1 基本概念:搜索鍵、主文件和輔助文件組織 300
12.3.2 堆文件組織 301
12.3.3 順序文件組織 301
12.3.4 隨機文件組織(哈希) 302
12.3.5 索引順序文件組織 306
12.3.6 列表數(shù)據(jù)組織(線性與非線性表) 310
12.3.7 輔助索引和倒排文件 313
12.3.8 B-樹和B+-樹 318
總結(jié) 322
關鍵術語表 323
思考題 324
問題和練習 325
第13章 物理數(shù)據(jù)庫組織 326
13.1 物理數(shù)據(jù)庫組織和數(shù)據(jù)庫訪問方法 326
13.1.1 從數(shù)據(jù)庫到表空間 327
13.1.2 索引設計 328
13.1.3 數(shù)據(jù)庫訪問方法 330
13.1.4 連接操作 337
13.2 企業(yè)存儲子系統(tǒng)和業(yè)務連續(xù)性 338
13.2.1 磁盤陣列和RAID 339
13.2.2 企業(yè)存儲子系統(tǒng) 341
13.2.3 業(yè)務連續(xù)性 347
總結(jié) 350
關鍵術語表 351
思考題 351
問題和練習 353
第14章 事務管理基礎 354
14.1 事務、恢復和并發(fā)控制 354
14.2 事務和事務管理 355
14.2.1 描述事務和事務生命周期 355
14.2.2 涉及事務管理的DBMS組件 356
14.2.3 日志文件 357
14.3 恢復 358
14.3.1 故障類型 358
14.3.2 系統(tǒng)恢復 359
14.3.3 介質(zhì)恢復 360
14.4 并發(fā)控制 361
14.4.1 典型的并發(fā)性問題 361
14.4.2 調(diào)度和串行調(diào)度 363
14.4.3 可串行化調(diào)度 363
14.4.4 樂觀和悲觀調(diào)度器 365
14.4.5 鎖和鎖協(xié)議 365
14.5 事務的ACID屬性 371
總結(jié) 372
關鍵術語表 372
思考題 373
問題和練習 375
第15章 數(shù)據(jù)庫訪問和數(shù)據(jù)庫API 376
15.1 數(shù)據(jù)庫系統(tǒng)的架構(gòu) 376
15.1.1 集中式系統(tǒng)架構(gòu) 376
15.1.2 分層架構(gòu) 377
15.2 數(shù)據(jù)庫API的分類 379
15.2.1 專有與通用API 380
15.2.2 嵌入式與調(diào)用級API 380
15.2.3 早期綁定與晚期綁定 381
15.3 通用數(shù)據(jù)庫API 382
15.3.1 ODBC 382
15.3.2 OLE DB和ADO 383
15.3.3 ADO.NET 384
15.3.4 Java數(shù)據(jù)庫連接 387
15.3.5 插曲:SQL注入與訪問安全 392
15.3.6 SQLJ 393
15.3.7 插曲:嵌入式API與嵌入式DBMS 395
15.3.8 語言集成查詢 396
15.4 對象持久性和對象關系映射API 398
15.4.1 使用Enterprise JavaBeans的對象持久性 398
15.4.2 使用Java持久性 API實現(xiàn)對象持久性 402
15.4.3 使用Java數(shù)據(jù)對象的對象持久性 407
15.4.4 其他宿主語言中的對象持久性 410
15.5 數(shù)據(jù)庫API總結(jié) 414
15.6 萬維網(wǎng)中的數(shù)據(jù)庫訪問 416
15.6.1 最初的Web服務器 416
15.6.2 通用網(wǎng)關接口:面向動態(tài)網(wǎng)頁 416
15.6.3 客戶端腳本:對更豐富Web的渴望 418
15.6.4 作為平臺的JavaScript 419
15.6.5 DBMS自適應:REST、其他Web服務和展望 421
總結(jié) 423
關鍵術語表 424
思考題 424
問題和練習 426
第16章 數(shù)據(jù)分布和分布式事務管理 427
16.1 分布式系統(tǒng)和分布式數(shù)據(jù)庫 427
16.2 分布式數(shù)據(jù)庫的架構(gòu)規(guī)則 428
16.3 分割、分配和復制 430
16.3.1 垂直分割 430
16.3.2 水平分割(分片) 431
16.3.3 混合分割 431
16.3.4 復制 433
16.3.5 元數(shù)據(jù)的分布和復制 433
16.4 透明性 434
16.5 分布式查詢處理 435
16.6 分布式事務管理和并發(fā)控制 437
16.6.1 主站點和主副本2PL 437
16.6.2 分布式2PL 438
16.6.3 兩階段提交協(xié)議 439
16.6.4 樂觀并發(fā)和松耦合系統(tǒng) 441
16.6.5 基于補償?shù)氖聞漳P? 442
16.7 最終一致性和BASE事務 445
16.7.1 水平分割和一致性哈希 445
16.7.2 CAP定理 445
16.7.3 BASE事務 446
16.7.4 多版本并發(fā)控制和向量時鐘 447
16.7.5 基于Quorum的一致性 448
總結(jié) 450
關鍵術語表 451
思考題 451
問題和練習 452
第四部分 數(shù)據(jù)倉庫、數(shù)據(jù)治理
和大數(shù)據(jù)分析
第17章 數(shù)據(jù)倉庫與商務智能 454
17.1 操作與戰(zhàn)術/戰(zhàn)略決策 454
17.2 數(shù)據(jù)倉庫定義 455
17.3 數(shù)據(jù)倉庫模式 457
17.3.1 星形模式 457
17.3.2 雪花模式 458
17.3.3 事實星座模式 458
17.3.4 特定的模式問題 459
17.4 抽取、轉(zhuǎn)換和加載過程 465
17.5 數(shù)據(jù)集市 467
17.6 虛擬數(shù)據(jù)倉庫和虛擬數(shù)據(jù)集市 468
17.7 操作數(shù)據(jù)存儲 469
17.8 數(shù)據(jù)倉庫與數(shù)據(jù)湖 469
17.9 商務智能 470
17.9.1 查詢和報告 471
17.9.2 數(shù)據(jù)透視表 471
17.9.3 聯(lián)機分析處理 471
總結(jié) 479
關鍵術語表 480
思考題 481
問題和練習 483
第18章 數(shù)據(jù)集成、數(shù)據(jù)質(zhì)量和數(shù)據(jù)治理 485
18.1 數(shù)據(jù)與流程集成 485
18.1.1 分析型和操作型數(shù)據(jù)需求的融合 486
18.1.2 數(shù)據(jù)集成和數(shù)據(jù)集成模式 487
18.1.3 數(shù)據(jù)和流程集成中的數(shù)據(jù)服務和數(shù)據(jù)流 494
18.2 搜索非結(jié)構(gòu)化數(shù)據(jù)和企業(yè)搜索 500
18.2.1 全文搜索原理 500
18.2.2 索引全文文檔 501
18.2.3 網(wǎng)絡搜索引擎 502
18.2.4 企業(yè)搜索 504
18.3 數(shù)據(jù)質(zhì)量和主數(shù)據(jù)管理 505
18.4 數(shù)據(jù)治理 506
18.4.1 全面數(shù)據(jù)質(zhì)量管理 507
18.4.2 能力成熟度模型集成 507
18.4.3 數(shù)據(jù)管理知識體系 508
18.4.4 信息和相關技術的控制目標 508
18.4.5 信息技術基礎架構(gòu)庫 508
18.5 展望 508
總結(jié) 509
關鍵術語表 509
思考題 510
問題和練習 511
第19章 大數(shù)據(jù) 513
19.1 大數(shù)據(jù)的5個V 513
19.2 Hadoop 516
19.2.1 Hadoop的歷史 516
19.2.2 Hadoop堆棧 517
19.3 Hadoop中的SQL 528
19.3.1 HBase:Hadoop上的第一個數(shù)據(jù)庫 528
19.3.2 Pig 533
19.3.3 Hive 533
19.4 Apache Spark 536
19.4.1 Spark Core 536
19.4.2 Spark SQL 538
19.4.3 MLlib、Spark Streaming和GraphX 540
總結(jié) 541
關鍵術語表 542
思考題 543
問題和練習 544
第20章 分析學 546
20.1 分析過程模型 546
20.2 分析應用程序?qū)嵗? 548
20.3 數(shù)據(jù)科學家職務簡介 549
20.4 數(shù)據(jù)預處理 550
20.4.1 用于分析的去規(guī)范化數(shù)據(jù) 550
20.4.2 抽樣 551
20.4.3 探索性分析 551
20.4.4 缺失值 552
20.4.5 異常值檢測和處理 553
20.5 分析的類型 553
20.5.1 預測性分析 553
20.5.2 評估預測模型 560
20.5.3 描述性分析 566
20.5.4 社交網(wǎng)絡分析 570
20.6 分析模型的后處理 574
20.7 分析模型成功的關鍵因素 575
20.8 分析中的經(jīng)濟學視角 576
20.8.1 總所有權(quán)成本 576
20.8.2 投資回報 576
20.8.3 內(nèi)包與外包 577
20.8.4 本地解決方案與云解決方案 578
20.8.5 開源軟件與商業(yè)軟件 579
20.9 提高分析的投資回報率 580
20.9.1 新的數(shù)據(jù)來源 580
20.9.2 數(shù)據(jù)質(zhì)量 582
20.9.3 管理支持 583
20.9.4 組織因素 584
20.9.5 交叉應用 584
20.10 隱私和安全 585
20.10.1 關于隱私和安全的總體考慮 585
20.10.2 RACI矩陣 586
20.10.3 訪問內(nèi)部數(shù)據(jù) 587
20.10.4 隱私條例 591
總結(jié) 592
關鍵術語表 593
思考題 594
問題和練習 597
附錄 使用在線環(huán)境