Spark入門與大數據分析實戰

遲殿委 李超

  • 出版商: 清華大學
  • 出版日期: 2023-07-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • 頁數: 252
  • 裝訂: 平裝
  • ISBN: 7302637989
  • ISBN-13: 9787302637981
  • 相關分類: Spark大數據 Big-dataData Science
  • 立即出貨 (庫存 < 3)

  • Spark入門與大數據分析實戰-preview-1
  • Spark入門與大數據分析實戰-preview-2
  • Spark入門與大數據分析實戰-preview-3
Spark入門與大數據分析實戰-preview-1

商品描述

《Spark入門與大數據分析實戰》基於Spark 3.3.1框架展開,系統介紹Spark生態系統各組件的操作,以及相應的大數據分析方法。《Spark入門與大數據分析實戰》各章節均提供豐富的示例及其詳細的操作步驟,並配套示例源碼、PPT課件和教學大綱。 《Spark入門與大數據分析實戰》共分11章,內容包括Scala編程基礎、Spark框架全生態體驗、Spark RDD、Spark SQL、Kafka、Spark Streaming、Spark ML、Spark GraphX、Redis等技術框架和應用,並通過廣告點擊實時大數據分析和電影影評大數據分析兩個綜合項目進行實戰提升。 《Spark入門與大數據分析實戰》適合Spark框架初學者,既可以作為大數據分析技術、大數據應用開發工程師的查詢手冊,也可以作為高等院校或高職高專電腦技術、軟件工程、數據科學與大數據科學、智能科學與技術、人工智能等專業大數據課程的教材。

目錄大綱

 

目    錄

第1章  Spark開發之Scala編程基礎 1

1.1  開發環境搭建 1

1.2  基礎語法 4

1.3  函數 7

1.4  控制語句 9

1.5  函數式編程 12

1.6  模式匹配 17

1.7  類和對象 18

1.8  異常處理 22

1.9  Trait(特徵) 23

1.10  文件I/O 24

第2章  Spark框架全生態體驗 26

2.1  Spark概述 26

2.1.1  關於Spark 26

2.1.2  Spark的基本概念 27

2.1.3  Spark集群模式 28

2.2  Linux環境搭建 33

2.2.1  VirtualBox虛擬機安裝 33

2.2.2  安裝Linux操作系統 35

2.2.3  SSH工具與使用 42

2.2.4  Linux統一設置 43

2.3  Hadoop安裝與配置 45

2.3.1  Hadoop安裝環境準備 45

2.3.2  Hadoop偽分佈式安裝 49

2.3.3  Hadoop完全分佈式環境搭建 55

2.4  Spark安裝與配置 60

2.4.1  本地模式安裝 61

2.4.2  偽分佈模式安裝 63

2.4.3  完全分佈模式安裝 66

2.4.4  Spark on YARN 68

2.5  spark-submit 72

2.5.1  使用spark-submit提交 72

2.5.2  spark-submit參數說明 73

2.6  DataFrame 75

2.6.1  DataFrame概述 75

2.6.2  DataFrame的基礎應用 77

2.7  Spark SQL 82

2.7.1  快速示例 83

2.7.2  read和write 87

2.8  Spark Streaming 89

2.9  共享變量 92

2.9.1  廣播變量 92

2.9.2  累加器 93

第3章  Spark RDD彈性分佈式數據集 94

3.1  什麽是RDD 94

3.2  RDD的主要屬性 95

3.3  RDD的特點 96

3.3.1  彈性 96

3.3.2  分區 96

3.3.3  只讀 96

3.3.4  依賴(血緣) 96

3.3.5  緩存 98

3.3.6  checkpoint 99

3.4  RDD的創建與處理過程 99

3.4.1  RDD的創建 99

3.4.2  RDD的處理過程 99

3.4.3  RDD的算子 100

3.4.4  常見的轉換算子 100

3.4.5  常見的行動算子 105

第4章  Spark SQL結構化數據文件處理 109

4.1  Spark SQL概述 109

4.1.1  什麽是Spark SQL 109

4.1.2  Spark SQL的特點 110

4.1.3  什麽是DataFrame 111

4.1.4  什麽是DataSet 112

4.2  Spark SQL 編程 112

4.2.1  SparkSession 112

4.2.2  使用DataFrame進行編程 113

4.2.3  使用DataSet進行編程 118

4.2.4  DataFrame和DataSet之間的交互 120

4.2.5  使用IDEA創建Spark SQL程序 120

4.2.6  自定義Spark SQL函數 121

4.3  Spark SQL數據源 122

4.3.1  通用加載和保存函數 122

4.3.2  加載JSON文件 123

4.3.3  讀取Parquet文件 124

4.3.4  JDBC 124

第5章  Kafka實戰 127

5.1  Kafka的特點 128

5.2  Kafka術語 129

5.3  Kafka單機部署 130

5.4  Kafka集群部署 137

第6章  Spark Streaming實時計算 142

6.1  Spark Streaming概述 142

6.1.1  Spark Streaming是什麽 142

6.1.2  Spark Streaming特點 143

6.1.3  Spark Streaming架構 144

6.2  DStream入門 144

6.2.1  WordCount案例 145

6.2.2  WordCount案例解析 146

6.3  DStream創建 147

6.3.1  RDD隊列 147

6.3.2  自定義數據源 148

6.3.3  Kafka 數據源 150

6.4  DStream實戰 151

6.4.1  從埠讀取數據 151

6.4.2  FileStream 151

6.4.3  窗口函數 153

6.4.4  updateStateByKey 154

6.5  Structured Streaming 157

6.5.1  概述 157

6.5.2  快速示例 157

第7章  Spark ML機器學習 161

7.1  機器學習 161

7.2  Spark ML 163

7.3  典型機器學習流程介紹 163

7.3.1  提出問題 163

7.3.2  假設函數 164

7.3.3  損失函數 165

7.3.4  訓練模型確定參數 166

7.4  經典算法模型實戰 166

7.4.1  聚類算法實戰 166

7.4.2  回歸算法實戰 170

7.4.3  協同過濾算法實戰 172

7.4.4  分類算法實戰 178

第8章  Spark GraphX圖計算 183

8.1  Spark GraphX 183

8.2  Spark GraphX的抽象 184

8.3  Spark GraphX圖的構建 185

8.4  Spark GraphX圖的計算模式 187

8.5  GraphX 3個主要算法實戰 189

8.6  GraphX綜合應用項目實戰 192

第9章  Redis數據庫入門 200

9.1  Redis環境安裝 200

9.1.1  簡介 200

9.1.2  安裝 201

9.1.3  Java客戶端 202

9.2  Redis常見數據類型 202

9.2.1  key 202

9.2.2  string類型 204

9.2.3  list 205

9.2.4  set 206

9.2.5  sorted set 208

9.2.6  hash 209

9.3  Redis排序 210

9.4  Redis事務 213

9.5  Redis發布訂閱及示例 216

9.6  Redis持久化 219

第10章  廣告點擊實時大數據分析項目實戰 221

10.1  項目環境準備 221

10.2  數據生成模塊 226

10.3  從Kafka讀取數據 230

10.3.1  bean類AdsInfo 230

10.3.2  工具類MyKafkaUtil 230

10.3.3  從Kafka消費數據 231

10.4  數據統計實現 233

10.4.1  每天每地區熱門廣告點擊率Top3 233

10.4.2  最近1小時內廣告點擊量實時統計 234

第11章  電影影評大數據分析項目實戰 237

11.1  項目介紹 237

11.2  項目實現 238

11.2.1  公共代碼開發 241

11.2.2  平均評分最高的前10部電影 244

11.2.3  電影類別及其平均評分 247

11.2.4  評分次數最多的前10部電影 250