數據作為企業(yè)的一種資產的觀念在大數據時代愈發(fā)明確。本書結合Python在數據分析領域的特點,介紹如何在數據平臺上的集成使用Python。全書內容可以分為3大部分。第一部分從第一章到第三章中是準備工作,搭建開發(fā)環(huán)境和導入測試數據;第二部分從第四章到第十二章是Python對HDFS、Hive、Pig、HBase、Spark的操作,主要對常用API的說明使用;第三部分從第十三章到第十六章,在第二部分的基礎上進行數據的分析、挖掘、可視化。本書學習的前提條件是對Python有一點基礎,并能夠使用Linux。本書適合對大數據、人工智能等感興趣的讀者閱讀。
資深軟件工程師,項目經理。對Python大數據、人工智能、深度學習等有深入研究,實施開發(fā)項目涉及各個領域,包括國內各大房地產商、金融企業(yè)、政府機關。曾經參與的項目包括:唯思軟件 - 客戶端開方工程師、VS游戲對戰(zhàn)平臺客戶端開發(fā)、廣州嘉為科技 - 高級軟件開發(fā)師、深圳海關數據倉庫運維開發(fā)項目、萬科地產主數據項目、廣州時代地產主數據項目、金地地產主數據項目、深圳長城開發(fā)科技基礎構架自動化項目、中信保誠自動化運維工單化項目、法本信息 - 大數據工程師、廣發(fā)證券大數據應用分析項目等。
第一章 為什么選擇用Python11.1 易于使用3
1.2 兼容Hadoop3
1.3 可擴展和靈活性3
1.4 良好的社區(qū)支持和開發(fā)環(huán)境3
1.5 在數據分析領域的優(yōu)勢4
1.6 總結4
第二章 大數據開發(fā)環(huán)境的搭建52.1 安裝大數據集成環(huán)境HDP6
2.2 安裝Spark環(huán)境(Windows)9
2.3 自行安裝大數據開發(fā)環(huán)境10
2.4 總結21
第三章 構建分析數據223.1 分析數據的說明23
3.2 導入數據到HDP SandBox中25
3.3 導入自安裝的環(huán)境中使用28
3.4 導入Windows的Spark中29
3.5 導入 Northwind 數據庫30
3.6 總結32
第四章 Python對Hadoop的操作334.1 Snakebite的說明34
4.2 HDFS命令說明36
4.3 Snakebite Client類的使用38
4.4 Snakebite CLI的使用40
4.5 總結42
第五章 Python對Hive的操作435.1 Hive說明44
5.2 使用PyHive47
5.3 使用Python編寫Hive UDF49
5.4 Impyla的使用51
5.5 Hive SQL調優(yōu)方法52
5.6 總結53
第六章 Python對HBase的操作546.1 HBase說明55
6.2 HBase Shell命令57
6.3 HappyBase說明62
6.4 HappyBase的使用66
6.5 總結70
第七章 Python集成到Pig717.1 Pig說明72
7.2 Pig Latin的使用74
7.3 Python Pig的整合78
7.4 總結81
第八章 PySpark Shell應用838.1 操作步驟84
8.2 應用對象84
8.3 Spark核心模塊86
8.4 Spark Shell的使用87
8.5 PySpark Shell的使用92
8.6 總結95
第九章 PySpark對RDD操作969.1 Spark RDD說明97
9.2 RDD API說明101
9.3 在API函數中使用Lambda表達式108
9.4 從HDFS中讀取數據并以SequenceFile格式存儲110
9.5 讀取CSV文件處理并存儲112
9.6 讀取Json文件處理114
9.7 通過RDD計算圓周率115
9.8 查看RDD計算的狀態(tài)116
9.9 總結118
第十章 PySpark對DataFrame的操作11910.1 Spark DataFrame說明120
10.2 DataFrame API總述122
10.3 DataFrame數據結構API126
10.4 DataFrame數據處理API140
10.5 Postgresql和DataFrame145
10.6 CSV和DataFrame147
10.7 Json和DataFrame149
10.8 Numpy、Pandas和DataFrame151
10.9 RDD和DataFrame152
10.10 HDFS和DataFrame153
10.11 Hive和DataFrame154
10.12 HBase和DataFrame155
10.13 總結157
第十一章 PySpark對Streaming的操作15811.1 Spark Streaming說明159
11.2 Spark Streaming API160
11.3 網絡數據流165
11.4 文件數據流167
11.5 Kafka數據流171
11.6 Flume數據流173
11.7 QueueStream數據流174
11.8 使用StreamingListener監(jiān)聽數據流175
11.9 總結177
第十二章 PySpark SQL17812.1 關于Spark SQL179
12.2 Spark SQL相關API180
12.3 Spark SQL使用步驟189
12.4 Postgresql和Spark SQL190
12.5 CSV和Spark SQL192
12.6 Json和Spark SQL193
12.7 HDFS和Spark SQL194
12.8 Hive和Spark SQL195
12.9 UDF和Spark SQL197
12.10 Streaming和Spark SQL199
12.11 Spark SQL優(yōu)化200
12.12 總結201
第十三章 分析方法及構架的說明20213.1 統(tǒng)計的概念和數據可視化203
13.2 數據分析方法的探討206
13.3 開發(fā)構架說明209
13.4 總結整合說明210
第十四章 集成分析21414.1 SQL窗口函數的說明215
14.2 Hive SQL分析221
14.3 Spark SQL分析225
14.4 HBase SQL分析229
14.5 對接Numpy、Pandas的分析232
14.6 對接Blaze分析241
14.7 總結244
第十五章 數據挖掘24515.1 關于機器學習246
15.2 PySpark機器學習包248
15.3 特征的抽取、轉換和選擇250
15.4 PySpark機器學習包的使用256
15.5 集成TensorFlow277
15.6 集成scikit-learn279
15.7 總結282
第十六章 數據可視化28316.1 標簽云284
16.2 Zeppelin的使用289
16.3 Mathplotlib的使用293
16.4 Superset的使用301
16.5 總結308