Spark編程基礎(Python版)

Spark編程基礎(Python版)

《Spark編程基礎(Python版)》是2020年4月人民郵電出版社出版的圖書,作者是林子雨。

基本介紹

  • 書名:Spark編程基礎(Python版)
  • 作者:林子雨
  • 出版社:人民郵電出版社
  • 出版時間:2020年4月
  • 頁數:250 頁
  • 定價:49.8 元
  • 開本:16 開
  • 裝幀:平裝
  • ISBN:9787115524393
內容簡介,圖書目錄,

內容簡介

本書以Python作為開發Spark應用程式的程式語言,系統介紹了Spark編程的基礎知識。全書共8章,內容包括大數據技術概述、Spark的設計與運行原理、Spark環境搭建和使用方法、RDD編程、Spark SQL、Spark Streaming、Structured Streaming、Spark MLlib等。

圖書目錄

第1 章 大數據技術概述 1
1.1 大數據概念與關鍵技術 2
1.1.1 大數據的概念 2
1.1.2 大數據關鍵技術 2
1.2 代表性大數據技術 4
1.2.1 Hadoop 4
1.2.2 Spark 8
1.2.3 Flink 10
1.2.4 Beam 11
1.3 程式語言的選擇 12
1.4 線上資源 13
1.5 本章小結 14
1.6 習題 14
實驗1 Linux 系統的安裝和常用命令 15
第2 章 Spark 的設計與運行原理 17
2.1 概述 18
2.2 Spark 生態系統 19
2.3 Spark 運行架構 21
2.3.1 基本概念 21
2.3.2 架構設計 21
2.3.3 Spark 運行基本流程 22
2.3.4 RDD 的設計與運行原理 24
2.4 Spark 的部署方式 33
2.5 本章小結 34
2.6 習題 34
第3 章 Spark 環境搭建和使用方法 35
3.1 安裝Spark 36
3.1.1 基礎環境 36
3.1.2 下載安裝檔案 36
3.1.3 配置相關檔案 38
3.1.4 驗證Spark 是否安裝成功 39
3.1.5 Spark 和Hadoop 的互動 39
3.2 在pyspark 中運行代碼 40
3.2.1 pyspark 命令 40
3.2.2 啟動pyspark 41
3.3 開發Spark 獨立應用程式 42
3.3.1 編寫程式 42
3.3.2 通過spark-submit 運行程式 43
3.4 Spark 集群環境搭建 44
3.4.1 集群概況 44
3.4.2 搭建Hadoop 集群 44
3.4.3 在集群中安裝Spark 45
3.4.4 配置環境變數 45
3.4.5 Spark 的配置 46
3.4.6 啟動Spark 集群 47
3.4.7 關閉Spark 集群 47
3.5 在集群上運行Spark 應用程式 48
3.5.1 啟動Spark 集群 48
3.5.2 採用獨立集群管理器 48
3.5.3 採用Hadoop YARN 管理器 49
3.6 本章小結 51
3.7 習題 51
實驗2 Spark 和Hadoop 的安裝 51
第4 章 RDD 編程 53
4.1 RDD 編程基礎 54
4.1.1 RDD 創建 54
4.1.2 RDD 操作 56
4.1.3 持久化 63
4.1.4 分區 64
4.1.5 一個綜合實例 69
4.2 鍵值對RDD 71
4.2.1 鍵值對RDD 的創建 71
4.2.2 常用的鍵值對轉換操作 72
4.2.3 一個綜合實例 78
4.3 數據讀寫 79
4.3.1 檔案數據讀寫 79
4.3.2 讀寫HBase 數據 82
4.4 綜合實例 86
4.4.1 求TOP 值 86
4.4.2 檔案排序 89
4.4.3 二次排序 91
4.5 本章小結 94
4.6 習題 95
實驗3 RDD 編程初級實踐 95
第5 章 Spark SQL 98
5.1 Spark SQL 簡介 99
5.1.1 從Shark 說起 99
5.1.2 Spark SQL 架構 100
5.1.3 為什麼推出Spark SQL 101
5.2 DataFrame 概述 101
5.3 DataFrame 的創建 102
5.4 DataFrame 的保存 103
5.5 DataFrame 的常用操作 104
5.6 從RDD 轉換得到DataFrame 105
5.6.1 利用反射機制推斷RDD 模式 106
5.6.2 使用編程方式定義RDD 模式 107
5.7 使用Spark SQL 讀寫資料庫 108
5.7.1 準備工作 109
5.7.2 讀取MySQL 資料庫中的數據 109
5.7.3 向MySQL 資料庫寫入數據 110
5.8 本章小結 111
5.9 習題 112
實驗4 Spark SQL 編程初級實踐 112
第6 章 Spark Streaming 115
6.1 流計算概述 116
6.1.1 靜態數據和流數據 116
6.1.2 批量計算和實時計算 117
6.1.3 流計算概念 117
6.1.4 流計算框架 118
6.1.5 流計算處理流程 119
6.2 Spark Streaming 121
6.2.1 Spark Streaming 設計 121
6.2.2 Spark Streaming 與Storm 的對比 122
6.2.3 從“Hadoop+Storm”架構轉向Spark 架構 122
6.3 DStream 操作概述 123
6.3.1 Spark Streaming 工作機制 123
6.3.2 編寫Spark Streaming 程式的基本步驟 124
6.3.3 創建StreamingContext 對象 124
6.4 基本輸入源 125
6.4.1 檔案流 125
6.4.2 套接字流 127
6.4.3 RDD 佇列流 131
6.5 高級數據源 133
6.5.1 Kafka 簡介 133
6.5.2 Kafka 準備工作 133
6.5.3 Spark 準備工作 135
6.5.4 編寫Spark Streaming 程式使用Kafka 數據源 136
6.6 轉換操作 137
6.6.1 DStream 無狀態轉換操作 137
6.6.2 DStream 有狀態轉換操作 138
6.7 輸出操作 143
6.7.1 把DStream 輸出到文本檔案中 143
6.7.2 把DStream 寫入到關係資料庫中 145
6.8 本章小結 147
6.9 習題 147
實驗5 Spark Streaming 編程初級實踐 147
第7 章 Structured Streaming 150
7.1 概述 151
7.1.1 基本概念 151
7.1.2 兩種處理模型 152
7.1.3 Structured Streaming 和Spark SQL、Spark Streaming 的關係 154
7.2 編寫Structured Streaming程式的基本步驟 154
7.2.1 實現步驟 154
7.2.2 測試運行 156
7.3 輸入源 158
7.3.1 File 源 158
7.3.2 Kafka 源 163
7.3.3 Socket 源 167
7.3.4 Rate 源 167
7.4 輸出操作 169
7.4.1 啟動流計算 169
7.4.2 輸出模式 170
7.4.3 輸出接收器 170
7.5 容錯處理 173
7.5.1 從檢查點恢復故障 173
7.5.2 故障恢復中的限制 173
7.6 遲到數據處理 174
7.6.1 事件時間 174
7.6.2 遲到數據 175
7.6.3 水印 176
7.6.4 多水印規則 177
7.6.5 處理遲到數據的實例 178
7.7 查詢的管理和監控 181
7.7.1 管理和監控的方法 181
7.7.2 一個監控的實例 182
7.8 本章小結 184
7.9 習題 185
實驗6 Structured Streaming編程實踐 185
第8章 Spark MLlib 187
8.1 基於大數據的機器學習 188
8.2 機器學習庫MLlib 概述 189
8.3 基本數據類型 190
8.3.1 本地向量 190
8.3.2 標註點 191
8.3.3 本地矩陣 192
8.4 機器學習流水線 193
8.4.1 流水線的概念 193
8.4.2 流水線工作過程 193
8.5 特徵提取、轉換和選擇 195
8.5.1 特徵提取 195
8.5.2 特徵轉換 199
8.5.3 特徵選擇 204
8.5.4 局部敏感哈希 205
8.6 分類算法 205
8.6.1 邏輯斯蒂回歸分類器 206
8.6.2 決策樹分類器 212
8.7 聚類算法 217
8.7.1 K-Means 聚類算法 218
8.7.2 GMM 聚類算法 220
8.8 協同過濾算法 223
8.8.1 推薦算法的原理 223
8.8.2 ALS 算法 224
8.9 模型選擇和超參數調整 228
8.9.1 模型選擇工具 229
8.9.2 用交叉驗證選擇模型 229
8.10 本章小結 232
8.11 習題 233
實驗7 Spark 機器學習庫MLlib編程實踐 233
參考文獻 235

相關詞條

熱門詞條

聯絡我們