《雲計算環境下Spark大數據處理技術與實踐》是2017年9月清華大學出版社出版的圖書,作者是鄧立國、佟強。
基本介紹
- 書名:雲計算環境下Spark大數據處理技術與實踐
- 作者:鄧立國
佟強 - ISBN:9787302479710
- 定價:69元
- 出版社:清華大學出版社
- 出版時間:2017年9月
內容簡介,圖書目錄,
內容簡介
本書圍棄煮汗繞網際網路重大的技術革命:雲寒循坑照計算、大數據進行闡述。雲計算環境下大數據處理構建是國民經濟發展的信息基礎設施,發展自主的雲計算核心技術,擁有自己的信息基礎設施,當前正處於重要的機遇期。
本書重點在大數據與雲計算的融合,給出了大數據與雲計算的一些基本概念,並以Spark為開翻陵發工具,全面講述雲環境下的Spark大數據技術部署與只項奔體典型案例算法實現,最後介紹了國內經典Spark大數據與雲計算融合的架構與算法。
本書適合拳遷潤雲計算環境駝員付下Spark大數據技術人員、Spark MLlib機器學習技術人員,也適合高等院校和培訓機構相關專業的師生教學參考。
圖書目錄
第1章 大數據處理概述 1
1.1 大數據處理技術概述 1
1.1.1 什麼是大數據 1
1.1.2 大數據來源 2
1.1.3 大數據套用價值 3
1.1.4 大數據技術特點和研究內容 4
1.1.5 大數據計算與系統 5
1.2 數據挖掘及其相關領域套用 9
1.2.1 數據挖掘概述 9
1.2.2 數據挖掘與機器學習 11
1.2.3 數據挖掘與資料庫 11
1.2.4 數據挖掘與統計學 12
1.2.5 數據挖掘與決策支持 12
1.2.6 數據挖掘與雲計算 13
1.3 大數據套用 13
1.3.1 大數據套用案例 13
1.3.2 大數據套用場景 14
1.3.3 大數據套用平台方案案例 21
1.4 並行計算簡介 23
1.5 Hadoop介紹 24
1.6 本章小結 26
第2章 雲計算時代 27
2.1 雲計算概述 27
2.1.1 雲計算概念 27
2.1.2 雲計算發展簡史 28
2.1.3 雲計算實現機制 30
2.1.4 雲計算服務形式 31
2.1.5 雲計算時代的資料庫NoSQL 32
2.2 雲計算發展動力源泉 34
2.3 雲計算技術分析 34
2.3.1 編程模式 34
2.3.2 海量數據云存儲技術 37
2.3.3 海量數據管理技術 38
2.3.4 虛擬化技術 39
2.3.5 分散式計算 41
2.3.6 雲監測技術 41
2.4 並行歡影閥計算與雲計算關係 43
2.4.1 並行計算與雲計算 44
2.4.2 MapReduce 45
2.5 雲計算發展優勢 51
2.6 向雲實現遷移 53
2.7 本章小結 55
第3章 大數據與雲計算關係 56
3.1 雲計算與大數據關係 56
3.2 大數據與雲計算的融合是認識世界的新工具 57
3.3 大數據隱私保護是大數據云快速發展和運用的重要前提 59
3.3.1 雲計算的安全隱私 60
3.3.2 大數據的安全隱私 60
3.4 大數據成就雲計算價值 62
3.5 數據向雲計算遷移 63
3.6 大數據清洗 64
3.7 雲計算時代的數據集成技術 66
3.8 雲推薦 67
3.9 本章小結 68
第4章 Spark大數據處理基礎 69
4.1 Spark大數據處理技術 69
4.1.1 Spark系統概述 69
4.1.2 Spark生態系統BDAS(伯利克分析棧) 70
4.1.3 Spark的用武之地 71
4.1.4 Spark大數據處理框架 72
4.1.5 Spark運行模式分類及術語 73
4.2 Spark 2.0.0安裝配置 74
4.2.1 在Linux集群上安裝與配置Spark 74
4.2.2 Spark Shell 81
4.2.3 Spark RDD 88
4.2.4 Shark(Hive on Spark大型的數據倉庫系統) 91
4.3 Spark配置 92
4.3.1 環境變數 92
4.3.2 系統屬性 93
4.3.3 配置日誌 95
4.3.4 Spark 硬體配置 95
4.4 Spark模式部署概述 96
4.5 Spark Streaming實時計算框架 98
4.6 Spark SQL 查詢、DataFrames分散式數據集和Datasets API 101
4.7 Spark起始點 102
4.7.1 SparkSession 102
4.7.2 SQLContext 103
4.7.3 創建DataFrame 104
4.7.4 無類型的Dataset操作(aka DataFrame Operations) 105
4.7.5 編程執行SQL查詢語句 111
4.7.6 創建Dataset 112
4.7.7 和RDD互操作 115
4.8 Spark數據源 125
4.8.1 通用載入/保存函式 125
4.8.2 Parquet檔案 127
4.8.3 JSON數據集 135
4.8.4 Hive表 136
4.8.5 用JDBC連線其他資料庫 143
4.9 Spark性能調優 144
4.10 分散式SQL引擎 145
4.11 本章小結 146
第5章 Spark MLlib機器學習算法實現 147
5.1 Spark MLlib基礎 147
5.1.1 機器學習 148
5.1.2 機器學習分類 148
5.1.3 機器學習常見算法 149
5.1.4 Spark MLlib機器學習庫 152
5.1.5 基於Spark常用的算法舉例分析 156
5.2 Spark MLlib矩陣向量 159
5.2.1 Breeze創建函式 159
5.2.2 Breeze元素訪問 161
5.2.3 Breeze元素操作 162
5.2.4 Breeze數值計算函式 165
5.2.5 Breeze求和函式 166
5.2.6 Breeze布爾函式 167
5.2.7 Breeze線性代數函式 168
5.2.8 Breeze取整函式 169
5.2.9 Breeze三角函式 170
5.2.10 BLAS向量運算 170
5.3 Spark MLlib線性回歸算法 171
5.3.1 線性回歸算法理論基礎 171
5.3.2 線性回歸算法 172
5.3.3 Spark MLlib Linear Regression源碼分析 174
5.4 Spark MLlib邏輯回歸算法 183
5.4.1 邏輯回歸算法 184
5.4.2 Spark MLlib Logistic Regression源碼分析 186
5.5 Spark MLlib樸素貝葉斯分類算法 199
5.5.1 樸素貝葉斯分類算法 200
5.5.2 樸素貝葉斯Spark MLlib源碼 203
5.6 Spark MLlib決策樹算法 217
5.6.1 決策樹算法 217
5.6.2 決策樹實例 220
5.7 Spark MLlib KMeans聚類算法 227
5.7.1 KMeans聚類算法 227
5.7.2 Spark MLlib KMeans源碼分析 228
5.7.3 MLlib KMeans實例 235
5.8 Spark MLlib FPGrowth關聯規則算法 236
5.8.1 基本概念 236
5.8.2 FPGrowth算法 237
5.8.3 Spark MLlib FPGrowth源碼分析 241
5.9 Spark MLlib協同過濾推薦算法 244
5.9.1 協同過濾概念 244
5.9.2 相似度度量 245
5.9.3 協同過濾算法按照數據使用分類 246
5.9.4 Spark MLlib協同過濾算法實現 247
5.9.5 Spark MLlib電影評級推薦 252
5.10 Spark MLlib神經網路算法 261
5.11 本章小結 264
第6章 Spark大數據架構系統部署 265
6.1 大數據架構介紹 265
6.2 典型的商務使用場景 266
6.2.1 客戶行為分析 266
6.2.2 情緒分析 267
6.2.3 CRM Onboarding 267
6.2.4 預測 268
6.3 Spark三種分散式部署模式 268
6.3.1 Standalone模式 268
6.3.2 Spark On Mesos 模式 269
6.3.3 Spark On YARN模式 269
6.4 創建大數據架構 270
6.4.1 數據採集 270
6.4.2 數據接入 271
6.4.3 Spark流式計算 273
6.4.4 數據輸出 274
6.4.5 日誌攝取 274
6.4.6 機器學習 277
6.4.7 處理引擎 277
6.5 Spark單個機器集群部署 278
6.6 本章小結 280
第7章 Spark大數據處理案例分析 282
7.1 Spark on Amazon EMR 282
7.1.1 Amazon EMR 282
7.1.2 配置 Spark 283
7.1.3 以互動方式或批處理模式使用 Spark 284
7.1.4 使用 Spark 創建集群 285
7.1.5 訪問 Spark 外殼 286
7.1.6 添加 Spark 287
7.2 Spark在AWSKrux的套用 289
7.3 Spark在商業網站中的套用 290
7.4 Spark在Yahoo!的套用 291
7.5 Spark在Amazon EC2上運行 292
7.6 淘寶套用Spark on YARN架構 296
7.7 騰訊雲大數據解決方案 297
7.8 雅虎開源TensorFlowOnSpark 298
7.9 阿里雲E-MapReduce 301
7.10 SequoiaDB+Spark 打造一體化 大數據平台 304
7.11 本章小結 305
第8章 大數據發展展望 306
8.1 大數據未來發展趨勢 306
8.2 大數據給人類帶來的認知衝擊 307
8.3 未來大數據研究突破的技術問題 308
8.4 本章小結 309
附錄 Spark MLlib神經網路算法 312
參考文獻 338
3.9 本章小結 68
第4章 Spark大數據處理基礎 69
4.1 Spark大數據處理技術 69
4.1.1 Spark系統概述 69
4.1.2 Spark生態系統BDAS(伯利克分析棧) 70
4.1.3 Spark的用武之地 71
4.1.4 Spark大數據處理框架 72
4.1.5 Spark運行模式分類及術語 73
4.2 Spark 2.0.0安裝配置 74
4.2.1 在Linux集群上安裝與配置Spark 74
4.2.2 Spark Shell 81
4.2.3 Spark RDD 88
4.2.4 Shark(Hive on Spark大型的數據倉庫系統) 91
4.3 Spark配置 92
4.3.1 環境變數 92
4.3.2 系統屬性 93
4.3.3 配置日誌 95
4.3.4 Spark 硬體配置 95
4.4 Spark模式部署概述 96
4.5 Spark Streaming實時計算框架 98
4.6 Spark SQL 查詢、DataFrames分散式數據集和Datasets API 101
4.7 Spark起始點 102
4.7.1 SparkSession 102
4.7.2 SQLContext 103
4.7.3 創建DataFrame 104
4.7.4 無類型的Dataset操作(aka DataFrame Operations) 105
4.7.5 編程執行SQL查詢語句 111
4.7.6 創建Dataset 112
4.7.7 和RDD互操作 115
4.8 Spark數據源 125
4.8.1 通用載入/保存函式 125
4.8.2 Parquet檔案 127
4.8.3 JSON數據集 135
4.8.4 Hive表 136
4.8.5 用JDBC連線其他資料庫 143
4.9 Spark性能調優 144
4.10 分散式SQL引擎 145
4.11 本章小結 146
第5章 Spark MLlib機器學習算法實現 147
5.1 Spark MLlib基礎 147
5.1.1 機器學習 148
5.1.2 機器學習分類 148
5.1.3 機器學習常見算法 149
5.1.4 Spark MLlib機器學習庫 152
5.1.5 基於Spark常用的算法舉例分析 156
5.2 Spark MLlib矩陣向量 159
5.2.1 Breeze創建函式 159
5.2.2 Breeze元素訪問 161
5.2.3 Breeze元素操作 162
5.2.4 Breeze數值計算函式 165
5.2.5 Breeze求和函式 166
5.2.6 Breeze布爾函式 167
5.2.7 Breeze線性代數函式 168
5.2.8 Breeze取整函式 169
5.2.9 Breeze三角函式 170
5.2.10 BLAS向量運算 170
5.3 Spark MLlib線性回歸算法 171
5.3.1 線性回歸算法理論基礎 171
5.3.2 線性回歸算法 172
5.3.3 Spark MLlib Linear Regression源碼分析 174
5.4 Spark MLlib邏輯回歸算法 183
5.4.1 邏輯回歸算法 184
5.4.2 Spark MLlib Logistic Regression源碼分析 186
5.5 Spark MLlib樸素貝葉斯分類算法 199
5.5.1 樸素貝葉斯分類算法 200
5.5.2 樸素貝葉斯Spark MLlib源碼 203
5.6 Spark MLlib決策樹算法 217
5.6.1 決策樹算法 217
5.6.2 決策樹實例 220
5.7 Spark MLlib KMeans聚類算法 227
5.7.1 KMeans聚類算法 227
5.7.2 Spark MLlib KMeans源碼分析 228
5.7.3 MLlib KMeans實例 235
5.8 Spark MLlib FPGrowth關聯規則算法 236
5.8.1 基本概念 236
5.8.2 FPGrowth算法 237
5.8.3 Spark MLlib FPGrowth源碼分析 241
5.9 Spark MLlib協同過濾推薦算法 244
5.9.1 協同過濾概念 244
5.9.2 相似度度量 245
5.9.3 協同過濾算法按照數據使用分類 246
5.9.4 Spark MLlib協同過濾算法實現 247
5.9.5 Spark MLlib電影評級推薦 252
5.10 Spark MLlib神經網路算法 261
5.11 本章小結 264
第6章 Spark大數據架構系統部署 265
6.1 大數據架構介紹 265
6.2 典型的商務使用場景 266
6.2.1 客戶行為分析 266
6.2.2 情緒分析 267
6.2.3 CRM Onboarding 267
6.2.4 預測 268
6.3 Spark三種分散式部署模式 268
6.3.1 Standalone模式 268
6.3.2 Spark On Mesos 模式 269
6.3.3 Spark On YARN模式 269
6.4 創建大數據架構 270
6.4.1 數據採集 270
6.4.2 數據接入 271
6.4.3 Spark流式計算 273
6.4.4 數據輸出 274
6.4.5 日誌攝取 274
6.4.6 機器學習 277
6.4.7 處理引擎 277
6.5 Spark單個機器集群部署 278
6.6 本章小結 280
第7章 Spark大數據處理案例分析 282
7.1 Spark on Amazon EMR 282
7.1.1 Amazon EMR 282
7.1.2 配置 Spark 283
7.1.3 以互動方式或批處理模式使用 Spark 284
7.1.4 使用 Spark 創建集群 285
7.1.5 訪問 Spark 外殼 286
7.1.6 添加 Spark 287
7.2 Spark在AWSKrux的套用 289
7.3 Spark在商業網站中的套用 290
7.4 Spark在Yahoo!的套用 291
7.5 Spark在Amazon EC2上運行 292
7.6 淘寶套用Spark on YARN架構 296
7.7 騰訊雲大數據解決方案 297
7.8 雅虎開源TensorFlowOnSpark 298
7.9 阿里雲E-MapReduce 301
7.10 SequoiaDB+Spark 打造一體化 大數據平台 304
7.11 本章小結 305
第8章 大數據發展展望 306
8.1 大數據未來發展趨勢 306
8.2 大數據給人類帶來的認知衝擊 307
8.3 未來大數據研究突破的技術問題 308
8.4 本章小結 309
附錄 Spark MLlib神經網路算法 312
參考文獻 338