您好,登錄后才能下訂單哦!
一、大數據相關的工作介紹
二、大數據工程師的技能要求
三、大數據學習規劃
大數據介紹
針對以上主要的4個特征我們需要考慮以下問題:
數據來源廣,該如何采集匯總?,對應出現了Sqoop,Cammel,Datax等工具。
數據采集之后,該如何存儲?,對應出現了GFS,HDFS,TFS等分布式文件存儲系統。
由于數據增長速度快,數據存儲就必須可以水平擴展。
數據存儲之后,該如何通過運算快速轉化成一致的格式,該如何快速運算出自己想要的結果?
對應的MapReduce這樣的分布式運算框架解決了這個問題;但是寫MapReduce需要Java代碼量很大,所以出現了Hive,Pig等將SQL轉化成MapReduce的解析引擎;
普通的MapReduce處理數據只能一批一批地處理,時間延遲太長,為了實現每輸入一條數據就能得到結果,于是出現了Storm/JStorm這樣的低時延的流式計算框架;
但是如果同時需要批處理和流處理,按照如上就得搭兩個集群,Hadoop集群(包括HDFS+MapReduce+Yarn)和Storm集群,不易于管理,所以出現了Spark這樣的一站式的計算框架,既可以進行批處理,又可以進行流處理(實質上是微批處理)。
而后Lambda架構,Kappa架構的出現,又提供了一種業務處理的通用架構。
為了提高工作效率,加快運速度,出現了一些輔助工具:
Ozzie,azkaban:定時任務調度的工具。
Hue,Zepplin:圖形化任務執行管理,結果查看工具。
Scala語言:編寫Spark程序的最佳語言,當然也可以選擇用Python。
Python語言:編寫一些腳本時會用到。
Allluxio,Kylin等:通過對存儲的數據進行預處理,加快運算速度的工具。
以上大致就把整個大數據生態里面用到的工具所解決的問題列舉了一遍,知道了他們為什么而出現或者說出現是為了解決什么問題,進行學習的時候就有的放矢了。
正文
一、大數據相關工作介紹
大數據方向的工作目前主要分為三個主要方向:
大數據工程師
數據分析師
大數據科學家
其他(數據挖掘等)
二、大數據工程師的技能要求
附上大數據工程師技能圖:
必須掌握的技能11條
Java高級(虛擬機、并發)
Linux 基本操作
Hadoop(HDFS+MapReduce+Yarn )
HBase(JavaAPI操作+Phoenix )
Hive(Hql基本操作和原理理解)
Kafka
Storm/JStorm
Scala
Python
Spark (Core+sparksql+Spark streaming )
輔助小工具(Sqoop/Flume/Oozie/Hue等)
高階技能6條
機器學習算法以及mahout庫加MLlib
R語言
Lambda 架構
Kappa架構
Kylin
Alluxio
三、學習路徑
假設每天可以抽出3個小時的有效學習時間,加上周末每天保證10個小時的有效學習時間;
3個月會有(213+4210)3=423小時的學習時間。
第一階段(基礎階段)
1)Linux學習(跟鳥哥學就ok了)—–20小時
Linux操作系統介紹與安裝。
Linux常用命令。
Linux常用軟件安裝。
Linux網絡。
防火墻。
Shell編程等。
2)Java 高級學習(《深入理解Java虛擬機》、《Java高并發實戰》)—30小時
掌握多線程。
掌握并發包下的隊列。
了解JMS。
掌握JVM技術。
掌握反射和動態代理。
3)Zookeeper學習
Zookeeper分布式協調服務介紹。
Zookeeper集群的安裝部署。
Zookeeper數據結構、命令。
Zookeeper的原理以及選舉機制。
第二階段(攻堅階段)
4)Hadoop (《Hadoop 權威指南》)—80小時
HDFS
HDFS的概念和特性。
HDFS的shell操作。
HDFS的工作機制。
HDFS的Java應用開發。
MapReduce
運行WordCount示例程序。
了解MapReduce內部的運行機制。
MapReduce程序運行流程解析。
MapTask并發數的決定機制。
MapReduce中的combiner組件應用。
MapReduce中的序列化框架及應用。
MapReduce中的排序。
MapReduce中的自定義分區實現。
MapReduce的shuffle機制。
MapReduce利用數據壓縮進行優化。
MapReduce程序與YARN之間的關系。
MapReduce參數優化。
MapReduce的Java應用開發
5)Hive(《Hive開發指南》)–20小時
Hive 基本概念
Hive 應用場景。
Hive 與hadoop的關系。
Hive 與傳統數據庫對比。
Hive 的數據存儲機制。
Hive 基本操作
Hive 中的DDL操作。
在Hive 中如何實現高效的JOIN查詢。
Hive 的內置函數應用。
Hive shell的高級使用方式。
Hive 常用參數配置。
Hive 自定義函數和Transform的使用技巧。
Hive UDF/UDAF開發實例。
Hive 執行過程分析及優化策略
6)HBase(《HBase權威指南》)—20小時
hbase簡介。
habse安裝。
hbase數據模型。
hbase命令。
hbase開發。
hbase原理。
7)Scala(《快學Scala》)–20小時
Scala概述。
Scala編譯器安裝。
Scala基礎。
數組、映射、元組、集合。
類、對象、繼承、特質。
模式匹配和樣例類。
了解Scala Actor并發編程。
理解Akka。
理解Scala高階函數。
理解Scala隱式轉換。
8)Spark (《Spark 權威指南》)—60小時
enter image description here
Spark core
Spark概述。
Spark集群安裝。
執行第一個Spark案例程序(求PI)。
RDD
enter image description here
RDD概述。
創建RDD。
RDD編程API(Transformation 和 Action Operations)。
RDD的依賴關系
RDD的緩存
DAG(有向無環圖)
Spark SQL and DataFrame/DataSet
enter image description here
Spark SQL概述。
DataFrames。
DataFrame常用操作。
編寫Spark SQL查詢程序。
Spark Streaming
enter image description here
enter image description here
park Streaming概述。
理解DStream。
DStream相關操作(Transformations 和 Output Operations)。
Structured Streaming
其他(MLlib and GraphX )
這個部分一般工作中如果不是數據挖掘,機器學習一般用不到,可以等到需要用到的時候再深入學習。
9)Python
10)自己用虛擬機搭建一個集群,把所有工具都裝上,自己開發一個小demo —30小時
可以自己用VMware搭建4臺虛擬機,然后安裝以上軟件,搭建一個小集群(本人親測,I7,64位,16G內存,完全可以運行起來)
大數據的未來前景可期,入行的人也非常的多,而如何快速的完成轉型,如何快速的進入大數據領域,就需要轉型者、小白去進行深刻的思考。
對于小白學習大數據需要注意的點有很多,但無論如何,既然你選擇了進入大數據行業,那么便只顧風雨兼程。正所謂不忘初心、方得始終,學習大數據你最需要的還是一顆持之以恒的心。
在這里還是要推薦下我自己建的大數據學習交流群:529867072,群里都是學大數據開發的,如果你正在學習大數據 ,小編歡迎你加入,大家都是軟件開發黨,不定期分享干貨(只有大數據軟件開發相關的),包括我自己整理的一份最新的大數據進階資料和高級開發教程,歡迎進階中和進想深入大數據的小伙伴加入。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。