熱門關鍵字:  聽力密碼  聽力密碼  新概念美語  單詞密碼  巧用聽寫練聽力

Spark大數據處理技術

中國水利水電出版社
    【作 者】主編 劉仁山 周洪翠 莊新妍 【I S B N 】978-7-5226-0485-5 【責任編輯】鞠向超 【適用讀者群】本專通用 【出版時間】2022-02-18 【開 本】16開 【裝幀信息】平裝(光膜) 【版 次】第1版第1次印刷 【頁 數】268 【千字數】418 【印 張】16.75 【定 價】48 【叢 書】普通高等教育數據科學與大數據技術專業教材 【備注信息】
圖書詳情

    本書面向大數據技術專業,遵循知識性、系統性、實用性、條理性、連貫性和先進性的原則,力求激發讀者的興趣,注重各知識點之間的銜接和實踐性環節教學,精心組織內容,做到由淺入深、突出重點。

    本書共9章,第1章為Spark基礎,主要包括Spark的基礎知識、應用場景和生態系統等內容;第2章為Scala語言基礎,包括Scala 編程基礎、Scala數組和集合以及映射、Scala對象和多繼承等內容;第3章為Spark設計與運行原理,包括Spark架構、Spark Core組成、Spark編程模型和計算模型等內容;第4章為Spark環境搭建和使用,包括Spark系列軟件環境配置(JDK、Hadoop、MySQL-Server、Hive、ZooKeeper 、Scala、Kafka、Spark)和Spark-shell交互式命令工具使用等內容;第5章為Spark RDD彈性分布式數據集,包括RDD創建方式、RDD轉換算子和行動算子操作方法等內容;第6章為Spark SQL結構化數據處理引擎,包括DataFrame和DataSet的創建和操作以及利用Spark SQL操作MySQL數據源等內容;第7章為Spark Streaming實時流處理引擎,包括Spark Streaming程序開發、DStream 高級數據源使用和數據轉換操作等內容;第8章為Spark MLlib機器學習,包括機器學習基礎、Spark MLlib 機器學習庫和常用算法等內容;第9章為訂單交易監控系統,主要完成訂單交易實時監控平臺的搭建,通過綜合案例全面應用Spark大數據處理技術中幾乎所有知識點,幫助讀者運用Spark進行大數據技術開發和應用。

    本書可作為普通高校或高職院校大數據技術課程的教材,也可供大數據技術領域從業者參考學習。

    本書配有電子課件、源代碼、課后習題答案、微課視頻等,讀者可以從中國水利水電出版社網站(www.waterpub.com.cn)或萬水書苑網站(www.mactlaundry.com)免費下載。

    內容實用——理論與實踐結合,重點突出應用

    體系完善——構建完整的大數據專業解決方案

    產教融合——高校企業共參與,對標行業標準

    資源豐富——微課、課件、教案、源碼、答案

    隨著大數據時代的到來,無論是傳統行業、互聯網行業還是IT行業都將應用大數據技術。大數據技術可以幫助企業進行數據整合分析并降低生產成本,比如,互聯網公司可以在廣告業務方面進行大數據應用分析、效果分析和定向優化等,在推薦系統方面能實施大數據優化排名、熱點分析和日志監控等。

    Spark是一種基于內存的、分布式的大數據處理框架,憑借著快速、簡潔易用以及支持多種運行模式而成為很多企業的大數據分析框架。本書不僅介紹Spark基礎理論和運行原理,還深入淺出地講解與Spark學習相關的編程語言、環境搭建、編程模型、數據處理技術、存儲原理和機器學習等內容,所涉及的技術都結合代碼進行講解并實現具體功能,讀者可以通過實例更加深入地理解Spark的運行機制。

    本書內容主要包括Spark基礎、Scala語言基礎、Spark設計與運行原理、Spark環境搭建和使用、Spark RDD彈性分布式數據集、Spark SQL結構化數據處理引擎、Spark Streaming實時流處理引擎、Spark MLlib機器學習、訂單交易監控系統等,最后通過綜合案例全面應用Spark中幾乎所有知識點,幫助讀者運用Spark進行大數據技術開發和應用。

    本書融入了豐富的教學和實際工作經驗,內容安排合理、結構組織有序,能夠讓讀者循序漸進地學習,通過精講多個實例激發讀者學習興趣,圖文并茂、直觀易懂,適合初學者快速學習Spark編程;本書實例豐富,突出該課程操作性強的特點,每章由思維導圖、要點、正文、小結和習題組成,重點內容配有微課視頻講解,課后習題配有答案,便于學生課后鞏固相關知識,并且提供完整源代碼。

    本書首先講解理論基礎知識,然后圍繞理論知識點進行編程實踐,最后通過綜合案例結合工作實踐培養分析和解決問題的能力,用貼合實際的應用場景提升編程水平,充分鞏固各個知識點的應用;源代碼全部經過測試,能夠在Linux操作系統下編譯和運行。

    本書編者均從事大數據技術相關課程一線教學,如Spark、Hadoop、Java、Python等,具有豐富的教學經驗和較強的實際項目開發能力,主持或參與多個系統開發項目,部分教師具有企業軟件開發工作經歷。

    本書由劉仁山、周洪翠、莊新妍任主編,塔娜、腰蘇圖任副主編,主要編寫分工如下:莊新妍編寫第1章和第2章,塔娜編寫第3章和第4章,周洪翠編寫第5章和第6章,劉仁山編寫第7章并負責全書統稿、修改、定稿工作,腰蘇圖編寫第8章和第9章。本書編寫得到了北京華晟經世有限公司的大力支持,在此表示感謝。

    盡管編者在編寫過程中力求準確、完善,但書中不妥之處在所難免,懇請讀者批評指正。

    編 者

    2021年9月

    前言
    第1章 Spark基礎 1
    1.1 初識Spark 2
    1.1.1 Spark簡介 2
    1.1.2 Spark發展 2
    1.2 Spark應用場景 3
    1.3 Spark生態系統 4
    1.4 Spark與Hadoop對比 7
    1.5 Spark多語言編程 8
    本章小結 9
    練習一 9
    第2章 Scala語言基礎 11
    2.1 Scala語言概述 12
    2.1.1 Scala語言簡介 12
    2.1.2 Scala編譯器安裝 12
    2.2 Scala命名規范 18
    2.2.1 基本語法 18
    2.2.2 Scala 關鍵字 18
    2.2.3 Scala注釋 19
    2.3 變量 20
    2.3.1 val變量 20
    2.3.2 var變量 20
    2.4 數據類型和運算符 20
    2.4.1 數據類型 20
    2.4.2 運算符 21
    2.5 Scala控制結構 23
    2.5.1 if...else語句 23
    2.5.2 循環語句 24
    2.6 函數的定義和調用 26
    2.6.1 內置函數和自定義函數 26
    2.6.2 函數的參數 27
    2.7 Scala的lazy值 29
    2.8 異常Exception的處理 30
    2.9 數組 31
    2.9.1 定長數組和變長數組 31
    2.9.2 遍歷數組 32
    2.9.3 數組轉換 32
    2.9.4 數組常用方法 33
    2.10 元組 33
    2.10.1 創建元組 33
    2.10.2 元組的訪問和遍歷 34
    2.10.3 拉鏈操作 34
    2.11 集合 34
    2.11.1 列表(List) 34
    2.11.2 集合(Set) 37
    2.11.3 映射(Map) 38
    2.12 類 40
    2.12.1 類的定義 40
    2.12.2 get方法和set方法 41
    2.12.3 構造器 41
    2.12.4 內部類 42
    2.13 單例對象和伴生對象 43
    2.13.1 單例(object)對象 43
    2.13.2 伴生對象 44
    2.13.3 apply方法 44
    2.14 Scala中的繼承 45
    2.14.1 父類具有無參構造器的繼承 46
    2.14.2 父類具有帶參構造器的繼承 46
    2.15 抽象 47
    2.16 Scala中的特質 48
    2.16.1 將特質作為接口使用 48
    2.16.2 在特質中定義具體的方法 49
    2.16.3 混合使用特質的具體方法和抽象方法 49
    2.17 Scala包和引用 50
    2.17.1 創建包 50
    2.17.2 引用 50
    2.17.3 包重命名和隱藏方法 51
    本章小結 51
    練習二 52
    第3章 Spark設計與運行原理 53
    3.1 Spark架構設計 54
    3.1.1 Spark相關術語 54
    3.1.2 Spark架構 55
    3.1.3 Spark運行流程 56
    3.2 Spark核心功能 57
    3.2.1 Spark Core組成 57
    3.2.2 Spark編程模型 58
    3.2.3 Spark計算模型 59
    3.3 Spark運行模式 60
    3.3.1 Local(本地)模式 60
    3.3.2 Standalone(獨立)模式 61
    3.3.3 Mesos(Spark on Mesos)模式 62
    3.3.4 Yarn(Spark on Yarn)模式 63
    本章小結 66
    練習三 66
    第4章 Spark環境搭建和使用 67
    4.1 Spark開發環境概述 68
    4.2 操作系統及其網絡環境準備 68
    4.2.1 操作系統環境 68
    4.2.2 遠程登錄 79
    4.2.3 Linux系統軟件源配置 82
    4.2.4 安裝和配置第二臺和第三臺虛擬機 84
    4.3 Spark環境搭建 88
    4.3.1 安裝JDK 88
    4.3.2 安裝Hadoop 90
    4.3.3 安裝MySQL Server 100
    4.3.4 安裝Hive 102
    4.3.5 安裝ZooKeeper 109
    4.3.6 安裝Scala 111
    4.3.7 安裝Kafka 112
    4.3.8 安裝Spark 114
    4.4 Spark集群環境測試 116
    4.4.1 使用Spark-submit提交任務 116
    4.4.2 使用Spark-shell交互式命令工具 120
    本章小結 122
    練習四 122
    第5章 Spark RDD彈性分布式數據集 123
    5.1 RDD簡介 124
    5.1.1 RDD的特征 124
    5.1.2 詞頻統計(WordCount)案例實現過程 124
    5.1.3 RDD的創建 126
    5.2 常用操作 130
    5.2.1 常用的轉換 131
    5.2.2 常用的動作 137
    5.2.3 實例操作 141
    5.3 RDD的分區 145
    5.3.1 分區的概念 145
    5.3.2 分區原則和方法 146
    5.4 持久化 146
    5.4.1 持久化存儲級別 147
    5.4.2 持久化存儲級別的選擇 147
    5.5 容錯機制 148
    5.6 綜合實例 148
    本章小結 154
    練習五 154
    第6章 Spark SQL結構化數據處理引擎 155
    6.1 Spark SQL的基礎知識 156
    6.1.1 Spark SQL簡介 156
    6.1.2 Spark SQL數據抽象 156
    6.1.3 程序主入口SparkSession 156
    6.2 DataFrame 157
    6.2.1 DataFrame簡介 157
    6.2.2 創建DataFrame 158
    6.2.3 DataFrame查看操作 165
    6.2.4 DataFrame查詢操作 168
    6.2.5 DataFrame輸出操作 174
    6.3 DataSet 175
    6.3.1 DataSet簡介 175
    6.3.2 創建DataSet 176
    6.4 Spark SQL操作數據源 178
    本章小結 181
    練習六 182
    第7章 Spark Streaming實時流處理引擎 184
    7.1 離線計算與實時計算 185
    7.1.1 離線計算 185
    7.1.2 實時計算 185
    7.1.3 離線計算與實時計算比較 185
    7.2 初探Spark Streaming 186
    7.2.1 Spark Streaming簡介 186
    7.2.2 Spark Streaming工作原理 186
    7.2.3 Spark Streaming入門程序 188
    7.3 Spark Streaming程序開發 190
    7.3.1 Spark Streaming環境準備 190
    7.3.2 Spark Streaming項目搭建 190
    7.3.3 Spark Streaming核心代碼 191
    7.3.4 Spark Streaming啟動及測試 193
    7.4 DStream輸入 194
    7.4.1 離散流(DStream) 194
    7.4.2 DStream輸入源 194
    7.4.3 文件流數據源 196
    7.4.4 RDD 隊列流 197
    7.4.5 Spark Streaming整合 Flume 197
    7.4.6 Spark Streaming整合Kafka 201
    7.5 DStream操作 203
    7.5.1 無狀態操作 204
    7.5.2 有狀態操作 204
    7.5.3 DStream窗口操作 205
    7.5.4 DStream輸出操作 206
    本章小結 208
    練習七 208
    第8章 Spark MLlib機器學習 210
    8.1 機器學習概述 211
    8.1.1 機器學習簡介 211
    8.1.2 大數據與機器學習 211
    8.1.3 機器學習與人工智能 212
    8.1.4 機器學習與深度學習 212
    8.1.5 機器學習發展過程 213
    8.1.6 機器學習應用 213
    8.2 機器學習分類 214
    8.2.1 監督學習 215
    8.2.2 無監督學習 215
    8.2.3 半監督學習 215
    8.2.4 強化學習 216
    8.2.5 機器學習的基本任務 216
    8.3 機器學習基本流程 216
    8.3.1 機器學習基本步驟 216
    8.3.2 Spark機器學習流程 217
    8.4 Spark MLlib機器學習庫 220
    8.4.1 MLlib介紹 220
    8.3.2 MLlib數據類型 221
    8.3.3 MLlib 統計工具 224
    8.5 Spark MLlib常用算法 227
    8.5.1 算法的選擇 227
    8.5.2 分類算法 228
    8.5.3 回歸算法 229
    8.5.4 聚類算法 231
    8.5.6 協同過濾算法 231
    本章小結 233
    練習八 233
    第9章 訂單交易監控系統 234
    9.1 系統介紹 235
    9.1.1 項目背景 235
    9.1.2 相關技術介紹 235
    9.2 系統設計 236
    9.2.1 流程設計 236
    9.2.2 系統架構 237
    9.2.3 技術選型 237
    9.3 基礎環境配置 238
    9.3.1 MariaDB數據庫部署 238
    9.3.2 ZooKeeper集群部署 241
    9.3.3 Kafka集群部署 243
    9.3.4 Canal安裝配置 244
    9.3.5 HBase安裝配置 246
    9.4 系統功能開發 248
    9.4.1 訂單交易數據表設計 248
    9.4.2 訂單Mock數據生成 249
    9.4.3 訂單交易數據采集 253
    9.4.4 訂單交易數據分析 254
    本章小結 258
    練習九 259
    參考文獻 260
最新評論共有 0 位網友發表了評論
發表評論
評論內容:不能超過250字,需審核,請自覺遵守互聯網相關政策法規。
用戶名: 密碼:
匿名?
注冊
林周县| 太原市| 鹤山市| 稷山县| 大田县| 察雅县| 始兴县| 南雄市| 兴城市| 内江市| 罗城| 乃东县| 乐清市| 迭部县| 厦门市| 静海县| 全南县| 遵化市| 墨竹工卡县| 珲春市| 大邑县| 西城区| 鄂尔多斯市| 上蔡县| 锦屏县| 临漳县| 禄丰县| 迭部县| 佛冈县| 百色市| 上饶市| 左权县| 长武县| 内黄县| 凤阳县| 灵台县| 衡东县| 泸水县| 黔南| 刚察县| 宝鸡市|