Spark大數據分析實務

鄭浩森,張榮

  • 出版商: 人民郵電
  • 出版日期: 2024-07-01
  • 定價: $359
  • 售價: 8.5$305
  • 語言: 簡體中文
  • 頁數: 235
  • ISBN: 7115641404
  • ISBN-13: 9787115641403
  • 相關分類: Spark大數據 Big-dataData Science
  • 下單後立即進貨 (約4週~6週)

  • Spark大數據分析實務-preview-1
  • Spark大數據分析實務-preview-2
Spark大數據分析實務-preview-1

相關主題

商品描述

本書以Spark大數據分析的常用技術與真實項目相結合的方式,深入淺出地介紹Spark大數據分析的重要內容。全書共8個項目,內容包括廣告流量檢測違規識別流程分析、Spark大數據環境安裝搭建、基於Hive實現廣告流量檢測數據存儲、基於Spark SQL實現廣告流量檢測數據探索分析、基於Spark SQL實現廣告流量檢測數據預處理、基於Spark MLlib實現廣告流量檢測違規識別模型構建與評估、基於Spark開發環境實現廣告流量檢測違規識別,以及基於TipDM大數據挖掘建模平臺實現廣告流量檢測違規識別。本書項目2~項目7都包含知識測試和技能測試,通過練習和操作實踐,讀者可鞏固所學的內容。

本書可以作為大數據分析相關課程的教材,也可以作為數據分析愛好者的自學用書。

作者簡介

鄭浩森,男,湛江幼兒師範專科學校,數學系主任,大數據技術專業負責人,廣東省數學會理事、廣東省工業與應用數學學會理事會理事、廣東省現場統計學會理事、廣東省數學會高職高專分會常務理事,研究方向為智能計算技術,擔任大數據技術專業多門課程,主持或參與省部級課題多項,全國大學生數學建模(廣東省分賽)“優秀指導教師”。 張良均,高級信息系統項目管理師,泰迪杯全國大學生數據挖掘競賽(www.tipdm.org)的發起人。華南師範大學、廣東工業大學兼職教授,廣東省工業與應用數學學會理事。兼有大型高科技企業和高校的工作經歷,主要從事大數據挖掘及其應用的策劃、研發及咨詢培訓。全國電腦技術與軟件專業技術資格(水平)考試繼續教育和CDA數據分析師培訓講師。發表數據挖掘相關論文數二十餘篇,已取得國家發明專利12項,主編圖書《神經網絡實用教程》、《數據挖掘:實用案例分析》、《MATLAB數據分析與挖掘實戰》等9本暢銷圖書,主持並完成科技項目9項。獲得SAS、SPSS數據挖掘認證及Hadoop開發工程師證書,具有電力、電信、銀行、製造企業、電子商務和電子政務的項目經驗和行業背景。

目錄大綱

項目1 廣告流量檢測違規識別流程分析 1

【教學目標】 1

【思維導圖】 1

【項目背景】 2

【項目目標】 2

【目標分析】 2

【知識準備】 2

一、認識大數據 2

(一)大數據的概念 3

(二)大數據的特徵 3

二、認識大數據分析 4

(一)大數據分析的概念 4

(二)大數據分析的流程 5

(三)大數據分析的工具 6

【項目實施】 7

任務一 瞭解正常的廣告投放流程 7

任務二 瞭解廣告流量違規現狀 8

任務三 瞭解廣告流量常見違規方式 9

任務四 瞭解識別虛假流量的常見維度 9

(一)基本屬性 9

(二)產品參與度 10

任務五 廣告流量檢測違規識別流程分析 11

【項目總結】 12

項目2 Spark大數據環境安裝搭建 13

【教學目標】 13

【思維導圖】 13

【項目背景】 14

【項目目標】 14

【目標分析】 14

【知識準備】 14

一、Hadoop大數據框架 14

(一)Hadoop簡介 14

(二)Hadoop的發展歷程 15

(三)Hadoop的特點 16

(四)Hadoop生態系統 16

(五)Hadoop的應用場景 17

二、Hive數據倉庫工具 18

(一)Hive簡介 18

(二)Hive的特點 18

(三)Hive的應用場景 19

(四)Hive與關系數據庫的區別 19

三、Spark分佈式計算框架 20

(一)Spark簡介 20

(二)Spark的發展歷程 21

(三)Spark的特點 21

(四)Spark生態系統 23

(五)Spark的應用場景 24

【項目實施】 24

任務一 安裝搭建Hadoop集群 24

(一)創建Linux虛擬機 26

(二)設置固定IP地址 31

(三)遠程連接虛擬機 33

(四)配置本地yum源及安裝常用軟件 36

(五)在Linux系統下安裝Java 40

(六)修改配置文件 41

(七)克隆虛擬機 45

(八)配置SSH免密登錄 48

(九)配置時間同步服務 49

(十)添加地址映射 52

(十一)啟動關閉集群 52

任務二 安裝搭建Hive 54

(一)安裝MySQL 54

(二)下載和安裝Hive 59

(三)修改Hive配置文件 59

(四)設置環境變量 60

(五)初始化元數據庫與啟動Hive 61

任務三 安裝搭建Spark集群 62

(一)解壓並配置Spark集群 62

(二)啟動Spark集群 63

(三)查看Spark監控服務 64

【項目總結】 65

【技能拓展】 65

【知識測試】 66

【技能測試】 67

測試 修改master虛擬機的IP地址 67

項目3 基於Hive實現廣告流量檢測數據存儲 69

【教學目標】 69

【思維導圖】 70

【項目背景】 70

【項目目標】 71

【目標分析】 71

【知識準備】 71

一、瞭解Hive中的數據類型 71

二、創建與管理數據庫 72

(一)創建數據庫語法格式 72

(二)刪除數據庫語法格式 73

(三)更改數據庫語法格式 74

(四)使用數據庫語法格式 74

三、創建表 74

(一)創建內部表 76

(二)創建外部表 77

(三)創建分區表 79

(四)創建桶表 79

四、修改表 80

五、導入數據至Hive表 83

(一)將文件系統中的數據導入Hive表 83

(二)通過查詢語句向表中插入數據 84

六、導出Hive表中的數據 87

(一)將Hive表中的數據導出至本地文件系統 87

(二)將Hive表中的數據導出至HDFS 87

【項目實施】 88

任務一 創建數據表 88

(一)數據字段說明 88

(二)創建Hive表 89

任務二 導入數據至Hive表 92

【項目總結】 93

【技能拓展】 93

【知識測試】 95

【技能測試】 96

測試 某連鎖咖啡店經營情況數據存儲 96

項目4 基於Spark SQL實現廣告流量檢測數據探索分析 98

【教學目標】 98

【思維導圖】 99

【項目背景】 99

【項目目標】 99

【目標分析】 100

【知識準備】 100

一、認識Spark SQL框架 100

(一)Spark SQL簡介 100

(二)配置Spark SQL CLI 102

(三)Spark SQL與Shell交互 103

二、創建DataFrame對象 103

(一)通過結構化數據文件創建DataFrame 104

(二)通過外部數據庫創建DataFrame 105

(三)通過RDD創建DataFrame 105

(四)通過Hive表創建DataFrame 106

三、查看DataFrame數據 107

(一)printSchema():輸出數據模式 108

(二)show():查看數據 108

(三)first()、head()、take()、takeAsList():獲取若乾行記錄 109

四、掌握DataFrame行列表查詢操作 110

(一)條件查詢 111

(二)查詢指定字段的數據信息 111

(三)查詢指定行數的數據 113

(四)排序查詢 114

(五)分組查詢 115

【項目實施】 116

任務一 讀取數據創建DataFrame對象 116

任務二 簡單查詢DataFrame數據 116

(一)查詢數據記錄數 116

(二)查詢數據缺失值 117

任務三 探索分析日流量特徵 119

任務四 探索分析IP地址的訪問次數特徵 120

任務五 探索分析虛假流量數據特徵 120

【項目總結】 124

【技能拓展】 124

【知識測試】 125

【技能測試】 126

測試1 使用DataFrame查詢操作分析員工基本信息 126

測試2 使用DataFrame查詢操作分析圖書信息 127

項目5 基於Spark SQL實現廣告流量檢測數據預處理 129

【教學目標】 129

【思維導圖】 130

【項目背景】 130

【項目目標】 130

【目標分析】 130

【知識準備】 131

一、掌握DataFrame行列表增、刪操作 131

(一)新增數據列 131

(二)刪除數據列 132

二、創建與使用用戶自定義函數 133

三、掌握DataFrame表聯合操作 135

(一)5種join()方法 135

(二)根據特定字段進行表聯合操作 136

(三)指定類型進行表聯合操作 137

(四)使用Column類型進行表聯合操作 137

四、掌握DataFrame行列表輸出操作 138

(一)保存為文件 138

(二)保存為持久化的表 139

【項目實施】 140

任務一 使用drop語句刪除數據 140

任務二 自定義函數構建關鍵特徵 140

(一)劃分時間區間 141

(二)構建關鍵特徵並保存至Hive表中 142

任務三 保存DataFrame數據至Hive表中 143

【項目總結】 144

【技能拓展】 144

【知識測試】 145

【技能測試】 146

測試 基於Hive的人力資源系統數據處理 146

項目6 基於Spark MLlib實現廣告流量檢測違規識別模型構建與評估 149

【教學目標】 149

【思維導圖】 150

【項目背景】 150

【項目目標】 151

【目標分析】 151

【知識準備】 151

一、認識Spark MLlib算法庫 151

(一)瞭解機器學習算法 152

(二)Spark MLlib簡介 154

二、掌握Spark MLlib中的算法與算法包 155

(一)數據類型 155

(二)基本統計 155

(三)管道 157

(四)特徵提取 158

(五)特徵處理 160

(六)回歸 163

(七)分類 165

(八)聚類 169

(九)關聯規則 170

(十)智能推薦 171

三、掌握Spark MLlib的評估器與模型評估 173

【項目實施】 175

任務一 數據歸一化 175

任務二 構建建模樣本 176

任務三 使用spark.ml.classification模塊構建分類模型 176

(一)使用邏輯回歸算法實現廣告流量檢測違規識別 176

(二)使用隨機森林算法實現廣告流量檢測違規識別 177

任務四 使用評估器實現模型評估 178

(一)模型評估 178

(二)模型評估結果對比 179

【項目總結】 179

【技能拓展】 179

【知識測試】 181

【技能測試】 182

測試 基於Spark MLlib實現新聞分類 182

項目7 基於Spark開發環境實現廣告流量檢測違規識別 184

【教學目標】 184

【思維導圖】 184

【項目背景】 185

【項目目標】 185

【目標分析】 185

【知識準備】 185

一、搭建Java開發環境 185

(一)安裝JDK 8 185

(二)設置環境變量 187

二、搭建Spark開發環境 189

(一)下載與安裝IntelliJ IDEA 189

(二)Scala插件安裝與使用 192

(三)在IntelliJ IDEA中配置Spark運行環境 196

(四)運行Spark程序 198

【項目實施】 206

任務一 開發環境下實現流量數據違規識別 206

(一)集群連接參數設置 206

(二)封裝代碼 207

(三)運行Spark程序 210

任務二 模型應用 210

【項目總結】 211

【技能拓展】 212

【知識測試】 214

【技能測試】 215

測試 農產品銷售分析 215

項目8 基於TipDM大數據挖掘建模平臺實現廣告流量檢測違規識別 217

【教學目標】 217

【思維導圖】 217

【項目背景】 218

【項目目標】 218

【目標分析】 218

【知識準備】 218

平臺簡介 218

(一)共享庫 219

(二)數據連接 219

(三)數據集 220

(四)我的工程 220

(五)個人組件 223

【項目實施】 224

任務 快速構建廣告流量檢測違規識別工程 224

(一)數據源配置 225

(二)數據處理 227

(三)模型構建與評估 232

【項目總結】 235

參考文獻 236