hadoop,spark,大資料,資料分析,實戰內部培訓視訊資料價值W+

Zero麒麟發表於2016-08-15

課程列表:

某人學院

學堂

第一階段:Linux課程

講解linux基礎操作,講的是在命令列下進行檔案系統的操作,這是hadoop學習的基礎,後面的所有視訊都是基於linux操作的。鑑於很多學員沒有linux基礎,特增加該內容,保證零linux基礎入門。

如果你從沒有使用過linux,別擔心,本節內容可以讓你入門。

Linux
  • 認識linux
  • 如何使用vmware安裝linux映象
  • 認識linux的桌面環境、shell環境
  • 在shell環境下進行檔案系統的操作,掌握more、touch、cp、mv、rm等20多個常用命令
  • 學習linux的網路管理,掌握ip、hostname等設定
  • 學習vmware與linux的通訊設定,掌握如何實現host-only、bridge、nat等網路連線方式
  • 學習linux的程式管理,掌握如何檢視、刪除程式
  • 學習linux的軟體管理,掌握java、mysql等安裝
  • 學習環境變數配置,掌握如何設定環境變數
  • 學習linux的ssh管理,掌握如何實現免密碼登入
  • 學習linux的防火牆管理,掌握如何關閉防火牆及開放指定埠
  • 學習linux的排程管理,掌握crontab的使用

第二階段:hadoop2課程

搭建偽分佈實驗環境: 本節是最基本的課程,屬於入門級別,主要講述在linux單機上面安裝hadoop的偽分佈模式,在linux叢集上面安裝hadoop叢集。對於不熟悉linux的同學,課程中會簡單的講解常用的linux命令。這兩種是必須要掌握的。通過現在的教學發現,很多同學並不能正確的配置環境。

搭建偽分佈實驗環境
  • Hadoop概念、版本、歷史
  • Hadoop和核心組成介紹及hdfs、mapreduce體系結構
  • Hadoop的叢集結構
  • Hadoop偽分佈的詳細安裝步驟
  • 如何通過命令列和瀏覽器觀察hadoop

介紹HDFS體系結構及shell、java操作方式: 本節是對hadoop核心之一——hdfs的講解。hdfs是所有hadoop操作的基礎,屬於基本的內容。對本節內容的理解直接影響以後所有課程的學習。在本節學習中,我們會講述hdfs的體系結構,以及使用shell、java不同方式對hdfs的操作。在工作中,這兩種方式都非常常用。學會了本節內容,就可以自己開發網盤應用了。在本節學習中,我們不僅對理論和操作進行講解,也會講解hdfs的原始碼,方便部分學員以後對hadoop原始碼進行修改。最後,還要講解hadoop的RPC機制,這是hadoop執行的基礎,通過該節學習,我們就可以明白hadoop是怎麼明白的了,不必糊塗了,本節內容特別重要。

介紹HDFS體系結構及
shell、java操作方式
  • Hdfs體系結構詳述
  • NameNode、DataNode、SecondaryNameNode體系結構
  • 如果保證namenode的高可靠
  • Datanode中block的劃分原理和儲存方式
  • 如何修改namenode、datanode資料儲存位置
  • 如何使用命令列操縱hdfs
  • 如何使用java操作hdfs
  • 介紹rpc機制
  • 通過檢視原始碼,知曉hadoop是建構在rpc之上的
  • 通過檢視hdfs原始碼,知曉客戶端是如何與Namenode通過rpc通訊的

介紹MapReduce體系結構及各種演算法(1): 本節開始對hadoop核心之一——mapreduce的講解。mapreduce是hadoop的核心,是以後各種框架執行的基礎,這是必須掌握的。在本次講解中,掌握mapreduce執行的詳細過程,以單詞計數為例,講解mapreduce的詳細執行過程。還講解hadoop的序列化機制和資料型別,並使用自定義型別實現電信日誌資訊的統計。

介紹MapReduce體
繫結構及各種演算法(1)
  • Mapreduce原理
  • Mapreduce執行的八大步驟
  • 詳細講述如何使用mapreduce實現單詞計數功能
  • 詳細講述如何覆蓋Mapper功能、如何覆蓋Reducer功能。在各種hadoop認證中,這是考察重點
  • 詳細講述hadoop的自定義型別Writable介面
  • 通過電信上網日誌例項講述如何自定義hadoop型別
  • 例項講述hadoop1的各種輸入來源處理器,包括資料庫輸入、xml檔案、多檔案輸入等,並且講解如何自定
    義輸入來源處理器
  • 例項講述hadoop1的各種輸出來源,包括資料庫輸出、檔案輸出等,並且講解如何自定義輸出來源處理器,
    實現自定義輸出檔名稱
  • 通過原始碼講述hadoop是如何讀取hdfs檔案,並且轉化為鍵值對,供map方法呼叫的

介紹MapReduce體系結構及各種演算法(2): 本節繼續講解mapreduce,會把舊api的用法、計數器、combiner、partitioner、排序演算法、分組演算法等全部講解完畢。通過這兩次課程學習,學員可以把整個mapreduce的執行細節搞清楚,把各個可擴充套件點都搞明白。本節內容在目前市面可見的圖書、視訊中還沒有發現如此全面的哪。

介紹MapReduce體
繫結構及各種演算法(2)
  • 講解新舊api的區別,如何使用舊api完成操作
  • 介紹如何打包成jar,在命令列執行hadoop程式
  • 介紹hadoop的內建計數器,以及自定義計數器
  • 介紹合併(combiner)概念、為什麼使用、如何使用、使用時有什麼限制條件
  • 介紹了hadoop內建的分割槽(partitioner)概念、為什麼使用、如何使用
  • 介紹了hadoop內建的排序演算法,以及如何自定義排序規則
  • 介紹了hadoop內建的分組演算法,以及如何自定義分組規則
  • 介紹了mapreduce的常見應用場景,以及如何實現mapreduce演算法講解
  • 如何優化mapreduce演算法,實現更高的執行效率

第三階段:zookeeper課程

本節內容與hadoop關係不大,只是在hbase叢集安裝時才用到。但是,zookeeper在分散式專案中應用較多。

zookeeper
  • Zookeeper是什麼
  • 搭建zookeeper叢集環境
  • 如何使用命令列操作zookeeper
  • 如何使用java操作zookeeper

第四階段:HBase課程

hbase是個好東西,在以後工作中會經常遇到,特別是電信、銀行、保險等行業。本節講解hbase的偽分佈和叢集的安裝,講解基本理論和各種操作。我們通過對hbase原理的講解,讓大家明白為什麼hbase會這麼適合大資料的實時查詢。最後講解hbase如何設計表結構,這是hbase優化的重點。

HBase
  • hbase的概述
  • hbase的資料模型
  • hbase的表設計
  • hbase的偽分散式和叢集安裝
  • hbase的shell操作
  • hbase的JavaAPI操作
  • hbase的資料遷移
  • hbase的資料備份及恢復
  • Hbase結合Hive使用
  • hbase的叢集管理
  • hbase的效能調優

第五階段:CM+CDH叢集管理課程

由cloudera公司開發的叢集web管理工具cloudera manager(簡稱CM)和CDH目前在企業中使用的比重很大,掌握CM+CDH叢集管理和使用 不僅簡化了叢集安裝、配置、調優等工作,而且對任務監控、叢集預警、快速定位問題都有很大的幫助。

CM+CDH叢集管理
  • CM + CDH叢集的安裝
  • 基於CM主機及各種服務元件的管理
  • CDH叢集的配置和引數調優
  • CDH叢集HA配置及叢集升級
  • CM的監控管理
  • 叢集管理的注意事項

第六階段:Hive課程

在《hadoop1零基礎拿高薪》課程中我們涉及了Hive框架內容,不過內容偏少,作為入門講解可以,但是在工作中還會遇到很多課程中沒有的。本課程的目的就是把Hive框架的邊邊角角都涉獵到,重點講解Hive的資料庫管理、資料表管理、表連線、查詢優化、如何設計Hive表結構。這都是工作中最急需的內容,是工作中的重點。

Hive的概述、安裝
與基本操作
  • 大家習慣把Hive稱為hadoop領域的資料倉儲。Hive使用起來非常像MySQL,但是比使用MySQL更有意思。
    我們在這裡要講述Hive的體系結構、如何安裝Hive。還會講述Hive的基本操作,目的是為了下面的繼續學習。
  • (理論所佔比重★★★ 實戰所佔比重★★)
Hive支援的資料型別
  • Hive的支援的資料型別逐漸增多。其中複合資料型別,可以把關聯式資料庫中的一對多關係挪到Hive的一張表中,
    這是一個很神奇的事情,顛覆了我們之前的資料庫設計正規化。我們會講解如何使用這種資料型別,如何把關係數
    據庫的表遷移到Hive表。
  • (理論所佔比重★★ 實戰所佔比重★★★)
Hive資料的管理
  • 我們總拿Hive與MySQL做類比。其中,Hive對資料的操作方法是與MySQL最大的不同。我們會學習如何匯入數
    據、匯出資料,會學習如何分割槽匯入、如何增量匯入,會學習匯入過程中如何優化操作等內容。這部分內容是工
    作中使用頻率最高的內容之一。
  • (理論所佔比重★ 實戰所佔比重★★★★)
Hive的查詢
  • 這部分內容講解Hive查詢語句的基本結構,重點講解表連線。其中,有一些我們原來不知道的語法如left semi-
    join、sort by、cluster by等。這部分也在工作中用的是最多的內容之一。
  • (理論所佔比重★★ 實戰所佔比重★★★)
Hive的函式
  • Hive是對查詢語法的擴充,Hive執行我們非常方便的使用java來編寫函式,特別方便。我們除了簡單介紹常見的
    單行函式、聚合函式、表函式之外,還會介紹如何自定義函式。這樣,我們就可以擴充原有函式庫,實現自己的
    業務邏輯。這是體系我們能力的好地方!
  • (理論所佔比重★★★ 實戰所佔比重★★)
Hive的檔案格式
  • Hive的儲存除了普通檔案格式,也包括序列化檔案格式和列式儲存格式。講解分別如何使用他們,已經何種場景
    下使用他們。最後講解如何自定義資料儲存格式。
  • (理論所佔比重★★★ 實戰所佔比重★★)
Hive的效能調優
  • 終於來到效能調優部分。我們會講解本地模式、嚴格模式、並行執行、join優化等內容。通過實驗對比發現優化
    手段的價值所在。這是整個課程的精華,也是我們以後工作能力的最重要的體現。
  • (理論所佔比重★ 實戰所佔比重★★★★)
專案實戰
  • 我們會通過一個電信專案來把前面的內容綜合運用起來。這是一個來自於真實工作環境的專案,學習如何使用各
    個知識點滿足專案要求。並有真實資料提供給大家,供大家課下自己練習。
  • (理論所佔比重★ 實戰所佔比重★★★★)
雜記
  • 包括一些瑣碎知識點,比如檢視、索引、與HBase整合等。這些不好歸入前面的某個章節,單獨列出。並且根據
    學員就業面試情況,也不會不斷增補內容。
  • (理論所佔比重★★★ 實戰所佔比重★★)

第七階段:Sqoop課程

sqoop適用於在關聯式資料庫與hdfs之間進行雙向資料轉換的,在企業中,非常常用。

Sqoop
  • Sqoop是什麼
  • 實戰:講解Sqoop如何把mysql中的資料匯入到hdfs中
  • 實戰:講解Sqoop如何把hdfs中的資料匯出到mysql中
  • Sqoop如何做成job,方便以後快速執行

第八階段:Flume課程

Flume是cloudera公佈的分散式日誌收集系統,是用來把各個的伺服器中資料收集,統一提交到hdfs或者其他目的地,是hadoop儲存資料的來源,企業中非常流行。

Flume
  • Flume是什麼
  • 詳細Flume的體系結構
  • 講述如何書寫flume的agent配置資訊
  • 實戰:flume如何動態監控資料夾中檔案變化
  • 實戰:flume如何把資料匯入到hdfs中
  • 實戰:講解如何通過flume動態監控日誌檔案變化,然後匯入到hdfs中

第九階段:Kafka課程

Kafka是訊息系統,類似於ActiveMQ、RabbitMQ,但是效率更高。

Kafka
  • kafka是什麼
  • kafka體系結構
  • kafka的安裝
  • kafka的儲存策略
  • kafka的釋出與訂閱
  • 使用Zookeeper協調管理
  • 實戰:Kafka和Storm的綜合應用

第十階段:Storm課程

Storm是專門用於解決實時計算的,與hadoop框架搭配使用。本課程講解Storm的基礎結構、理論體系,如何部署Storm叢集,如何進行本地開發和分散式開發。通過本課程,大家可以進入到Storm殿堂,看各種Storm技術文章不再難,進行Storm開發也不再畏懼。

Storm
  • Storm是什麼,包括基本概念和應用領域
  • Storm的體系結構、工作原理
  • Storm的單機環境配置、叢集環境配置
  • Storm核心元件,包括Spout、Bolt、Stream Groupings等等
  • Storm如何實現訊息處理的安全性,保證訊息處理無遺漏
  • Storm的批處理事務處理
  • 實戰:使用Storm完成單詞計數等操作
  • 實戰:計算網站的pv、uv等操作

第十一階段:Redis課程

redis是一款高效能的基於記憶體的鍵值資料庫,在網際網路公司中應用很廣泛。

Redis
  • redis特點、與其他資料庫的比較
  • 如何安裝redis
  • 如何使用命令列客戶端
  • redis的字串型別
  • redis的雜湊型別
  • redis的列表型別
  • redis的集合型別
  • 如何使用java訪問redis
  • redis的事務(transaction)
  • redis的管道(pipeline)
  • redis持久化(AOF+RDB)
  • redis優化
  • redis的主從複製
  • redis的sentinel高可用
  • redis3.x叢集安裝配置

第十二階段:Scala課程

Scala是學習spark的必備基礎語言,必須要掌握的。

Scala
  • scala直譯器、變數、常用資料型別等
  • scala的條件表示式、輸入輸出、迴圈等控制結構
  • scala的函式、預設引數、變長引數等
  • scala的陣列、變長陣列、多維陣列等
  • scala的對映、元祖等操作
  • scala的類,包括bean屬性、輔助構造器、主構造器等
  • scala的物件、單例物件、伴生物件、擴充套件類、apply方法等
  • scala的包、引入、繼承等概念
  • scala的特質
  • scala的操作符
  • scala的高階函式(這是重點,spark的原始碼幾乎全是高階函式)
  • scala的集合

第十三階段:Spark課程

Spark是一款高效能的分散式計算框架,傳言比MapReduce計算快100倍,本課程為你揭祕。

Spark
  • Spark入門
  • Spark與Hadoop的比較
  • Spark環境搭建
  • 實戰:使用Spark完成單詞計數
  • Spark快取策略
  • Spark的transformation和action
  • Spark的容錯機制
  • Spark的核心元件
  • Spark的各種RDD
  • Spark的流計算

第十四階段:Oozie課程

oozie是Hadoop生態系統中比較重要的框架,在系統中扮演的角色是工作流引擎伺服器,用於執行Hadoop Map/Reduce任務工作流(包括MR、Hive、Pig、Sqoop等),企業中多由於整個專案流程任務排程。

Oozie
  • Oozie入門介紹
  • Oozie安裝配置及其簡單操作
  • hPDL語言學習及流程定義
  • oozie工作流配置及後設資料庫定義
  • oozie定時任務排程和oozie API操作

第十五階段:Impala課程

Impala是Cloudera公司參照 Google Dreme系統進行設計並主導開發的新型查詢系統,它提供複雜SQL語義,能查詢儲存在Hadoop的HDFS和HBase中的PB級大資料。

Impala
  • Impala及其架構介紹
  • Impala使用方法
  • Impala配置及其調優
  • Impala專案應用
  • Impala和spark SQL對比

第十六階段:Kettle課程

Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上執行,資料抽取高效穩定。ETL是指資料的抽取(extract)、轉換(transform)、載入(load)至目的端。

Kettle
  • kettle簡介
  • windows開發環境的搭建和使用
  • linux下伺服器的搭建和使用
  • 資源庫、變數、共享庫的配置
  • kettle常用元件
  • kettle的應用案例

第十七階段:Ganglia課程

Ganglia是一個對於數以萬計的節點的各個指標的圖表監控框架,提供完整的一套圖形監控介面,支援C、C++、python擴充套件自定義指標和使用者檢視。

Ganglia
  • ganglia的基本原
  • 搭建和使用ganglia監控伺服器的指標
  • 配置和使用ganglia監控大資料hadoop和habase叢集、flume監控
  • 編寫和使用自定義指標

第十八階段:Tachyon課程

Tachyon是一個開源分散式記憶體儲存系統,擁有高效能、高容錯等優點。並具有類Java的檔案API、外掛式的底層檔案系統、相容Hadoop MapReduce和 Apache Spark 等特徵。Tachyon能夠為叢集框架(如Spark、MapReduce等)提供記憶體級速度的跨叢集檔案共享服務,官方號稱最高比HDFS吞吐量高300倍。

Tachyon
  • Tachyon簡介
  • Tachyon架構詳解
  • Tachyon安裝
  • Tachyon引數配置
  • Tachyon結合Hadoop使用
  • Tachyon結合Spark使用

第十九階段:Solr課程

Solr
  • Solr簡介
  • Solr安裝部署
  • Solr example詳解
  • solr配置資訊詳解
  • solr fact查詢
  • solr複雜查詢
  • 自定義中文分詞工具和詞庫
  • 使用solrj實現java操作solr
  • solr高亮元件
  • solr優化
  • solr主從結構部署
  • solrcloud叢集安裝部署
  • solr實現應用

第二十階段:elasticsearch課程

elasticsearch
  • elasticsearch簡介
  • elasticsearch和solr的對比
  • elasticsearch安裝部署
  • elasticsearch service wrapper啟動外掛
  • 使用curl操作elasticsearch索引庫
  • elasticsearch DSL查詢
  • elasticsearch批量查詢meet
  • elasticsearch批量操作bulk
  • elasticsearch外掛介紹
  • elasticsearch配置檔案詳解
  • java操作elasticsearch
  • elasticsearch的分頁查詢
  • elasticsearch中文分詞工具的整合
  • elasticsearch優化
  • elasticsearch叢集部署

第二十一階段:多執行緒課程

多執行緒
  • 執行緒管理
  • 執行緒的同步,包括使用synchronized、lock、定時器、訊號量等
  • 執行緒池的建立和管理
  • 併發集合的使用

第二十二階段:Java虛擬機器優化課程

Java虛擬機器優化
  • 認識jvm
  • java 記憶體區域與記憶體的分配
  • 垃圾收集器與回收機制
  • 虛擬機器效能監控與故障處理常用工具
  • 執行緒安全與鎖優化
  • 大資料中的jvm 優化

第二十三階段:Python課程

Python
  • Python 簡介
  • Python 基本語法
  • 使用 Python 寫 MapReduce 程式、Spark 程式

第二十四階段:Mahout課程

Mahout是資料探勘和機器學習領域的利器,本課程是帶領大家進入到這個領域中。課程內容包括Mahout體系結構介紹、Mahout如何在推薦、分類、聚類領域中使用。

Mahout
  • Mahout是什麼,有哪些應用場景
  • Mahout機器學習環境的搭建和部署
  • Mahout中支援哪些高大上的演算法
  • 使用Mahout完成推薦引擎
  • 實戰:實現基於web訪問的推薦程式
  • 什麼是聚類
  • 基於Mahout的常見聚類演算法,如k-means演算法
  • 實戰:實現新聞內容的聚類
  • 什麼是分類
  • 分類的工作原理
  • 提取特徵構建分類器
  • 實戰:構建分類伺服器

第二十五階段:實戰專案

xx論壇日誌分析(錄播): 該專案的資料來自於黑馬程式設計師(http://edu.csdn.net/)論壇的日誌,該專案是為本課程量身定做的,非常適合我們hadoop課程學習。有的同學覺得應該介紹更多專案,其實做過幾個專案後,就會發現專案的思路是相同的,只是業務不同而已。大家寫過這個專案後,就對hadoop的各個框架在專案中是如何使用的,有個比較清晰的認識,對hadoop與javaEE結合有個比較清晰的認識了。 
注:很多學員進入公司後發現,公司中大部分hadoop日誌分析專案,都是該專案的開發過程,千真萬確!

xx論壇日誌分析(錄播)
  • 專案背景介紹
  • 資料規模介紹
  • 業務關鍵指標介紹
  • 使用flume把日誌資料匯入到hdfs中
  • 編寫MapReduce程式碼進行資料清洗
  • 使用hbase儲存明細日誌,實現基於ip查詢
  • 使用hive對資料進行多維分析
  • 使用sqoop把hive分析結果匯出到MySQL中

網際網路電商爬蟲專案: 該專案使用分散式爬蟲爬取網際網路各大電商網站商品資料,前臺實現對資料的快速精準查詢和商品對比。

網際網路電商爬蟲
  • 商品頁面抓取和解析
  • 分散式爬蟲設計細節
  • 分析url連結和頁面內容如何儲存
  • 分散式爬蟲監控功能
  • 爬蟲頻繁爬取資料ip被封問題解決方案
  • 分析爬取失敗url如何處理
  • 抓取需要登入的網站資料
  • 使用solr實現海量資料精準查詢
  • 使用hbase實現海量資料快速查詢

高頻資料實時流處理專案: 該專案實現對業務資料系統的高頻日誌資料進行實時收集和業務處理。

高頻資料實時流處理
  • 使用avro方式實現高頻日誌資料實時採集
  • flume sink原始碼分析
  • 自定義kafkasink實現對收集的高頻日誌資料進行緩衝
  • 使用kafkaspout實現對kafka中的資料進行實時讀取
  • 使用storm實時計算框架對日誌資料進行分析處理
  • flume和kafka的整合
  • Kafka和storm的整合

國內排名前50名的某網站網際網路日誌分析專案: 通過大資料工具將網際網路中的日誌的採集、清洗、分析統計出常見的網際網路指標;開發各種維度UV的分佈報表、各個指標每日、月指標報表,用於對產品做出正確的決策,資料的正確性校對問題,臨時性的圖表的開發。

某網站網際網路日誌分析
  • 使用hadoop、mapreduce、hive清理和分析UV、PV、登入、留存等常見指標
  • 使用storm實時分析充值、消費等的趨勢
  • 各種維度的趨勢對比、各個指標每日、月指標報表生成
  • 使用kettle資料的正確性校對問題和郵件報警

移動業務感知專案: 移動業務感知系統主要是利用hadoop叢集強大的計算能力對移動的大批量離線話單資料進行分析,統計移動使用者使用移動業務(流量套餐、話費套餐、鈴聲套餐等)情況,達到感知使用者行為和使用習慣,確定移動業務推廣走向的一套系統。




某學堂

第一階段linux+搜尋+hadoop體系

Linux基礎shell程式設計高併發架構hadoop體系HDFSmapreducehbasezookeeperhivelucene搜尋solr/solrcloudelasticsearch分散式搜尋CM+CDH叢集管理impalaoozieflumesqoop專案實戰一

第二階段機器學習

R語言mahout專案實戰二

第三階段storm流式計算

kafkastormredis專案實戰三

第四階段spark記憶體計算

scala程式設計spark corespark sqlspark streamingspark mllibspark graphx專案實戰四python機器學習spark python程式設計專案實戰五專案實戰六

第五階段雲端計算平臺

dockerkvmopenstack雲端計算就業指導

















   
 (免費)(免費)(免費)

相關文章