Apache Spark大數據分析:基於Azure Databricks雲平台 Beginning Apache Spark Using Azure Databricks: Unleashing Large Cluster Analytics in the Cloud

Robert Ilijason 譯 袁國忠

買這商品的人也買了...

商品描述

Azure Databricks是一款基於雲的大數據分析和機器學習平台,
用於實現基於Apache Spark的數據處理,為快速增長的海量數據的處理和決策需求分析提供了良好的支撐。
《Apache Spark大數據分析:基於Azure Databricks雲平台》
詳細介紹基於Azure Databricks雲平台來使用Apache Spark完成大規模數據處理和分析的方法。
本書總計11章,首先介紹大規模數據分析相關的概念;然後介紹受管的Spark及其與Databricks的關係,
以及Databricks的版本差異和使用方法(涵蓋工作區、集群、筆記本、Databricks文件系統、數據導入/導出等內容);
接著介紹使用SQL和Python分別實現數據分析的過程,數據提取、變換、加載、存儲、
優化技巧等高階數據處理方法以及外部連接工具、生產環境集成等內容;最後探討了運行機器學習算法、
合併數據更新以及通過API運行Databricks、Delta流處理等高階主題。
作為數據分析領域的入門書,本書具有很強的實用性,
可供數據工程師、數據分析師和決策分析人員等學習和參考。

目錄大綱

第 1章 大規模數據分析簡介 1
1.1 宣傳中的數據分析 1
1.2 現實中的數據分析 2
1.3 大規模數據分析 3
1.4 數據—分析中的燃料 5
1.5 費的工具 6
1.6 進入雲端 8
1.7 Databricks—懶人的分析工具 9
1.8 如何分析數據 9
1.9 真實的大規模數據分析示例 11
1.9.1 Volvo Trucks的遠程信息處理 11
1.9.2 Visa的欺詐識別 11
1.9.3 Target的客戶分析 12
1.9.4 Cambridge Analytica有針對性的廣告投放 12
1.10 小結 12
第 2章 Spark和Databricks 14
2.1 Apache Spark簡介 14
2.2 Databricks—受管的Apache Spark 16
2.3 Spark的架構 18
2.3.1 Apache Spark如何處理作業 19
2.3.2 數據 20
2.4 內核之上的出色組件 23
2.5 小結 23
第3章 Databricks初步 25
3.1 只能通過雲來使用 25
3.2 費的社區版 26
3.2.1 差不多夠用了 26
3.2.2 使用社區版 26
3.3 夢寐以求的商業版 28
3.3.1 Amazon Web Services上的Databricks 29
3.3.2 Azure Databricks 32
3.4 小結 34
第4章 工作區、集群和筆記本 35
4.1 在UI中漫遊 35
4.2 集群 38
4.3 數據 40
4.4 筆記本 42
4.5 小結 44
第5章 將數據載入Databricks 46
5.1 Databricks文件系統 46
5.1.1 文件系統導航 47
5.1.2 FileStore—通往自有數據的門戶 49
5.2 模式、數據庫和表 50
5.3 各種類型的數據源 文件 51
5.3.1 二進制格式 53
5.3.2 其他傳輸方式 54
5.4 從你的計算機中導入數據 54
5.5 從Web獲取數據 56
5.5.1 使用shell 56
5.5.2 使用Python執行簡單導入 58
5.5.3 使用SQL獲取數據 60
5.6 掛載文件系統 60
5.6.1 Amazon S3掛載示例 61
5.6.2 Microsoft Blog Storage掛載示例 62
5.6.3 刪除掛載 63
5.7 如何從Databricks中獲取數據 64
5.8 小結 65
第6章 使用SQL查詢數據 67
6.1 Databricks中的SQL 67
6.2 準備工作 68
6.3 選擇數據 69
6.4 篩選數據 70
6.5 連接和合併 73
6.6 對數據進行排序 75
6.7 函數 76
6.8 窗口函數 77
6.9 視圖 79
6.10 層次型數據 80
6.11 創建數據 82
6.12 作數據 84
6.13 Delta Lake SQL 85
6.13.1 UPDATE、DELETE和MERGE 86
6.13.2 確Delta Lake狀況良好 88
6.13.3 事務日誌 88
6.13.4 選擇元數據 89
6.13.5 收集統計信息 90
6.14 小結 91
第7章 Python的威力 92
7.1 Python—不二的選擇 92
7.2 加強版Python簡介 93
7.3 查找數據 96
7.4 DataFrame—活動數據的居住之所 97
7.5 加載一些數據 98
7.6 從DataFrame中選擇數據 101
7.7 串接命令 103
7.8 使用多個DataFrame 112
7.9 整理數據 118
7.10 小結 122
第8章 ETL和*數據整理 123
8.1 再談ETL 123
8.2 Spark UI簡介 124
8.3 數據清理和變換 125
8.3.1 查找NULL 126
8.3.2 刪除NULL 128
8.3.3 使用值來填充NULL列 129
8.3.4 去重 131
8.3.5 找出並**值 132
8.3.6 處理列 135
8.3.7 轉置 137
8.3.8 裂 138
8.3.9 什麼情況下惰性求值有益 139
8.3.10 緩存數據 140
8.3.11 數據壓縮 142
8.3.12 有關函數的簡短說明 144
8.3.13 lambda函數 145
8.4 數據存儲和混洗 146
8.4.1 存模式 146
8.4.2 受管表和非受管表 148
8.4.3 處理分區 149
8.5 小結 154
第9章 在Databricks和外工具之間建立連接 155
9.1 為何要在Databricks和外工具之間建立連接 155
9.2 讓ODBC和JDBC運轉起來 156
9.2.1 創建令牌 157
9.2.2 準備集群 157
9.2.3 創建測試表 158
9.2.4 在Windows系統中安裝ODBC 158
9.2.5 在macOS系統中安裝ODBC 159
9.3 在外工具中連接到Databricks 162
9.3.1 Microsoft Excel(Windows) 162
9.3.2 Microsoft Power BI桌面版(Windows) 163
9.3.3 Tableau(macOS) 164
9.3.4 PyCharm(通過Databricks Connect進行連接) 165
9.4 使用RStudio Server 168
9.5 訪問外系統 170
9.6 連接到外系統 171
9.6.1 連接到Azure SQL 171
9.6.2 連接到Oracle 172
9.6.3 連接到MongoDB 174
9.7 小結 175
第 10章 在生產環境中運行解決方案 176
10.1 一般性建議 176
10.1.1 設想*糟的情況 177
10.1.2 編寫可反復運行的代碼 177
10.1.3 對代碼進行註釋 177
10.1.4 編寫簡單易懂的代碼 178
10.1.5 打印相關的信息 178
10.2 作業 179
10.2.1 調度 180
10.2.2 在筆記本中運行其他筆記本 181
10.2.3 小件 183
10.2.4 運行接受參數的作業 185
10.3 命令行接口 186
10.3.1 安裝CLI 186
10.3.2 運行CLI命令 187
10.4 再談費用 193
10.5 用戶、組和*選項 194
10.5.1 用戶和組 194
10.5.2 訪問控制 195
10.5.3 其他性 198
10.6 小結 199
第 11章 雜項 200
11.1 MLlib 201
11.2 頻繁模式增長 201
11.2.1 創建一些數據 202
11.2.2 準備好數據 203
11.2.3 運行算法 204
11.2.4 分析結果 204
11.3 MLflow 205
11.3.1 運行代碼 206
11.3.2 檢查結果 208
11.4 更新表 208
11.4.1 創建源表 209
11.4.2 從Databricks連接到Oracle數據庫 210
11.4.3 提取變更的數據 211
11.4.4 驗證格式 212
11.4.5 更新表 212
11.5 Pandas簡介 213
11.6 Koalas—Spark版Pandas 213
11.6.1 鼓搗Koalas 214
11.6.2 Koalas的未來 216
11.7 數據呈現藝術 217
11.7.1 準備數據 218
11.7.2 使用Matplotlib 219
11.7.3 創建並顯示儀表板 220
11.7.4 添加小件 220
11.7.5 添加圖表 221
11.7.6 調度 221
11.8 REST API和Databricks 222
11.8.1 能夠做什麼 222
11.8.2 不能做什麼 222
11.8.3 為使用API做好準備 223
11.8.4 示例:獲取集群數據 223
11.8.5 示例:創建並執行作業 226
11.8.6 示例:獲取筆記本 228
11.8.7 所有API及其用途 229
11.9 Delta流處理 230
11.9.1 運行流 231
11.9.2 檢查和停止流 234
11.9.3 加快運行節奏 234
11.9.4 使用檢查點 235