huahuaabcabc
商業(yè)智能通常被理解為將企業(yè)中現(xiàn)有的數(shù)據(jù)轉(zhuǎn)化為知識(shí),幫助企業(yè)做出明智的業(yè)務(wù)經(jīng)營決策的工具。 商業(yè)智能進(jìn)入到一個(gè)高速發(fā)展期,隨著BI廠商產(chǎn)品和解決方案的不斷成熟,用戶對BI的認(rèn)知度和接受度都在提升。BI普及的一個(gè)最大制約因素是人力資源的匱乏,BI商業(yè)前景非??春茫I工程師有研發(fā)方向、顧問方向、實(shí)施方向等,看看哪個(gè)適合自身發(fā)展。
麥當(dāng)當(dāng)5188
1.大數(shù)據(jù)工程師工作中會(huì)做什么?集群運(yùn)維:安裝、測試、運(yùn)維各種大數(shù)據(jù)組件數(shù)據(jù)開發(fā):細(xì)分一點(diǎn)的話會(huì)有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)維幫你搞定,新組件的引入一般都要自己來動(dòng)手的。因此這就要求數(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à)值最后都會(huì)由系統(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ù)工程師會(huì)用到的技能樹,下面給一個(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é)會(huì)搭建單機(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ù),源碼跑不掉。
優(yōu)質(zhì)工程師考試問答知識(shí)庫