第 1章PySpark大數據分析概述 1
1.1大數據分析概述1
1.1.1大數據的概念2
1.1.2大數據分析的概念3
1.1.3大數據分析的流程4
1.1.4大數據分析的應用場景6
1.1.5大數據技術體繫6
1.2Spark大數據技術框架10
1.2.1Spark 簡介10
1.2.2Spark 特點11
1.2.3Spark運行架構與流程11
1.2.4Spark RDD14
1.2.5Spark 生態圈20
1.3PySpark大數據分析21
1.3.1PySpark 簡介21
1.3.2PySpark 子模塊22
小結25
課後習題26
第2章 PySpark安裝配置27
2.1搭建單機模式的PySpark開發
環境28
2.1.1安裝 JDK28
2.1.2安裝 Anaconda28
2.1.3安裝 Hadoop30
2.1.4安裝 MySQL36
2.1.5安裝 Hive37
2.1.6配置 PySpark 模塊43
2.1.7運行 Jupyter Notebook44
2.2搭建分布式模式的PySpark開發
環境45
2.2.1安裝配置虛擬機46
2.2.2安裝 Java53
2.2.3搭建Hadoop分布式集群58
2.2.4安裝MySQL數據庫62
2.2.5安裝Hive數據倉庫工具63
2.2.6搭建Spark完全分布式集群66
2.2.7安裝 PyCham69
2.2.8安裝Python解釋器及PySpark 模塊69
2.3Python函數式編程69
2.3.1Python常用數據結構70
2.3.2Python函數式編程基礎75
小結76
課後習題76
第3 章 基於 PySpark 的 DataFrame 操作78
3.1Spark SQL 概述78
3.1.1Spark SQL起源與發展歷程79
3.1.2Spark SQL 主要功能79
3.1.3Spark SQL數據核心抽像 DataFrame80
3.2pyspark.sql 模塊82
3.2.1pyspark. sql 模塊簡介82
3.2.2pyspark. sql 模塊核心類83
3.3DataFrame 基礎操作85
3.3.1創建 DataFrame 對像86
332DataFrame 操作93
3.3.3DataFrame 輸出操作113
小結114
實訓114
實訓1網站搜索熱詞統計分析114
實訓2大數據崗位招聘信息統計分析…115
課後習題116
第4章基於PySpark的流式數據
處理118
4.1Spark Streaming 概述119
4.1.1流計算簡介119
4.1.2Spark Streaming 基本概念121
4.1.3Spark Streaming 工作原理121
4.1.4Spark Streaming 運行機制122
4.2pyspark.streaming 模塊123
4.2.1pyspark. streaming 模塊簡介123
4.2.2pyspark. streaming 模塊核心類124
4.2.3DStream 基礎操作126
4.3Structured Streaming 結構化流 處理146
4.3.1Structured Streaming 概述146
4.3.2Structured Streaming 編程模型147
4.3.3Structured Streaming 基礎操作148
4.3.4Structured Streaming 編程步驟152
小結155
實訓155
實訓1使用SparkStreaming實現菜品價格
實時計算155
實訓2使用SparkStreaming實時判別車輛 所屬地156
課後習題156
第5章基於PySpark的機器
學習庫158
5.1MLlib 算法159
5.1.1機器學習159
5.1.2MLlib159
5.1.3pyspark.ml 模塊159
5.2使用pyspark.ml模塊的轉換器處理
和轉換數據162
5.2.1數據加載及數據集劃分162
5.2.2數據降維164
5.2.3數據標準化166
5.2.4數據類型轉換171
5.3pyspark.ml模塊的評估器和模型 評估175
5.3.1使用PySpark構建並評估分類 模型175
5.3.2使用PySpark構建並評估回歸 模型182
5.3.3使用PySpark構建並評估聚類 模型186
5.3.4使用PySpark構建並評估智能推薦
模型189
小結195
實訓195
實訓1使用隨機森林模型預測是否批準用戶申請195
實訓2使用回歸模型實現房價預測………196
課後習題197
第6章案例分析:基於PySpark的網絡 招聘信息的職業類型劃分 ……199
6.1需求與架構分析200
6.1.1業務需求分析與技術選型200
6.1.2繫統架構分析200
6.2數據探索201
6.2.1數據說明202
6.2.2數據讀取202
6.2.3重復數據與空值探索204
6.2.4異常數據探索205
6.3數據預處理207
6.3.1數據清洗207
6.3.2中文分詞與去停用詞208
6.3.3詞特征向量化210
6.4模型構建與評估213
6.4.1LDA算法簡介214
6.4.2LDA模型構建與評估215
6.4.3構建LDA模型217
6.5制作詞雲圖220
小結225
第7章案例分析:基於PySpark的
信用貸款風險分析226
7.1需求與架構分析227
7.1.1業務需求分析227
7.1.2繫統架構分析227
7.2數據探索228
7.2.1數據說明228
7.2.2建立數據倉庫並導入數據230
7.2.3用戶信息完善情況與逾期率的關繫
探索233
7.2.4用戶信息修改情況與逾期率的關繫
探索236
7.2.5用戶借款月份與逾期率的關繫
探索240
7.3數據預處理243
7.3.1計算用戶信息缺失個數及借款月份
構建新特征243
7.3.2用戶更新信息重建245
7.3.3用戶登錄信息重建250
7.3.4分類數據預處理255
7.3.5字符串字段編碼處理259
7.3.6分類數據重編碼263
7.3.7缺失值處理265
7.4模型構建與評估267
7.4.1了解 GBTs 算法267
7.4.2構建 GBTs 模型268
7.4.3評估 GBTs 模型271
7.5部署和提交PySpark應用程序…271
7.5.1打包PySpark應用程序271
7.5.2提交PySpark應用程序274
小結275
參考文獻276