annywong1990
1.大數(shù)據(jù)工程師工作中會做什么?集群運(yùn)維:安裝、測試、運(yùn)維各種大數(shù)據(jù)組件數(shù)據(jù)開發(fā):細(xì)分一點(diǎn)的話會有ETL工程師、數(shù)據(jù)倉庫工程師等數(shù)據(jù)系統(tǒng)開發(fā):偏重Web系統(tǒng)開發(fā),比如報(bào)表系統(tǒng)、推薦系統(tǒng)等這里面有很多內(nèi)容其實(shí)是十分重合的,下面大致聊一下每一塊內(nèi)容大致需要學(xué)什么,以及側(cè)重點(diǎn)。2.集群運(yùn)維數(shù)據(jù)工程師,基本上是離不開集群搭建,比如hadoop、Spark、Kafka,不要指望有專門的運(yùn)維幫你搞定,新組件的引入一般都要自己來動手的。因此這就要求數(shù)據(jù)工程師了解各種大數(shù)據(jù)的組件。由于要自己的安裝各種開源的組件,就要求數(shù)據(jù)工程師要具備的能力: Linux 。要對Linux比較熟悉,能各種自己折騰著玩。由于現(xiàn)在的大數(shù)據(jù)生態(tài)系統(tǒng)基本上是 JVM系的,因此在語言上,就不要猶豫了,JVM系的Java和Scala基本上跑不掉,Java基本上要學(xué)的很深,Scala就看情況了。3. ETLETL在大數(shù)據(jù)領(lǐng)域主要體現(xiàn)在各種數(shù)據(jù)流的處理。這一塊一方面體現(xiàn)在對一些組件的了解上,比如Sqoop、Flume、Kafka、Spark、MapReduce;另一方面就是編程語言的需要,Java、Shell和Sql是基本功。4.系統(tǒng)開發(fā)我們大部分的價(jià)值最后都會由系統(tǒng)來體現(xiàn),比如報(bào)表系統(tǒng)和推薦系統(tǒng)。因此就要求有一定的系統(tǒng)開發(fā)能力,最常用的就是 Java Web這一套了,當(dāng)然Python也是挺方便的。需要注意的是,一般數(shù)據(jù)開發(fā)跑不掉的就是各種提數(shù)據(jù)的需求,很多是臨時(shí)和定制的需求,這種情況下, Sql就跑不掉了,老老實(shí)實(shí)學(xué)一下Sql很必要。如何入門?前面提到了一些數(shù)據(jù)工程師會用到的技能樹,下面給一個(gè)入門的建議,完全個(gè)人意見。1.了解行業(yè)情況剛開始一定要了解清楚自己和行業(yè)的情況,很多人根本就分不清招聘信息中的大數(shù)據(jù)和數(shù)據(jù)挖掘的區(qū)別就說自己要轉(zhuǎn)行,其實(shí)是很不負(fù)責(zé)的。不要總是趕熱點(diǎn),反正我就是經(jīng)常被鄙視做什么大數(shù)據(jù)開發(fā)太Low,做數(shù)據(jù)就要做數(shù)據(jù)挖掘,不然永遠(yuǎn)都是水貨。2.選擇學(xué)習(xí)途徑如果真是清楚自己明確地想轉(zhuǎn)數(shù)據(jù)開發(fā)了,要考慮一下自己的時(shí)間和精力,能拿出來多少時(shí)間,而且在學(xué)習(xí)的時(shí)候最好有人能多指點(diǎn)下,不然太容易走彎路了。在選擇具體的學(xué)習(xí)途徑時(shí),要慎重一點(diǎn),有幾個(gè)選擇:自學(xué)報(bào)班找人指點(diǎn)別的不說了,報(bào)班是可以考慮的,不要全指望報(bào)個(gè)輔導(dǎo)班就能帶你上天,但是可以靠他幫你梳理思路。如果有專業(yè)從事這一行的人多幫幫的話,是最好的。不一定是技術(shù)好,主要是可溝通性強(qiáng)。3.學(xué)習(xí)路線學(xué)習(xí)路線,下面是一個(gè)大致的建議:第一階段先具備一定的Linux和Java的基礎(chǔ),不一定要特別深,先能玩起來,Linux的話能自己執(zhí)行各種操作,Java能寫點(diǎn)小程序。這些事為搭建Hadoop環(huán)境做準(zhǔn)備。學(xué)習(xí)Hadoop,學(xué)會搭建單機(jī)版的Hadoop,然后是分布式的Hadoop,寫一些MR的程序。接著學(xué)學(xué)Hadoop生態(tài)系統(tǒng)的其它大數(shù)據(jù)組件,比如Spark、Hive、Hbase,嘗試去搭建然后跑一些官網(wǎng)的Demo。Linux、Java、各種組件都有一些基礎(chǔ)后,要有一些項(xiàng)目方面的實(shí)踐,這時(shí)候找一些成功案例,比如搜搜各種視頻教程中如何搞一個(gè)推薦系統(tǒng),把自己學(xué)到的用起來。第二階段到這里是一個(gè)基本的階段了,大致對數(shù)據(jù)開發(fā)有一些了解了。接著要有一些有意思內(nèi)容可以選學(xué)。數(shù)據(jù)倉庫體系:如何搞數(shù)據(jù)分層,數(shù)據(jù)倉庫體系該如何建設(shè),可以有一些大致的了解。用戶畫像和特征工程:這一部分越早了解越好。一些系統(tǒng)的實(shí)現(xiàn)思路:比如調(diào)度系統(tǒng)、元數(shù)據(jù)系統(tǒng)、推薦系統(tǒng)這些系統(tǒng)如何實(shí)現(xiàn)。第三階段下面要有一些細(xì)分的領(lǐng)域需要深入進(jìn)行,看工作和興趣來選擇一些來深入進(jìn)行分布式理論:比如Gossip、DHT、Paxo這些構(gòu)成了各種分布式系統(tǒng)的底層協(xié)議和算法,還是要學(xué)一下的。數(shù)據(jù)挖掘算法:算法是要學(xué)的,但是不一定純理論,在分布式環(huán)境中實(shí)現(xiàn)算法,本身就是一個(gè)大的挑戰(zhàn)。各種系統(tǒng)的源碼學(xué)習(xí):比如Hadoop、Spark、Kafka的源碼,想深入搞大數(shù)據(jù),源碼跑不掉。
dongdong88z
你好,大數(shù)據(jù)學(xué)習(xí)的內(nèi)容包括8個(gè)階段的內(nèi)容:
你可以按照順序?qū)W習(xí),先學(xué)習(xí)基礎(chǔ)的東西,希望你早日學(xué)有所成。
無錫小呆
Java :只要了bai解一些基礎(chǔ)即可,做大數(shù)據(jù)不需要很深的Java 技術(shù),學(xué)java SE 就相當(dāng)于有學(xué)習(xí)大數(shù)據(jù)。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ù)集群。Hadoop:這是現(xiàn)在流行的大數(shù)據(jù)處理平臺幾乎已經(jīng)成為大數(shù)據(jù)的代名詞,所以這個(gè)是必學(xué)的。Zookeeper:這是個(gè)萬金油,安裝Hadoop的HA的時(shí)候就會用到它,以后的Hbase也會用到它。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ù)庫。Sqoop:這個(gè)是用于把Mysql里的數(shù)據(jù)導(dǎo)入到Hadoop里的。Hive:這個(gè)東西對于會SQL語法的來說就是神器,它能讓你處理大數(shù)據(jù)變的很簡單Oozie:既然學(xué)會Hive了,我相信你一定需要這個(gè)東西,它可以幫你管理你的Hive或者M(jìn)apReduce、Spark腳本,還能檢查你的程序是否執(zhí)行正確。Hbase:這是Hadoop生態(tài)體系中的NOSQL數(shù)據(jù)庫,他的數(shù)據(jù)是按照key和value的形式存儲的并且key是唯一的,所以它能用來做數(shù)據(jù)的排重,它與MYSQL相比能存儲的數(shù)據(jù)量大很多。Kafka:這是個(gè)比較好用的隊(duì)列工具。Spark:它是用來彌補(bǔ)基于MapReduce處理數(shù)據(jù)速度上的缺點(diǎn)。請點(diǎn)擊輸入圖片描述
紅月光薇兒
要想成為一名大數(shù)據(jù)工程師,需要培訓(xùn)的內(nèi)容有Java語言基礎(chǔ)、 HTML、CSS與Java、JavaWeb和數(shù)據(jù)庫以及storm技術(shù)架構(gòu)體系等等,接下來給大家具體的分享一下大數(shù)據(jù)工程師培訓(xùn)內(nèi)容及就業(yè)前景,供大家參考。
俳句之神芭蕉桑
一、認(rèn)識大數(shù)據(jù)大數(shù)據(jù)本質(zhì)其實(shí)也是數(shù)據(jù),不過也包括了些新的特征,數(shù)據(jù)來源廣;數(shù)據(jù)格式多樣化(結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)、Excel文件等);數(shù)據(jù)量大(最少也是TB級別的、甚至可能是PB級別);數(shù)據(jù)增長速度快。而針對以上新的特征需要考慮很多問題:例如,數(shù)據(jù)來源廣,該如何采集匯總?采集匯總之后,又該存儲呢?數(shù)據(jù)存儲之后,該如何通過運(yùn)算轉(zhuǎn)化成自己想要的結(jié)果呢?對于這些問題,我們需要有相對應(yīng)的知識解決。二、大數(shù)據(jù)所需技能要求Python語言:編寫一些腳本時(shí)會用到。Scala語言:編寫Spark程序的最佳語言,當(dāng)然也可以選擇用Python。Ozzie,azkaban:定時(shí)任務(wù)調(diào)度的工具。Hue,Zepplin:圖形化任務(wù)執(zhí)行管理,結(jié)果查看工具。Allluxio,Kylin等:通過對存儲的數(shù)據(jù)進(jìn)行預(yù)處理,加快運(yùn)算速度的工具。必須掌握的技能:、 HBase(、 Kafka、Storm/JStorm、Scala、Python、Spark (Core+sparksql+Spark streaming ) 、輔助小工具(Sqoop/Flume/Oozie/Hue等)
優(yōu)質(zhì)工程師考試問答知識庫