轉(zhuǎn)行學(xué)習(xí)大數(shù)據(jù)靠譜嗎?

年薪30萬的大數(shù)據(jù)開發(fā),了解一下?說實(shí)話,看到這樣的信息時(shí),你心不心動。
我有個(gè)學(xué)生第一次接觸到大數(shù)據(jù)開發(fā)是看到他朋友發(fā)的一個(gè)朋友圈,畢業(yè)兩年后學(xué)習(xí)了大數(shù)據(jù)開發(fā),學(xué)完出來就拿到了年薪30萬的offer!當(dāng)即他就給朋友發(fā)了消息了解,問他為啥選擇做大數(shù)據(jù)?然后朋友直接發(fā)給他一張北京大數(shù)據(jù)開發(fā)的平均工資,直接飆到3w!這誰看了不迷糊??!
但我覺得大家就算知道這個(gè)是高薪行業(yè),應(yīng)該也不敢輕舉妄動吧。大家應(yīng)該都在疑惑這幾個(gè)問題:“如果是做傳統(tǒng)行業(yè)的能容易轉(zhuǎn)行嗎?”“不是計(jì)算機(jī)專業(yè)的能行嗎?”“想做大數(shù)據(jù),但是也不知道怎么學(xué),學(xué)完了能進(jìn)大廠拿高待遇嗎?”
今天我告訴你們:技術(shù)上的學(xué)習(xí)是不難的,只要耐下性子學(xué),就能學(xué)會理論知識。再加上一些實(shí)操經(jīng)驗(yàn),掌握理論就可以入門了。但是除了自己努力之外,還要報(bào)大數(shù)據(jù)開發(fā)的相關(guān)課程,這樣才能高效率的實(shí)現(xiàn)入門并入行。
開始給大家專業(yè)分享之前,我先給大家放一個(gè)行業(yè)了解圖鑒,以及學(xué)習(xí)范圍及難易度,大家可以提前了解一下自己要不要進(jìn)入大數(shù)據(jù)開發(fā)這行哈。大家添加下方微信就能獲取進(jìn)一步了解。
下面我就從為什么大數(shù)據(jù)開發(fā)門檻低,待遇高做一個(gè)簡要的分析,以及為想入行的朋友們提供一些學(xué)習(xí)經(jīng)驗(yàn)。
一、大數(shù)據(jù)開發(fā)真的門檻低,待遇高嗎?
我個(gè)人認(rèn)為這行的入行門檻其實(shí)是有的,并沒有想象的那么低,但是最終也是看你個(gè)人能力。
任何一個(gè)高薪行業(yè)一定是有門檻的,要不然大家都擠到那一個(gè)行業(yè)好了。但是大家擠到一起時(shí)候你會發(fā)現(xiàn)它開始有行業(yè)門檻了。所以我覺得說門檻低,只能證明這個(gè)行業(yè)現(xiàn)在對人才的需求是供不應(yīng)求的,在需要大量人才的時(shí)候,你會發(fā)現(xiàn)它的門檻是比較人性化的。
而行業(yè)人才短缺嚴(yán)重的時(shí)候,尤其這種中高端技術(shù)型人才,很多企業(yè)即便開出很高的工資也招不到人。所以就會產(chǎn)生大數(shù)據(jù)行業(yè)的研發(fā)人員工資確實(shí)相比其他較高,而且這幾年還在不斷提升。
大數(shù)據(jù)這個(gè)行業(yè)對于人才培養(yǎng)的周期其實(shí)是很長的,我們在接觸和學(xué)習(xí)知識的時(shí)候也是用了很長時(shí)間的,才能達(dá)到一個(gè)獲得高薪進(jìn)大廠的機(jī)會,所以對各企業(yè)來說也算是萬金求一人進(jìn)廠的狀態(tài)。
咱們現(xiàn)在經(jīng)常說,大數(shù)據(jù)可真厲害啊,我的喜好、軌跡什么的大數(shù)據(jù)都能監(jiān)測到。大數(shù)據(jù)呢其實(shí)是人工智能領(lǐng)域研發(fā)的重要支撐,人工智能的發(fā)展也讓大數(shù)據(jù)行業(yè)不斷推進(jìn),不論大數(shù)據(jù)還是人工智能都是目前的熱點(diǎn),所以目前大數(shù)據(jù)行業(yè)工資普遍比較高。

1.大數(shù)據(jù)開發(fā)學(xué)習(xí)全路徑
2.往大數(shù)據(jù)方向發(fā)展,需要掌握的基本技能有:
一門基礎(chǔ)編程語言,Java或者Python
Linux基本操作
3.與大數(shù)據(jù)開發(fā)相關(guān)的工具集:
Hadoop
HBase
Hive
Kafka
Spark
Sqoop/Flume/DolphinScheduler/Hue等
一些高階技能能讓你更進(jìn)一步:
Kudu
Kylin
ClickHouse
Flink
看上去需要掌握的技能很多,但是只要找對了學(xué)習(xí)方法加上專業(yè)老師的指導(dǎo),不管是零基礎(chǔ)還是有一定編程基礎(chǔ)的程序員,轉(zhuǎn)型大數(shù)據(jù)都不是一件難事!

大數(shù)據(jù)開發(fā)學(xué)習(xí)順序
第一階段:
Java:大家都知道Java的方向有JavaSE、JavaEE、JavaME,學(xué)習(xí)大數(shù)據(jù)要學(xué)習(xí)那個(gè)方向呢?
只需要學(xué)習(xí)Java的標(biāo)準(zhǔn)版JavaSE就可以了,像Servlet、JSP、Tomcat、Struts、Spring、Hibernate,Mybatis都是JavaEE方向的技術(shù)在大數(shù)據(jù)技術(shù)里用到的并不多,只需要了解就可以了,當(dāng)然Java怎么連接數(shù)據(jù)庫還是要知道的,像JDBC一定要掌握一下,有同學(xué)說Hibernate或Mybites也能連接數(shù)據(jù)庫啊,為什么不學(xué)習(xí)一下,我這里不是說學(xué)這些不好,而是說學(xué)這些可能會用你很多時(shí)間,到最后工作中也不常用,我還沒看到誰做大數(shù)據(jù)處理用到這兩個(gè)東西的,當(dāng)然你的精力很充足的話,可以學(xué)學(xué)Hibernate或Mybites的原理,不要只學(xué)API,這樣可以增加你對Java操作數(shù)據(jù)庫的理解,因?yàn)檫@兩個(gè)技術(shù)的核心就是Java的反射加上JDBC的各種使用。
Linux:因?yàn)榇髷?shù)據(jù)相關(guān)軟件都是在Linux上運(yùn)行的,所以Linux要學(xué)習(xí)的扎實(shí)一些,學(xué)好Linux對你快速掌握大數(shù)據(jù)相關(guān)技術(shù)會有很大的幫助,能讓你更好的理解hadoop、hive、hbase、spark等大數(shù)據(jù)軟件的運(yùn)行環(huán)境和網(wǎng)絡(luò)環(huán)境配置,能少踩很多坑,學(xué)會shell就能看懂腳本這樣能更容易理解和配置大數(shù)據(jù)集群。還能讓你對以后新出的大數(shù)據(jù)技術(shù)學(xué)習(xí)起來更快。
第二階段:
Hadoop:這是現(xiàn)在流行的大數(shù)據(jù)處理平臺幾乎已經(jīng)成為大數(shù)據(jù)的代名詞,所以這個(gè)是必學(xué)的。
Hadoop里面包括幾個(gè)組件HDFS、MapReduce和YARN,HDFS是存儲數(shù)據(jù)的地方就像我們電腦的硬盤一樣文件都存儲在這個(gè)上面,MapReduce是對數(shù)據(jù)進(jìn)行處理計(jì)算的,它有個(gè)特點(diǎn)就是不管多大的數(shù)據(jù)只要給它時(shí)間它就能把數(shù)據(jù)跑完,但是時(shí)間可能不是很快所以它叫數(shù)據(jù)的批處理。YARN是體現(xiàn)Hadoop平臺概念的重要組件有了它大數(shù)據(jù)生態(tài)體系的其它軟件就能在hadoop上運(yùn)行了,這樣就能更好的利用HDFS大存儲的優(yōu)勢和節(jié)省更多的資源比如我們就不用再單獨(dú)建一個(gè)spark的集群了,讓它直接跑在現(xiàn)有的hadoop yarn上面就可以了。其實(shí)把Hadoop的這些組件學(xué)明白你就能做大數(shù)據(jù)的處理了,只不過你現(xiàn)在還可能對"大數(shù)據(jù)"到底有多大還沒有個(gè)太清楚的概念,聽我的別糾結(jié)這個(gè)。等以后你工作了就會有很多場景遇到幾十T/幾百T大規(guī)模的數(shù)據(jù),到時(shí)候你就不會覺得數(shù)據(jù)大真好,越大越有你頭疼的。當(dāng)然別怕處理這么大規(guī)模的數(shù)據(jù),因?yàn)檫@是你的價(jià)值所在,讓那些個(gè)搞Javaee的php的html5的和DBA的羨慕去吧。記住學(xué)到這里可以作為你學(xué)大數(shù)據(jù)的一個(gè)節(jié)點(diǎn)。
Zookeeper:這是個(gè)萬金油,安裝Hadoop的HA的時(shí)候就會用到它,以后的Hbase也會用到它。它一般用來存放一些相互協(xié)作的信息,這些信息比較小一般不會超過1M,都是使用它的軟件對它有依賴,對于我們個(gè)人來講只需要把它安裝正確,讓它正常的run起來就可以了。
Mysql:我們學(xué)習(xí)完大數(shù)據(jù)的處理了,接下來學(xué)習(xí)學(xué)習(xí)小數(shù)據(jù)的處理工具mysql數(shù)據(jù)庫,因?yàn)橐粫bhive的時(shí)候要用到,mysql需要掌握到什么層度那?你能在Linux上把它安裝好,運(yùn)行起來,會配置簡單的權(quán)限,修改root的密碼,創(chuàng)建數(shù)據(jù)庫。這里主要的是學(xué)習(xí)SQL的語法,因?yàn)閔ive的語法和這個(gè)非常相似。
Sqoop:這個(gè)是用于把Mysql里的數(shù)據(jù)導(dǎo)入到Hadoop里的。當(dāng)然你也可以不用這個(gè),直接把Mysql數(shù)據(jù)表導(dǎo)出成文件再放到HDFS上也是一樣的,當(dāng)然生產(chǎn)環(huán)境中使用要注意Mysql的壓力。
Hive:這個(gè)東西對于會SQL語法的來說就是神器,它能讓你處理大數(shù)據(jù)變的很簡單,不會再費(fèi)勁的編寫MapReduce程序。有的人說Pig那?它和Pig差不多掌握一個(gè)就可以了。
DolphinScheduler:既然學(xué)會Hive了,我相信你一定需要這個(gè)東西,它可以幫你管理你的Hive或者M(jìn)apReduce、Spark腳本,還能檢查你的程序是否執(zhí)行正確,出錯(cuò)了給你發(fā)報(bào)警并能幫你重試程序,最重要的是還能幫你配置任務(wù)的依賴關(guān)系。我相信你一定會喜歡上它的,不然你看著那一大堆腳本,和密密麻麻的crond是不是有種想屎的感覺。
Hbase:這是Hadoop生態(tài)體系中的NOSQL數(shù)據(jù)庫,他的數(shù)據(jù)是按照key和value的形式存儲的并且key是唯一的,所以它能用來做數(shù)據(jù)的排重,它與MYSQL相比能存儲的數(shù)據(jù)量大很多。所以他常被用于大數(shù)據(jù)處理完成之后的存儲目的地。
第三階段:
Kafka:這是個(gè)比較好用的隊(duì)列工具,隊(duì)列是干嗎的?排隊(duì)買票你知道不?數(shù)據(jù)多了同樣也需要排隊(duì)處理,這樣與你協(xié)作的其它同學(xué)不會叫起來,你干嗎給我這么多的數(shù)據(jù)(比如好幾百G的文件)我怎么處理得過來,你別怪他因?yàn)樗皇歉愦髷?shù)據(jù)的,你可以跟他講我把數(shù)據(jù)放在隊(duì)列里你使用的時(shí)候一個(gè)個(gè)拿,這樣他就不在抱怨了馬上灰流流的去優(yōu)化他的程序去了,因?yàn)樘幚聿贿^來就是他的事情。而不是你給的問題。當(dāng)然我們也可以利用這個(gè)工具來做線上實(shí)時(shí)數(shù)據(jù)的入庫或入HDFS,這時(shí)你可以與一個(gè)叫Flume的工具配合使用,它是專門用來提供對數(shù)據(jù)進(jìn)行簡單處理,并寫到各種數(shù)據(jù)接受方(比如Kafka)的。
Spark:它是用來彌補(bǔ)基于MapReduce處理數(shù)據(jù)速度上的缺點(diǎn),它的特點(diǎn)是把數(shù)據(jù)裝載到內(nèi)存中計(jì)算而不是去讀慢的要死進(jìn)化還特別慢的硬盤。特別適合做迭代運(yùn)算,所以算法流們特別稀飯它。它是用scala編寫的。Java語言或者Scala都可以操作它,因?yàn)樗鼈兌际怯肑VM的。
Flink:剛才都說用Kafka能讓數(shù)據(jù)排上隊(duì)了,那不得按隊(duì)型給處理一波,怎么處理用Flink一個(gè)個(gè)處理啊,來一個(gè)算一個(gè)速度賊快,這就是常說的流式計(jì)算。另外Flink還有一些小絕招,比如:不用你操心有的數(shù)據(jù)掉隊(duì)了怎么辦,數(shù)據(jù)想聚在一起開個(gè)小會怎么辦,數(shù)據(jù)隊(duì)型非得有序怎么辦,壓力太大了怎么辦,一不小心掉坑里了人家還能幫你恢復(fù)。另外還有各種騷操作什么序列化啊、排序啊、省內(nèi)存啊甚至JVM怎么調(diào)優(yōu)都通通幫你想好了。所以說嗎有了它大數(shù)據(jù)也能算的飛快。另外你阿里爸爸給它買了,所以它以后是咱們中國人的。
第五階段:
項(xiàng)目實(shí)操
項(xiàng)目一、CoolNiu商城ETL項(xiàng)目(初級入門)
項(xiàng)目二、CDP平臺-商城數(shù)倉實(shí)踐項(xiàng)目(重點(diǎn)推薦項(xiàng)目)
項(xiàng)目三、MPP架構(gòu)-歷史數(shù)據(jù)遷移項(xiàng)目(獨(dú)家項(xiàng)目)
項(xiàng)目四、MPP架構(gòu)-無線網(wǎng)絡(luò)優(yōu)化大數(shù)據(jù)平臺項(xiàng)目(獨(dú)家項(xiàng)目)
項(xiàng)目五、巨量數(shù)據(jù)采集引擎項(xiàng)目(重點(diǎn)推薦項(xiàng)目)
項(xiàng)目六、NLP自然語言處理系統(tǒng)項(xiàng)目(重點(diǎn)推薦項(xiàng)目)
項(xiàng)目七、SNS社交網(wǎng)絡(luò)實(shí)時(shí)數(shù)倉系統(tǒng)項(xiàng)目(重點(diǎn)推薦項(xiàng)目)
項(xiàng)目八、計(jì)算廣告學(xué)-物品相似度廣告策略項(xiàng)目(高薪就業(yè))
附上一張更詳細(xì)的學(xué)習(xí)路線圖,供大家參考

學(xué)習(xí)課程資料推薦
視頻課程
說到視頻課程,大家都會在網(wǎng)上找一些免費(fèi)的學(xué)習(xí)資料進(jìn)行學(xué)習(xí),但是很多資料真的很雞肋,不太適合新手小白學(xué)習(xí)。
而我的大數(shù)據(jù)課程,是非常適合小白零基礎(chǔ)的學(xué)習(xí)。5個(gè)月時(shí)間,就能完成大數(shù)據(jù)轉(zhuǎn)型。
課程內(nèi)容從理論到源碼,從源碼到性能調(diào)優(yōu),從性能調(diào)優(yōu)再到實(shí)踐。還提供大數(shù)據(jù)學(xué)習(xí)過程中的硬件設(shè)備(集群服務(wù)器,這點(diǎn)是很多機(jī)構(gòu)都沒有的?。?br>
面試資料
學(xué)完基礎(chǔ)知識之后,想要拿到好的實(shí)習(xí)或者秋招offer是離不開面試的,并且面試其實(shí)是有一些前人的知識可以總結(jié)和沉淀的。
我這里給學(xué)員總結(jié)了一些大數(shù)據(jù)的筆記以及總結(jié)了面試常出現(xiàn)的知識點(diǎn),包括你們到職場之后,在大數(shù)據(jù)這個(gè)領(lǐng)域摸爬滾打需要的基礎(chǔ)知識,有需要的小伙伴也可以添加微信獲取。
零基礎(chǔ)自學(xué)大數(shù)據(jù)開發(fā)的小伙伴可以按照這個(gè)學(xué)習(xí)路線圖進(jìn)行學(xué)習(xí),分階段的進(jìn)行,每個(gè)階段自己做個(gè)小項(xiàng)目,這樣記憶更深刻,不然跳躍式的學(xué)習(xí)對于零基礎(chǔ)自學(xué)大數(shù)據(jù)有一定的難度。
如果大家有大數(shù)據(jù)開發(fā)的問題,可以隨時(shí)私信交流,我會盡我所能為大家解答