大數(shù)據(jù)導(dǎo)論 思維、技術(shù)與應(yīng)用
定 價(jià):49.8 元
- 作者:武志學(xué)
- 出版時(shí)間:2019/4/1
- ISBN:9787115504852
- 出 版 社:人民郵電出版社
- 中圖法分類:TP274
- 頁(yè)碼:244
- 紙張:
- 版次:01
- 開本:16開
本書將基本概念與實(shí)例相結(jié)合,由淺入深、循序漸進(jìn)地對(duì)大數(shù)據(jù)思維、技術(shù)和應(yīng)用做了全面系統(tǒng)的介紹。全書共12章,分為大數(shù)據(jù)基礎(chǔ)篇、大數(shù)據(jù)存儲(chǔ)篇、大數(shù)據(jù)處理篇、大數(shù)據(jù)挖掘篇和大數(shù)據(jù)應(yīng)用篇。
大數(shù)據(jù)基礎(chǔ)篇的內(nèi)容涵蓋了大數(shù)據(jù)思維理念、大數(shù)據(jù)的產(chǎn)生與作用、大數(shù)據(jù)基本概念、大數(shù)據(jù)采集工具Flume和Scribe、大數(shù)據(jù)爬蟲工具Nutch和Scapy、大數(shù)據(jù)預(yù)處理工具Kettle、大數(shù)據(jù)處理架構(gòu)Hadoop;大數(shù)據(jù)存儲(chǔ)篇的內(nèi)容包含分布式文件存儲(chǔ)系統(tǒng)HDFS、海量數(shù)據(jù)存儲(chǔ)數(shù)據(jù)庫(kù)系統(tǒng)HBase和海量數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)Hive;大數(shù)據(jù)處理篇主要介紹了分布式并發(fā)計(jì)算批處理模式MapReduce,基于內(nèi)存的快速處理模式Spark,以及基于實(shí)時(shí)數(shù)據(jù)流的實(shí)時(shí)處理模式Spark Streaming;大數(shù)據(jù)挖掘篇主要對(duì)分類、預(yù)測(cè)、聚類和關(guān)聯(lián)等各類大數(shù)據(jù)挖掘算法的原理和使用場(chǎng)景進(jìn)行了描述,并使用Spark MLlib提供的機(jī)器學(xué)習(xí)算法進(jìn)行了實(shí)例講解;大數(shù)據(jù)應(yīng)用篇分別從大數(shù)據(jù)場(chǎng)景應(yīng)用的橫向和縱向出發(fā),介紹了大數(shù)據(jù)在各個(gè)功能領(lǐng)域的應(yīng)用場(chǎng)景和在各個(gè)行業(yè)的應(yīng)用場(chǎng)景。
(1)本書以基本概念與實(shí)例相結(jié)合的方法,由淺入深、循序漸進(jìn)地對(duì)大數(shù)據(jù)思維、技術(shù)和應(yīng)用做了全面系統(tǒng)的介紹。
(2)本書在每一個(gè)環(huán)節(jié)都配有與理論學(xué)習(xí)內(nèi)容相結(jié)合的案例介紹,還有使用Java和Python語(yǔ)言編寫的應(yīng)用實(shí)例,使讀者能夠在大數(shù)據(jù)平臺(tái)上通過(guò)實(shí)踐親身體驗(yàn)大數(shù)據(jù)處理和分析的過(guò)程,從而加快和加深對(duì)大數(shù)據(jù)理論和技術(shù)的理解。
(3)為了使讀者方便檢驗(yàn)和復(fù)習(xí)鞏固學(xué)習(xí)到的知識(shí),本書每章后面都配有豐富的作業(yè)供學(xué)生完成。
武志學(xué),劍橋大學(xué)博士,曾任思杰(Citrix)公司主任研究員、成都國(guó)騰實(shí)業(yè)集團(tuán)CTO、電子科技大學(xué)成都學(xué)院云計(jì)算科學(xué)與技術(shù)系第一任系主任,F(xiàn)任洛陽(yáng)汽車工業(yè)大學(xué)副校長(zhǎng)兼人工智能學(xué)院院長(zhǎng)、成都信息工程大學(xué)大數(shù)據(jù)與安全工程中心主任、成都鼎晟數(shù)智科技有限公司董事長(zhǎng)。兼任四川省云計(jì)算產(chǎn)業(yè)聯(lián)盟副主任、四川省高性能計(jì)算專家委員會(huì)副主任委員、成都市軟件行業(yè)協(xié)會(huì)專家委員會(huì)委員。
云計(jì)算開源平臺(tái)OpenStack頂層設(shè)計(jì)者之一,發(fā)表國(guó)際會(huì)議和期刊論文20多篇 ,獲得相關(guān)專利20余項(xiàng),編寫云計(jì)算、大數(shù)據(jù)圖書4部,大數(shù)據(jù)在線培訓(xùn)平臺(tái)“志學(xué)課堂” 發(fā)起人。
第 一部分 大數(shù)據(jù)基礎(chǔ)篇
第 1章 大數(shù)據(jù)思維 2
1.1 什么是大數(shù)據(jù) 2
1.2 從IT時(shí)代到大數(shù)據(jù)時(shí)代 4
1.3 大數(shù)據(jù)的產(chǎn)生與作用 5
1.3.1 大數(shù)據(jù)的產(chǎn)生 6
1.3.2 大數(shù)據(jù)的作用 6
1.4 大數(shù)據(jù)時(shí)代的新理念 7
1.4.1 對(duì)研究范式的新認(rèn)識(shí):從第三范式到第四范式 7
1.4.2 對(duì)數(shù)據(jù)重要性的新認(rèn)識(shí):從數(shù)據(jù)資源到數(shù)據(jù)資產(chǎn) 8
1.4.3 對(duì)方法論的新認(rèn)識(shí):從基于知識(shí)到基于數(shù)據(jù) 9
1.4.4 對(duì)數(shù)據(jù)分析的新認(rèn)識(shí):從統(tǒng)計(jì)學(xué)到數(shù)據(jù)科學(xué) 9
1.4.5 對(duì)計(jì)算智能的新認(rèn)識(shí):從復(fù)雜算法到簡(jiǎn)單算法 10
1.4.6 對(duì)管理目標(biāo)的新認(rèn)識(shí):從業(yè)務(wù)數(shù)據(jù)化到數(shù)據(jù)業(yè)務(wù)化 11
1.4.7 對(duì)決策方式的新認(rèn)識(shí):從目標(biāo)驅(qū)動(dòng)型到數(shù)據(jù)驅(qū)動(dòng)型 12
1.4.8 對(duì)產(chǎn)業(yè)競(jìng)合關(guān)系的新認(rèn)識(shí):從以戰(zhàn)略為中心到以數(shù)據(jù)為中心 12
1.4.9 對(duì)數(shù)據(jù)復(fù)雜性的新認(rèn)識(shí):從不接受到接受數(shù)據(jù)的復(fù)雜性 13
1.4.10 對(duì)數(shù)據(jù)處理模式的新認(rèn)識(shí):從小眾參與到大眾協(xié)同 14
1.5 總結(jié) 14
習(xí)題 14
第 2章 大數(shù)據(jù)技術(shù)概述 15
2.1 大數(shù)據(jù)處理的基本流程 15
2.1.1 數(shù)據(jù)抽取與集成 16
2.1.2 數(shù)據(jù)分析 16
2.1.3 數(shù)據(jù)解釋 16
2.2 大數(shù)據(jù)關(guān)鍵技術(shù) 17
2.2.1 大數(shù)據(jù)采集技術(shù) 17
2.2.2 大數(shù)據(jù)預(yù)處理技術(shù) 17
2.2.3 大數(shù)據(jù)存儲(chǔ)及管理技術(shù) 18
2.2.4 大數(shù)據(jù)處理 19
2.2.5 大數(shù)據(jù)分析及挖掘技術(shù) 19
2.2.6 大數(shù)據(jù)展示技術(shù) 20
2.3 總結(jié) 21
習(xí)題 21
第3章 大數(shù)據(jù)采集 22
3.1 大數(shù)據(jù)采集概述 22
3.1.1 大數(shù)據(jù)分類 22
3.1.2 大數(shù)據(jù)采集方法分類 23
3.2 系統(tǒng)日志采集方法 24
3.2.1 Flume的基本概念 24
3.2.2 Flume使用方法 25
3.2.3 Flume應(yīng)用案例 26
3.3 網(wǎng)絡(luò)數(shù)據(jù)采集方法 27
3.3.1 網(wǎng)絡(luò)爬蟲原理 27
3.3.2 網(wǎng)絡(luò)爬蟲工作流程 28
3.3.3 網(wǎng)絡(luò)爬蟲抓取策略 28
3.3.4 Scrapy網(wǎng)絡(luò)爬蟲系統(tǒng) 32
3.3.5 小結(jié) 36
3.4 總結(jié) 36
習(xí)題 36
第4章 大數(shù)據(jù)預(yù)處理 37
4.1 大數(shù)據(jù)預(yù)處理概述 37
4.1.1 大數(shù)據(jù)預(yù)處理整體架構(gòu) 37
4.1.2 數(shù)據(jù)質(zhì)量問(wèn)題分類 38
4.1.3 大數(shù)據(jù)預(yù)處理方法 38
4.2 數(shù)據(jù)清洗 39
4.2.1 遺漏數(shù)據(jù)處理 40
4.2.2 噪聲數(shù)據(jù)處理 40
4.2.3 不一致數(shù)據(jù)處理 42
4.3 數(shù)據(jù)集成 42
4.4 數(shù)據(jù)轉(zhuǎn)換 42
4.5 數(shù)據(jù)消減 44
4.5.1 數(shù)據(jù)立方合計(jì) 44
4.5.2 維數(shù)消減 44
4.5.3 數(shù)據(jù)壓縮 45
4.5.4 數(shù)據(jù)塊消減 46
4.6 離散化和概念層次樹 48
4.6.1 數(shù)值概念層次樹 48
4.6.2 類別概念層次樹 49
4.7 ETL工具Kettle 50
4.7.1 ETL工具簡(jiǎn)介 51
4.7.2 安裝Kettle 51
4.7.3 Kettle的數(shù)據(jù)流處理 52
4.8 總結(jié) 55
習(xí)題 56
第5章 大數(shù)據(jù)處理系統(tǒng) 57
5.1 大數(shù)據(jù)技術(shù)概述 57
5.1.1 分布式計(jì)算 57
5.1.2 服務(wù)器集群 57
5.1.3 大數(shù)據(jù)的技術(shù)基礎(chǔ) 57
5.2 Google大數(shù)據(jù)處理系統(tǒng) 58
5.2.1 GFS 58
5.2.2 MapReduce 60
5.2.3 BigTable 60
5.3 Hadoop大數(shù)據(jù)處理系統(tǒng) 61
5.3.1 Hadoop系統(tǒng)簡(jiǎn)介 61
5.3.2 Hadoop生態(tài)圈 61
5.3.3 Hadoop版本演進(jìn) 63
5.3.4 Hadoop發(fā)行版本 63
5.4 總結(jié) 64
習(xí)題 64
第二部分 大數(shù)據(jù)存儲(chǔ)篇
第6章 大數(shù)據(jù)文件系統(tǒng)HDFS 66
6.1 HDFS簡(jiǎn)介 66
6.2 HDFS基本原理 66
6.2.1 文件系統(tǒng)的問(wèn)題 67
6.2.2 HDFS的基本思想 67
6.2.3 HDFS的設(shè)計(jì)理念 68
6.2.4 HDFS的局限 69
6.3 HDFS系統(tǒng)實(shí)現(xiàn) 69
6.3.1 HDFS整體架構(gòu) 69
6.3.2 HDFS數(shù)據(jù)復(fù)制 70
6.4 HDFS數(shù)據(jù)訪問(wèn)機(jī)制 71
6.4.1 讀取流程 71
6.4.2 寫入流程 72
6.5 HDFS操作 73
6.5.1 HDFS常用命令 73
6.5.2 HDFS的Web界面 74
6.5.3 HDFS的Java API 76
6.6 總結(jié) 78
習(xí)題 79
第7章 NOSQL數(shù)據(jù)庫(kù)HBASE 80
7.1 NoSQL概述 80
7.1.1 NoSQL的起因 80
7.1.2 NoSQL的特點(diǎn) 81
7.1.3 NoSQL數(shù)據(jù)庫(kù)面臨的挑戰(zhàn) 82
7.1.4 NoSQL的類型 82
7.2 HBase概述 86
7.3 HBase數(shù)據(jù)模型 87
7.3.1 數(shù)據(jù)模型概述 87
7.3.2 數(shù)據(jù)模型的基本概念 88
7.3.3 概念視圖 88
7.3.4 物理視圖 89
7.4 HBase命令行 90
7.4.1 一般操作 90
7.4.2 DDL操作 90
7.4.3 DML操作 91
7.4.4 HBase表實(shí)例 93
7.5 HBase的運(yùn)行機(jī)制 94
7.5.1 HBase的物理存儲(chǔ) 94
7.5.2 HBase的邏輯架構(gòu) 95
7.6 HBase的編程 96
7.6.1 HBase的常用Java API 96
7.6.2 HBase編程實(shí)例 98
7.7 總結(jié) 101
習(xí)題 101
第三部分 大數(shù)據(jù)處理篇
第8章 大數(shù)據(jù)批處理 HADOOP MAPREDUCE 103
8.1 MapReduce概述 103
8.1.1 批處理模式 103
8.1.2 MapReduce簡(jiǎn)釋 104
8.1.3 MapReduce基本思想 105
8.1.4 Map函數(shù)和Reduce函數(shù) 107
8.2 Hadoop MapReduce架構(gòu) 109
8.3 Hadoop MapReduce的工作流程 110
8.4 實(shí)例分析:?jiǎn)卧~計(jì)數(shù) 112
8.4.1 設(shè)計(jì)思路 112
8.4.2 處理過(guò)程 112
8.5 Hadoop MapReduce 的工作機(jī)制 113
8.5.1 Hadoop MapReduce作業(yè)執(zhí)行流程 114
8.5.2 Hadoop MapReduce的Shuffle階段 115
8.5.3 Hadoop MapReduce的主要特點(diǎn) 117
8.6 Hadoop MapReduce編程實(shí)戰(zhàn) 118
8.6.1 任務(wù)準(zhǔn)備 118
8.6.2 編寫Map程序 118
8.6.3 編寫Reduce程序 119
8.6.4 編寫main函數(shù) 121
8.6.5 核心代碼包 121
8.6.6 運(yùn)行代碼 122
8.7 總結(jié) 122
習(xí)題 122
第9章 大數(shù)據(jù)快速處理SPARK 124
9.1 Spark簡(jiǎn)介 124
9.1.1 Spark與Hadoop 124
9.1.2 Spark的適用場(chǎng)景 126
9.2 RDD概念 126
9.2.1 RDD的基本概念 126
9.2.2 RDD基本操作 127
9.2.3 RDD血緣關(guān)系 130
9.2.4 RDD依賴類型 130
9.2.5 階段劃分 131
9.2.6 RDD緩存 132
9.3 Spark運(yùn)行架構(gòu)和機(jī)制 133
9.3.1 Spark總體架構(gòu) 133
9.3.2 Spark運(yùn)行流程 134
9.4 Spark生態(tài)系統(tǒng) 135
9.5 Spark編程實(shí)踐 137
9.5.1 啟動(dòng)Spark Shell 137
9.5.2 Spark Shell使用 137
9.5.3 編寫Java應(yīng)用程序 138
9.6 總結(jié) 140
習(xí)題 140
第 10章 大數(shù)據(jù)實(shí)時(shí)流計(jì)算SPARK STREAMING 143
10.1 Spark Streaming簡(jiǎn)介 143
10.2 Spark Streaming的系統(tǒng)架構(gòu) 144
10.2.1 傳統(tǒng)流處理系統(tǒng)架構(gòu) 144
10.2.2 Spark Streaming系統(tǒng)架構(gòu) 145
10.2.3 動(dòng)態(tài)負(fù)載均衡 146
10.2.4 容錯(cuò)性 147
10.2.5 實(shí)時(shí)性、擴(kuò)展性與吞吐量 148
10.3 編程模型 149
10.3.1 DStream的操作流程 149
10.3.2 Spark Streaming使用 149
10.3.3 DStream的輸入源 150
10.4 DStream的操作 151
10.4.1 普通的轉(zhuǎn)換操作 151
10.4.2 窗口轉(zhuǎn)換操作 153
10.4.3 輸出操作 154
10.4.4 持久化 155
10.5 編程實(shí)戰(zhàn) 155
10.5.1 流數(shù)據(jù)模擬器 155
10.5.2 實(shí)例1:讀取文件演示 156
10.5.3 實(shí)例2:網(wǎng)絡(luò)數(shù)據(jù)演示 157
10.5.4 實(shí)例3:Stateful演示 158
10.5.5 實(shí)例4:窗口演示 159
10.6 總結(jié) 160
習(xí)題 161
第四部分 大數(shù)據(jù)挖掘篇
第 11章 大數(shù)據(jù)挖掘 16311.1 數(shù)據(jù)挖掘概述 163
11.1.1 什么是數(shù)據(jù)挖掘 163
11.1.2 數(shù)據(jù)挖掘的價(jià)值類型 164
11.1.3 數(shù)據(jù)挖掘算法的類型 165
11.2 Spark MLlib簡(jiǎn)介 166
11.2.1 Spark MLlib的構(gòu)成 166
11.2.2 Spark MLlib的優(yōu)勢(shì) 166
11.3 分類和預(yù)測(cè) 166
11.3.1 分類的基本概念 167
11.3.2 預(yù)測(cè)的基本概念 168
11.3.3 決策樹算法 168
11.3.4 樸素貝葉斯算法 172
11.3.5 回歸分析 175
11.3.6 小結(jié) 180
11.4 聚類分析 180
11.4.1 基本概念 180
11.4.2 聚類分析方法的類別 181
11.4.3 k-means聚類算法 184
11.4.4 DBSCAN聚類算法 187
11.4.5 小結(jié) 190
11.5 關(guān)聯(lián)分析 191
11.5.1 概述 191
11.5.2 基本概念 191
11.5.3 關(guān)聯(lián)分析步驟 192
11.5.4 Apriori關(guān)聯(lián)分析算法 193
11.5.5 FP-Tree關(guān)聯(lián)分析算法 194
11.5.6 小結(jié) 199
11.6 總結(jié) 200
習(xí)題 200
第五部分 大數(shù)據(jù)應(yīng)用篇
第 12章 大數(shù)據(jù)應(yīng)用 205
12.1 大數(shù)據(jù)功能應(yīng)用 205
12.1.1 基于大數(shù)據(jù)的精準(zhǔn)營(yíng)銷 205
12.1.2 基于大數(shù)據(jù)的個(gè)性化推薦 208
12.1.3 大數(shù)據(jù)預(yù)測(cè) 215
12.1.4 大數(shù)據(jù)的其他應(yīng)用領(lǐng)域 219
12.1.5 小結(jié) 221
12.2 大數(shù)據(jù)行業(yè)應(yīng)用 221
12.2.1 大數(shù)據(jù)行業(yè)應(yīng)用概述 221
12.2.2 金融行業(yè)大數(shù)據(jù) 222
12.2.3 互聯(lián)網(wǎng)行業(yè)的大數(shù)據(jù)應(yīng)用 229
12.2.4 物流行業(yè)大數(shù)據(jù)應(yīng)用 235
12.2.5 小結(jié) 242
12.3 總結(jié) 243
習(xí)題 243