《Spark 2.1》第二期

799

 

 

 

課程名稱:

 

《Spark 2.1 原理、內幕與案例實踐》第二期
 

主講老師:
 

董西成    hulu大數據架構組負責人

《Hadoop技術內幕:深入解析MapReduce架構設計與實現原理》和《Hadoop技術內幕:深入解析YARN架構設計與實現原理》作者;

資深Hadoop技術實踐者和研究者,曾參與商用Hadoop原型研發,以及分布式日志系統、全網圖片搜索引擎、Hadoop調度器等項目的設計。

 

 

課程簡介:

 

以目前主流的,最新的spark穩定版2.1.x為基礎,深入淺出地介紹Spark生態系統原理及應用,內容包括Spark各組件(Spark Core/SQL/Streaming/MLlib)基本原理,使用方法,實戰經驗以及在線演示。本課程精心設計了五個企業級應用案例,幫助大家在理解理論的基礎上,親手實踐和應用spark

 

課程優化:

 

      1. 講述最新、最穩定的Spark2.1.X版本

      2. 精心設計5個企業級應用案例,更好地實踐、應用Spark

 

面向人群:

 

      1.  大數據愛好者

      2.  Spark初中級學者

      3.  對Spark感興趣、想系統性學習者

 

 

學習收益:

 

      1.  熟練使用Spark, 理解Spark原理,熟知Spark內幕

      2.  掌握Spark 2.1新增特性并熟練使用

      3.  用有豐富的Spark企業實戰經驗

 

 

 

課程大綱:

 

第一部分:Spark 概述

 

第一課:Spark 2.1概述

 

      1.  Spark產生背景

           包括mapreduce缺陷,多計算框架并存等

      2.  Spark 基本特點

      3.  Spark版本演化

      4.  Spark核心概念

           包括RDD, transformation, action, cache等

       5.  Spark生態系統

包括Spark生態系統構成,以及與Hadoop生態系統關系

      6.  Spark在互聯網公司中的地位與應用

           介紹當前互聯網公司的Spark應用案例

      7.  Spark集群搭建

           包括測試集群搭建和生產環境中集群搭建方法,并親手演示整個過程

      8.  背景知識補充介紹

     a.  Hadoop基礎

           b.  HDFS簡介(特點、架構與應用)

           c.  YARN簡介(架構)

           d.  MapReduce簡介(編程模型與應用)

                I.  Eclipse與Intellij IDEA

                II. Maven

 

第二部分   Spark Core

 

第二課:Spark  程序設計與企業級應用案例

 

      1.  Spark運行模式介紹

           Spark運行組件構成,spark運行模式(local、standalone、mesos/yarn等)

      2.  Spark開發環境構建

           集成開發環境選擇,親手演示spark程序開發與調試,spark運行

      3.  常見transformation與action用法

           介紹常見transformation與action使用方法,以及代碼片段剖析

      4.  常見控制函數介紹

           包括cache、broadcast、accumulator等

      5.  Spark 應用案例:電影受眾分析系統

           包括:背景介紹,數據導入,數據分析,常見Spark transformation和action用法在線演示

 

第三課:Spark  內部原理剖析與源碼閱讀

 

      1.  Spark運行模式剖析

           深入分析spark運行模式,包括local,standalone以及spark on yarn

      2.  Spark運行流程剖析

           包括spark邏輯查詢計劃,物理查詢計劃以及分布式執行

      3.  Spark shuffle剖析

           深入介紹spark shuffle的實現,主要介紹hash-based和sort-based兩種實現

      4.  Spark 源碼閱讀

           Spark源碼構成以及閱讀方法

 

第四課:Spark  程序調優技巧

 

      1.  數據存儲格式調優

           數據存儲格式選擇,數據壓縮算法選擇等

      2.  資源調優

           如何設置合理的executor、cpu和內存數目,YARN多租戶調度器合理設置,啟用YARN的標簽調度策略等

      3.  程序參數調優

           介紹常見的調優參數,包括避免不必要的文件分發,調整任務并發度,提高數據本地性,JVM參數調優,序列化等

      4.  程序實現調優

           如何選擇最合適的transformation與action函數

      5.  調優案例分享與演示

           演示一個調優案例,如何將一個spark程序的性能逐步優化20倍以上。

 

第三部分   Spark SQL 2.1

 

第五課:Spark  SQL基本原理

 

     1.  Spark SQL是什么

      2.  Spark SQL基本原理

     3.  Spark  Dataframe與DataSet

      4.  Spark SQL與Spark Core的關系

 

第六課:Spark  SQL程序設計與企業級應用案例

 

      1.  Spark SQL程序設計

           a.  如何訪問MySQL、HDFS等數據源,如何處理parquet格式數據

           b.  常用的DSL語法有哪些,如何使用

           c.  Spark SQL調優技巧

     2.  Spark SQL應用案例:籃球運動員評估系統

 

           a.  背景介紹

           b.  數據導入

           c.  數據分析

           d.  結論

 

第四部分   Spark Streaming

 

第七課:Spark  Streaming、程序設計及應用案例

 

      1.Spark  Streaming基本原理

           a.  Spark Streaming是什么

           b.  Spark Streaming基本原理

           c.  Structured Streaming

           d.  Spark  Streaming 編程接口介紹

           e.  Spark Streaming應用案例

      2.  Spark  Streaming程序設計與企業級應用案例

           a.  常見流式數據處理模式

           b.  Spark Streaming與Kafka 交互

           c.  Spark Streaming與Redis交互

           d.  Spark Streaming部署與運行

           e.  Spark Streaming企業級案例:用戶行為實時分析系統

 

第五部分   Spark MLlib

 

第八課: Spark MLlib及企業級案例

 

      1.  Spark MLlib簡介

      2.  數據表示方式

      3.  MLlib中的聚類、分類和推薦算法

      4.  如何使用MLlib的算法

      5.  Spark MLLib企業級案例:信用卡欺詐檢測系統

 

第六部分Spark綜合案例

 

第九課:簡易電影推薦系統

 

     1.  背景介紹

      2.  什么是Lambda architecture

      3.  利用HDFS+Spark Core+MLlib+Redis構建批處理線

      4.  利用Kafka+Spark Streaming+Redis構建實時處理線

      5.  整合批處理和實時處理線

      6.  擴展介紹:Apache beam:統一編程模型及應用

 

常見問題:

 

Q: 本門課程需要什么基礎 ?

A: 了解Linux基礎知識,掌握Java或Scala語言基礎,了解Hadoop核心組件技術

Q:會有實際上機演示和動手操作嗎?

A:有的,幾乎每節課,老師均會準備上機演示部分,學員可以學習老師的實踐經驗

Q:本課程中的五個企業級應用案例的代碼會公開嗎?

A:會的,每位學員均可獲取全部代碼。

Q:本課程主要是基于Spark 2.1.x版本嗎,如果2.2.x或者更高版本出來了,內容會不會過期?

A:不會的。本課程以介紹Spark基本原理和使用技巧為主,這些內容適用于1.6.x之后個各個版本。

Q:本課程有專門的答疑時間嗎?

A:有的。助教會統一收集學員問題,老師在每節課最后部分,會在線回答20~30個問題,并由助教整理后發布到論壇中。

Q:在哪里上課?

A:課程直播和回放都在小象學院官網(http://epicabrazil.com)上進行,不需要其他直播軟件;如果希望上下班路上觀看,可以下載小象學院app進行緩存。

 
 

聯系方式:

 

參團后,請加客服微信:13011218970

手機:13011218970

郵件:admin@epicabrazil.com

網站:http://epicabrazil.com

 

 

授課教師

你懂的网址資深Hadoop技術實踐者和研究者,對Hadoop技術有非常深刻的認識和理解,有著豐富的實踐經驗。 曾經參與了商用Hadoop原型的研發,以...