培訓(xùn)背景
課程通過完整的大數(shù)據(jù)開發(fā)項目及一組實際項目訓(xùn)練與實戰(zhàn)案例,完全覆蓋Hadoop與Spark生態(tài)系統(tǒng)平臺的應(yīng)用開發(fā)與運(yùn)維實踐。課堂實踐項目以項目小組的形式進(jìn)行沙盤實操練習(xí),重點(diǎn)強(qiáng)化理解Hadoop與Spark大數(shù)據(jù)項目各個階段的工作重點(diǎn),同時掌握作為大數(shù)據(jù)項目管理者的基本技術(shù)與業(yè)務(wù)素養(yǎng)。
培訓(xùn)收益
1.掌握業(yè)界最流行的MapReduce分布式計算框架關(guān)鍵技術(shù)、工作機(jī)制與編程模型,以及MapReduce最佳實踐開發(fā)技術(shù),包括cominber、partition和shuffle優(yōu)化;
2.掌握基于內(nèi)存的大數(shù)據(jù)統(tǒng)一編程框Spark核心技術(shù)、RDD數(shù)據(jù)模型、DAG圖執(zhí)行模式、緩存機(jī)制、容錯機(jī)制、分布式系統(tǒng)架構(gòu),以及基于Scala的編程開發(fā)模型、常用數(shù)據(jù)處理函數(shù)、性能優(yōu)化技術(shù);
3.掌握大數(shù)據(jù)分布式文件系統(tǒng)HDFS關(guān)鍵機(jī)制、分布式系統(tǒng)架構(gòu)、高可用方案、擴(kuò)容方案、運(yùn)維參數(shù)與性能優(yōu)化;
4.掌握Hadoop分布式集群部署、參數(shù)設(shè)置與運(yùn)維關(guān)鍵技術(shù);
5.掌握YARN框架工作機(jī)制、關(guān)鍵組件,以及資源調(diào)度器的工作原理、常用調(diào)度策略和優(yōu)化方向;
6.掌握NoSQL分布式數(shù)據(jù)庫HBase工作機(jī)制、分布式系統(tǒng)架構(gòu)、數(shù)據(jù)組織方式、讀寫機(jī)制,以及HBase表模式設(shè)計最佳實踐;
7.掌握基于MapReduce和Spark的大數(shù)據(jù)倉庫Hive與SparkSQL的工作原理,常見SQL操作,存儲格式優(yōu)化,分區(qū)/分桶技術(shù);
8.掌握經(jīng)典數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)算法,掌握基于Spark的機(jī)器學(xué)習(xí)算法庫MLlib,及其數(shù)據(jù)模型和編程開發(fā)模型,掌握基于大數(shù)據(jù)的推薦技術(shù)與協(xié)同過濾算法;
9.掌握大數(shù)據(jù)分布式協(xié)同管理系統(tǒng)Zookeeper原理知識和應(yīng)用場景;
10.深入理解大數(shù)據(jù)平臺主流技術(shù)架構(gòu)和各關(guān)鍵組件適用場景;
11.嫻熟運(yùn)用Hadoop與Spark大數(shù)據(jù)技術(shù)體系規(guī)劃解決方案滿足實際項目需求;
12.通過實戰(zhàn)操作熟練地掌握基于Hadoop與Spark大數(shù)據(jù)平臺進(jìn)行應(yīng)用程序開發(fā)、集群運(yùn)維管理和性能調(diào)優(yōu)技巧。
培訓(xùn)特色
本課程的授課師資都是有著多年在一線從事Hadoop與Spark大數(shù)據(jù)項目的資深講師,采用原理技術(shù)剖析和實戰(zhàn)案例相結(jié)合的方式開展互動教學(xué)、強(qiáng)化以建立大數(shù)據(jù)項目解決方案為主體的應(yīng)用開發(fā)、技術(shù)討論與交流咨詢,在學(xué)習(xí)的同時促進(jìn)講師學(xué)員之間的交流,讓每個學(xué)員都能在課程培訓(xùn)過程中學(xué)到實實在在的大數(shù)據(jù)技術(shù)知識體系,以及大數(shù)據(jù)技術(shù)應(yīng)用實戰(zhàn)技能,具備實際大數(shù)據(jù)應(yīng)用項目的動手開發(fā)實踐與運(yùn)維管理部署能力。
課程大綱
日程 | 培訓(xùn)模塊 | 培訓(xùn)內(nèi)容 |
---|---|---|
第一天 上午 | 大數(shù)據(jù)存儲系統(tǒng)與技術(shù)應(yīng)用 | 1.分布式文件系統(tǒng)HDFS產(chǎn)生背景與適用場景 2.HDFS master-slave系統(tǒng)架構(gòu)與讀寫工作原理 3.HDFS核心組件技術(shù)講解,NameNode與fsimage、editslog,DataNode與數(shù)據(jù)塊 4.HDFS Federation機(jī)制,viewfs機(jī)制,使用場景講解 5.HDFS高可用保證機(jī)制,SecondaryNameNode,NFS冷備份,基于zookeeper的HA方案 6.HDFS運(yùn)維參數(shù)調(diào)優(yōu)與性能優(yōu)化 |
大數(shù)據(jù)計算框架(一) 批處理框架MapReduce | 1.MapReduce產(chǎn)生背景與適用場景 2.MapReduce計算模型的基本原理 3.MapReduce作業(yè)執(zhí)行流程 4.MapReduce編程模型: Map處理和Reduce處理 5.MapReduce處理流程:數(shù)據(jù)讀取collect、中間數(shù)據(jù)sort、中間數(shù)據(jù)spill、中間數(shù)據(jù)shuffle、聚合分析reduce 6.MapReduce開發(fā)高級應(yīng)用:Combiner技術(shù)與應(yīng)用場景、Partitioner技術(shù)與應(yīng)用場景、多Reducers應(yīng)用 7.應(yīng)用案例:基于HDFS+MapReduce集成的服務(wù)器日志分析采集、存儲與分析MapReduce程序?qū)嵗_發(fā)與運(yùn)行 8.MapReduce參數(shù)調(diào)優(yōu)與性能優(yōu)化技巧 | |
第一天 下午 |
Hadoop YARN工作機(jī)制 與資源管理 | 1.Hadoop的發(fā)展歷程 2.Hadoop 1.0的核心組件Jobtracker,Tasktracker,以及適用范圍 3.Hadoop 2.0的核心組件YARN工作原理,以及與Hadoop 1.0的聯(lián)系與區(qū)別 4.YARN 關(guān)鍵機(jī)制:任務(wù)推測執(zhí)行,任務(wù)容錯,任務(wù)選擇執(zhí)行,心跳機(jī)制 5.Hadoop YARN的資源管理與作業(yè)調(diào)度機(jī)制:FIFO調(diào)度,Capacity調(diào)度器,F(xiàn)air調(diào)度器 6.Hadoop YARN常用運(yùn)維參數(shù)調(diào)優(yōu)與性能優(yōu)化技術(shù) |
大數(shù)據(jù)實戰(zhàn)練習(xí)一 |
1. Hadoop分布式集群搭建、部署與應(yīng)用實踐,包含HDFS分布式文件系統(tǒng),YARN資源管理軟件,MapReduce計算框架軟件 2. HDFS 文件、目錄創(chuàng)建、上傳、下載等命令操作,HDFS合并、歸檔操作,HDFS監(jiān)控平臺使用 3. MapReduce程序在YARN上運(yùn)行,YARN監(jiān)控平臺使用 4. 面向HDFS文件系統(tǒng)的數(shù)據(jù)采集實踐 | |
大數(shù)據(jù)計算模型(二) 實時處理/內(nèi)存計算 Spark |
1.MapReduce計算模型的瓶頸 2.Spark產(chǎn)生動機(jī)、基本概念與適用場景 3.Spark編程模型與RDD彈性分布式數(shù)據(jù)集的工作原理與機(jī)制 4.Spark實時處理平臺運(yùn)行架構(gòu)與核心組件 5.Spark RDD主要transformation:map, flatMap, filter, union, sample, join, reduceByKey, groupByKey 6.Spark RDD主要action:count,collect,reduce,saveAsTextFile 7.Spark寬、窄依賴關(guān)系與DAG圖分析 8.Spark容錯機(jī)制 9.Spark作業(yè)調(diào)度機(jī)制 10.Spark緩存機(jī)制:Cache操作,Persist操作與存儲級別 11.Spark作業(yè)執(zhí)行機(jī)制:執(zhí)行DAG圖、任務(wù)集、executor執(zhí)行模型、 BlockManager管理 12.Spark standardalone,Spark on YARN運(yùn)行模式 13.Scala開發(fā)介紹與函數(shù)編寫 14.Spark常用transformation函數(shù)介紹 15.Spark調(diào)優(yōu):序列化機(jī)制、RDD復(fù)用、Broadcast機(jī)制、高性能算子、資源參數(shù)調(diào)優(yōu) | |
第二天 下午 |
大數(shù)據(jù)數(shù)據(jù)倉庫查詢工具 Hive與SparkSQL剖析 |
1.基于MapReduce的大型分布式數(shù)據(jù)倉庫Hive基礎(chǔ)知識與應(yīng)用場景 2.Hive數(shù)據(jù)倉庫的平臺架構(gòu)與核心技術(shù)剖析 3.Hive metastore的工作機(jī)制與應(yīng)用 4.Hive內(nèi)部表和外部表 5.Hive 分區(qū)、分桶機(jī)制 6.Hive行、列存儲格式 7.Hive結(jié)果保存與新表生成 8.基于Spark的大型分布式數(shù)據(jù)倉庫SparkSQL基礎(chǔ)知識與應(yīng)用場景 9.Spark SQL實時數(shù)據(jù)倉庫的實現(xiàn)原理與工作機(jī)制 10.SparkSQL數(shù)據(jù)模型DataFrame 11.基于DataFrame的SparkSQL程序開發(fā) 12.Spark-sql shell使用,共享使用Hive表進(jìn)行SQL查詢分析 13.SparkSQL數(shù)據(jù)讀取與結(jié)果保存:json,Hive table,Parquet file,RDD 14.SparkSQL和Hive的區(qū)別與聯(lián)系 15.制造行業(yè)Hive與SparkSQL應(yīng)用案例介紹 |
大數(shù)據(jù)實戰(zhàn)練習(xí)二 |
1.Spark分布式集群平臺搭建、部署與配置Spark集群,Spark shell環(huán)境實踐操作,Spark案例程序分析 2.基于sbt的Spark程序編譯、開發(fā)與提交運(yùn)行 3.應(yīng)用案例一:基于Spark的服務(wù)器運(yùn)行日志TopN分析、程序?qū)嵗_發(fā) 4.應(yīng)用案例二: 基于Spark的搜索引擎日志熱詞與用戶分析、程序?qū)嵗_發(fā) 5.Hive數(shù)據(jù)倉庫實踐,Hive集群安裝部署,基于文件的Hive數(shù)據(jù)倉庫表導(dǎo)入導(dǎo)出與分區(qū)操作,Hive SQL操作,Hive客戶端操作 6.SparkSQL數(shù)據(jù)倉庫實戰(zhàn):shell實踐操作:數(shù)據(jù)表讀取、查詢與結(jié)果保存 | |
第三天 上午 |
分布式NoSQL數(shù)據(jù)庫關(guān)鍵 技術(shù)及應(yīng)用實踐 |
1.關(guān)系型數(shù)據(jù)庫瓶頸,以及NoSQL數(shù)據(jù)庫的發(fā)展,概念,分類,及其在半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)場景下的適用范圍 2.列存儲NoSQL數(shù)據(jù)庫HBase簡介 3.HBase數(shù)據(jù)模型剖析:row key、列簇、單元格和時間戳版本號 4.HBase分布式集群系統(tǒng)架構(gòu):HMaster、RegionServer和Zookeeper 5.HBase LSM數(shù)據(jù)組織結(jié)構(gòu)與讀寫機(jī)制,以及HBase讀寫性能特性 6.HBase表設(shè)計模式與primary key設(shè)計規(guī)范 7.HBase基本操作:數(shù)據(jù)插入、修改與刪除,單鍵查詢與范圍查詢 |
大數(shù)據(jù)分布式系統(tǒng)管理 系統(tǒng)zookeeper |
1.Zookeeper工作原理 2.Zookeeper系統(tǒng)架構(gòu):服務(wù)器集群和客戶端 3.Zookeeper數(shù)據(jù)結(jié)構(gòu) 4.Zookeeper watch機(jī)制 5.Zookeeper適用場景 | |
第三天 下午 |
數(shù)據(jù)挖掘與 大數(shù)據(jù)機(jī)器學(xué)習(xí)技術(shù) |
1.機(jī)器學(xué)習(xí)發(fā)展歷程 2.機(jī)器學(xué)習(xí)與大數(shù)據(jù)關(guān)聯(lián)與區(qū)別 3.數(shù)據(jù)挖掘經(jīng)典算法 4.回歸算法:線性回歸與應(yīng)用場景,非線性回歸與應(yīng)用場景 5.分類算法:邏輯回歸與應(yīng)用場景,決策樹與應(yīng)用場景,樸素貝葉斯算法與應(yīng)用場景,支持向量機(jī)算法與應(yīng)用場景 6.聚類算法; k-means與應(yīng)用場景 7.大數(shù)據(jù)推薦技術(shù):協(xié)同過濾,距離計算;基于物品的協(xié)同過濾算法,基于用戶的協(xié)同過濾算法 8.基于Spark的機(jī)器學(xué)習(xí)庫Spark MLlib 9.Spark MLlib支持的數(shù)據(jù)挖掘算法 10.Spark MLlib數(shù)據(jù)模型與使用 11.Spark MLlib編程模型與開發(fā) |
大數(shù)據(jù)實戰(zhàn)練習(xí)三 |
1.大數(shù)據(jù)機(jī)器學(xué)習(xí)實戰(zhàn):基于Spark MLlib的數(shù)據(jù)分類;基于Spark MLlib的聚類 2.大數(shù)據(jù)推薦實戰(zhàn):基于用戶產(chǎn)品購買記錄,使用Spark進(jìn)行數(shù)據(jù)清洗與預(yù)處理,使用Spark MLlib進(jìn)行協(xié)同過濾與推薦 | |
大數(shù)據(jù)項目選型、實施、 優(yōu)化等問題交流討論 | 大數(shù)據(jù)項目的需求分析、應(yīng)用實施、系統(tǒng)優(yōu)化,以及解決方案等咨詢與交流討論 |