{eval=Array;=+count(Array);}

成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

問答專欄Q & A COLUMN

大數(shù)據(jù)主要學習哪些內(nèi)容?

felix0913felix0913 回答0 收藏1
收藏問題

10條回答

frontoldman

frontoldman

回答于2022-06-28 14:56

先上一張大數(shù)據(jù)技術學習的必備技能圖:

入門學習需要掌握的基本技能

1、Java

2、Linux命令

3、HDFS

4、MapReduce

5、 Hadoop

6、Hive

7、ZooKeeper

8、HBase

9、Redis

10、Flume

11、SSM

12、Kafka

13、Scala

14、Spark

15、MongoDB

16、Python與數(shù)據(jù)分析等等。

我們所說的大數(shù)據(jù)培訓學習,一般是指大數(shù)據(jù)開發(fā)。大數(shù)據(jù)開發(fā)需要學習的東西可以參考一下加米谷大數(shù)據(jù)培訓0基礎學習的課程,具體描述可見guan網(wǎng):

第一階段:Java設計與編程思想

第二階段: Web前端開發(fā)

第三階段: JavaEE進階

第四階段: 大數(shù)據(jù)基礎

第五階段: HDFS分布式文件系統(tǒng)

第六階段:MapReduce分布式計算模型

第七階段: Yarn分布式資源管理器

第八階段: Zookeeper分布式協(xié)調(diào)服務

第九階段: Hbase分布式數(shù)據(jù)庫

第十階段: Hive分布式數(shù)據(jù)倉庫

第十一階段: FlumeNG分布式數(shù)據(jù)采集系統(tǒng)

第十二階段: Sqoop大數(shù)據(jù)遷移系統(tǒng)

第十三階段: Scala大數(shù)據(jù)黃金語言

第十四階段: kafka分布式總線系統(tǒng)

第十五階段: SparkCore大數(shù)據(jù)計算基石

第十六階段: SparkSQL數(shù)據(jù)挖掘利器

第十七階段: SparkStreaming流失計算平臺

第十八階段: SparkMllib機器學習平臺

第十九階段:SparkGraphx圖計算平臺

第二十階段: 大數(shù)據(jù)項目實戰(zhàn)

評論0 贊同0
  •  加載中...
AlanKeene

AlanKeene

回答于2022-06-28 14:56

這是一個非常好的問題,作為一名IT從業(yè)者,同時也是一名教育工作者,我來回答一下。

大數(shù)據(jù)經(jīng)過多年的發(fā)展,已經(jīng)逐漸形成了一個比較龐大且系統(tǒng)的知識體系,整體的技術成熟度也已經(jīng)比較高了,所以當前學習大數(shù)據(jù)技術也會有一個比較好的學習體驗。

由于大數(shù)據(jù)涉及到的內(nèi)容比較多,而且大數(shù)據(jù)技術與行業(yè)領域也有比較緊密的聯(lián)系,所以在學習大數(shù)據(jù)的時候,既可以從技術角度出發(fā),也可以立足行業(yè)來學習大數(shù)據(jù)。對于學生來說,可以從大數(shù)據(jù)技術體系來學習,而對于職場人來說,可以結(jié)合自身的行業(yè)和崗位任務來學習大數(shù)據(jù)。

不論是學生還是職場人,要想學習大數(shù)據(jù)都需要掌握以下幾個基本內(nèi)容:

第一:計算機基礎知識。計算機基礎知識對于學習大數(shù)據(jù)技術是非常重要的,其中操作系統(tǒng)、編程語言和數(shù)據(jù)庫這三方面知識是一定要學習的。編程語言可以從Python開始學起,而且如果未來要從事專業(yè)的大數(shù)據(jù)開發(fā),也可以從Java開始學起。計算機基礎知識的學習具有一定的難度,學習過程中要重視實驗的作用。

第二:數(shù)學和統(tǒng)計學基礎知識。大數(shù)據(jù)技術體系的核心目的是“數(shù)據(jù)價值化”,數(shù)據(jù)價值化的過程一定離不開數(shù)據(jù)分析,所以作為數(shù)據(jù)分析基礎的數(shù)學和統(tǒng)計學知識就比較重要了。數(shù)學和統(tǒng)計學基礎對于大數(shù)據(jù)從業(yè)者未來的成長空間有比較重要的影響,所以一定要重視這兩個方面知識的學習。

第三:大數(shù)據(jù)平臺基礎。大數(shù)據(jù)開發(fā)和大數(shù)據(jù)分析都離不開大數(shù)據(jù)平臺的支撐,大數(shù)據(jù)平臺涉及到分布式存儲和分布式計算等基礎性功能,掌握大數(shù)據(jù)平臺也會對于大數(shù)據(jù)技術體系形成較深的認知程度。對于初學者來說,可以從Hadoop和Spark開始學起。

我從事互聯(lián)網(wǎng)行業(yè)多年,目前也在帶計算機專業(yè)的研究生,主要的研究方向集中在大數(shù)據(jù)和人工智能領域,我會陸續(xù)寫一些關于互聯(lián)網(wǎng)技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收獲。

如果有互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區(qū)留言,或者私信我!

評論0 贊同0
  •  加載中...
xuxueli

xuxueli

回答于2022-06-28 14:56

謝謝邀請!大數(shù)據(jù)包括大數(shù)據(jù)開發(fā)、大數(shù)據(jù)分析挖掘、數(shù)據(jù)工程師(大數(shù)據(jù)運維)幾個方向,不過在企業(yè)經(jīng)常會職能交叉。學習內(nèi)容:Linux基礎-->Python/Java/Scala編程語言選擇一種-->MySQL/Oracle數(shù)據(jù)庫-->Hadoop及其套件-->Hive數(shù)據(jù)倉庫-->Spark開發(fā),包括流開發(fā)-->Storm/Flink實時處理......

1) 簡單點評:

發(fā)展不錯,需求不少,不過需求中主要是數(shù)據(jù)分析相關崗位,牽涉到算法建模等高級內(nèi)容的話實際上不適合剛畢業(yè)的不同本科學生。建議普通本科或?qū)?茖W生從數(shù)據(jù)分析入行,掌握Python,以后逐步向高級數(shù)據(jù)分析師、數(shù)據(jù)挖掘工程師、人工智能開發(fā)工程師方向走,

2)發(fā)展前景:

大數(shù)據(jù)類職位需求增幅僅次于AI崗位。眼下,幾乎所有互聯(lián)網(wǎng)企業(yè)均把數(shù)據(jù)人才列為團隊標配。許多公司在數(shù)據(jù)層面增加投入,大量招募具有算法和建模能力的人才,力求通過數(shù)據(jù)沉淀與挖掘更好地推進產(chǎn)品的迭代。數(shù)據(jù)架構師、數(shù)據(jù)分析師成為企業(yè)爭搶對象,過去一年招聘需求提高150%以上。2017,互聯(lián)網(wǎng)公司對AI和數(shù)據(jù)人才的爭搶活躍度提高了30%以上,企業(yè)間相互挖角行為變得更加頻繁,人才爭奪激烈程度全面升級。物聯(lián)網(wǎng)、智慧城市、增強現(xiàn)實(AR)與虛擬現(xiàn)實(VR)、區(qū)塊鏈技術、語音識別、人工智能、數(shù)字匯流是大數(shù)據(jù)未來應用的七大發(fā)展方向。

3)行業(yè)定位:

4)面向?qū)I(yè):

計算機、數(shù)學與統(tǒng)計、物理、電子、通信工程、物聯(lián)網(wǎng)、網(wǎng)絡工程等相關專業(yè)大專以上學生。推薦中上游學生學習。

5)薪酬分析:

數(shù)據(jù)來源: 職友網(wǎng)

更多資訊請關注筆者頭條號“語凡提”,向智慧化身阿凡提致敬,致力于分享大數(shù)據(jù)/數(shù)據(jù)分析/人工智能視頻!

評論0 贊同0
  •  加載中...
Edison

Edison

回答于2022-06-28 14:56

對于大數(shù)據(jù)想必了解過的人和想要學習大數(shù)據(jù)的童鞋都是有所了解的,知道大數(shù)據(jù)培訓相關的一些學習內(nèi)容都有個大概的了解,但是對于大數(shù)據(jù)培訓學習內(nèi)容的一些比較詳細的內(nèi)容還是有所差距的,我們學習大數(shù)據(jù)的主要目的就是未來以后可以到大企業(yè)去做相關的工作,拿到客觀的薪資。那么這就需要我們了解企業(yè)對于大數(shù)據(jù)技術的需求是什么,大數(shù)據(jù)培訓機構大數(shù)據(jù)課程內(nèi)容是否包含這些內(nèi)容。接下來帶大家簡單了解一下。

第一階段Java語言基礎,此階段是大數(shù)據(jù)剛?cè)腴T階段,主要是學習一些Java語言的概念、字符、流程控制等。

第二階段Javaee核心了解并熟悉一些HTML、CSS的基礎知識,JavaWeb和數(shù)據(jù)庫,Linux基礎,Linux操作系統(tǒng)基礎原理、虛擬機使用與Linux搭建、Shell 腳本編程、Linux 權限管理等基本的 Linux 使用知識,通過實際操作學會使用。

第五階段 Hadoop 生態(tài)體系,Hadoop 是大數(shù)據(jù)的重中之重,無論是整體的生態(tài)系統(tǒng)、還是各種原理、使用、部署,都是大數(shù)據(jù)工程師工作中的核心,這一部分必須詳細解讀同時輔以實戰(zhàn)學習。

第六階段Spark生態(tài)體系,這也是是大數(shù)據(jù)非常核心的一部分內(nèi)容,在這一時期需要了解Scala語言的使用、各種數(shù)據(jù)結(jié)構、同時還要深度講解spark的一系列核心概念比如結(jié)構、安裝、運行、理論概念等。

2021大數(shù)據(jù)學習路線圖:


評論0 贊同0
  •  加載中...
UnixAgain

UnixAgain

回答于2022-06-28 14:56

  縱觀近幾年的互聯(lián)網(wǎng)發(fā)展趨勢,看到大數(shù)據(jù)被炒得火熱,也想要涉足大數(shù)據(jù)領域,學習一些大數(shù)據(jù)技術。技術很重要,人才自然是不可或缺的,想要你想成為的大數(shù)據(jù)技術人才,就必須要經(jīng)歷學習技術的枯燥乏味的過程。

  首先你需要先認識到一個問題,想要涉足大數(shù)據(jù)領域,肯定是有一定難度的,但有句話說的好“當你感覺特別累的時候,也就是說明你在走上坡路”。雖然困難,但只要你想學習,萬事皆有可能。

  要找準自己的定位,先了解自己的實力,然后從容應對以后的學習途徑。對于大數(shù)據(jù)技術自己是真的喜歡嗎?面對冗雜的代碼,復雜的數(shù)據(jù),自己是否能奈的住性子一直堅持下去?自己之前接觸過大數(shù)據(jù)技術嗎?之前接觸過編程知識嗎?是否已經(jīng)熟練掌握了一門編程語言?

  現(xiàn)實中就業(yè)危機的問題依然嚴峻,緊繃的神經(jīng)時刻提醒著要不斷的提升自己。學習的越多,越能夠感受到知識海洋的浩瀚。相比于將大量零碎的技術名詞縮寫塞進昏沉的大腦,手指無意識地敲出幾行代碼,培養(yǎng)以計算機思維解決問題才是更重要的。

“工欲善其事,必先利其器”,不斷涌現(xiàn)的新技術,本質(zhì)上是新工具對舊工具的迭代更新,如果我們不能掌握其中的規(guī)律,很容易浮于表層,難以觸類旁通,在很多非科班出生的同學身上,這個問題尤其明顯。

  數(shù)據(jù)結(jié)構,概率論,線性代數(shù),設計模式,這些子學科是構成大數(shù)據(jù)技術的堅強基石,是前人無數(shù)智慧的結(jié)晶。

  至于具體要用什么樣的方式來學大數(shù)據(jù),這個主要是看自己的選擇了,專業(yè)的學習方式會幫助更快進入學習氛圍中,再就是看自己的學習能力和感興趣程度了。

評論0 贊同0
  •  加載中...
shery

shery

回答于2022-06-28 14:56

我有幸做了七八年的大數(shù)據(jù)吧,從技術角度談談自己的看法,大數(shù)據(jù)都有哪個領域,都需要學習什么技術。

第一,首先要把這些大數(shù)據(jù)都可靠的存儲起來,經(jīng)過多年的發(fā)展,hdfs已經(jīng)成了一個數(shù)據(jù)存儲的標準。當然還有其他的存儲,比如kudu,hbase等,都是適合不同領域的存儲。

第二,既然有了這么多的數(shù)據(jù),我們可以開始基于這些數(shù)據(jù)做計算了,于是從最早的MapReduce到后來的hive,spark,都是做批處理的。

第三, 由于像hive這些基于MapReduce的引擎處理速度過慢,于是有了基于內(nèi)存的olap查詢引擎,比如impala,presto。

第四,由于批處理一般都是天級別或者小時級別的,為了更快的處理數(shù)據(jù),于是有了spark streaming或者flink這樣的流處理引擎。

第五,由于沒有一個軟件能覆蓋住所有場景。所以針對不同的領域,有了一些特有的軟件,來解決特定場景下的問題,比如基于時間序列的聚合分析查詢數(shù)據(jù)庫,inflexdb opentsdb等。采用預聚合數(shù)據(jù)以提高查詢的druid或者kylin等,

第六,還有其他用于數(shù)據(jù)削峰和消費訂閱的消息隊列,比如kafka和其他各種mq

第七,還有一些其他的組件,比如用于資源管理的yarn,協(xié)調(diào)一致性的zookeeper等。

第八,由于hdfs 處理小文件問題不太好,還有為了解決大數(shù)據(jù)update和insert等問題,引入了數(shù)據(jù)湖的概念,比如hudi,iceberg等等。

第九,業(yè)務方面,我們基于大數(shù)據(jù)做一些計算,給公司的運營提供數(shù)據(jù)支撐。做一些推薦,給用戶做個性化推薦。機器學習,報警監(jiān)控等等。

附一張大數(shù)據(jù)技術圖譜,你可以參考下

評論0 贊同0
  •  加載中...
leiyi

leiyi

回答于2022-06-28 14:56

大數(shù)據(jù)作為當下互聯(lián)網(wǎng)編程語言培訓熱門明星學科,大數(shù)據(jù)培訓需要學習的內(nèi)容很多,培訓學習除了會有大數(shù)據(jù)技術知識的學習,同時還會在學習的過程中階段性的插入一些相關企業(yè)項目進行實操學習,大數(shù)據(jù)主要的學習內(nèi)容為:

1、基礎部分:JAVA語言 和 LINUX系統(tǒng)。

2、大數(shù)據(jù)技術部分:HADOOP、HIVE、OOZIE、WEB、FLUME、PYTHON、HBASE、KAFKA、SCALA、SPARK、SPARK調(diào)優(yōu)等,覆蓋前沿技術:Hadoop,Spark,Flink,實時數(shù)據(jù)處理、離線數(shù)據(jù)處理、機器學習。

3、實訓項目:一般包括JAVA項目,大數(shù)據(jù)項目,企業(yè)大數(shù)據(jù)平臺等,大數(shù)據(jù)企業(yè)的商業(yè)項目直接為學員所用,一線大牛工程師親自指導實戰(zhàn)開發(fā),業(yè)務覆蓋電商、在線教育、旅游、新聞、智慧城市等主流行業(yè),全程貫穿項目實戰(zhàn)。

另外,在選擇大數(shù)據(jù)培訓機構時,要選擇專業(yè)做大數(shù)據(jù)的,還要考慮機構的課程設置、講師團隊、硬件設施、實訓項目等多方面條件。

2020大數(shù)據(jù)學習路線圖:



評論0 贊同0
  •  加載中...
Songlcy

Songlcy

回答于2022-06-28 14:56

前言

要從事計算機行業(yè)的工作,不管是什么工作,開發(fā)、測試、還是算法等,都是要有一門自己比較熟練的編程語言,編程語言可以是C語言、Java、C++等,只要是和你后續(xù)工作所相關的就可以(后續(xù)用到其他語言的話,你有一門語言基礎了,學起來就快了)。一般初學者入門語言大多都會選擇Java、C語言、C++或者Python,而且現(xiàn)在網(wǎng)上有很多好的視頻,可以供初學者學習使用。關于學習視頻或者資料的選擇,知乎或者百度等都有很多講解了,也可以跟師兄師姐咨詢,這樣可以少走很多彎路,當然,有人說,走一些彎路總是有好處的,但是我這里說的彎路不是說不犯錯誤,不調(diào)bug,而是指學習資料以及一些知識點的偏重點,這樣可以盡量節(jié)約一部分時間,剛開始時,總會有點迷,而且當你真正投入進去學習時,會發(fā)現(xiàn)時間總是不夠用。

我前面是做的Java后端,后續(xù)才轉(zhuǎn)的大數(shù)據(jù),所以一些Java開發(fā)所需要的東西自己也有學習過,也都是按照正常的路線走的,JavaSE階段,然后數(shù)據(jù)庫,SSM框架,接著做了一些網(wǎng)上找的項目,之后發(fā)現(xiàn)對大數(shù)據(jù)比較感興趣,就開始找大數(shù)據(jù)相關的資料學習,看視頻,看博客,敲代碼,前期大概花了3-4個月吧(公眾號的這些資料就是我當時看過的),也是一步步艱難走過來的,剛剛開始接觸大數(shù)據(jù)相關的東西時,一度懷疑這么多東西自己能否學得完,是不是能用得到,學完又忘了,忘了又回頭看,不過還好,堅持過來了,還好沒有放棄,工作也還ok,找的大數(shù)據(jù)開發(fā)崗,待遇也還不錯吧。

下面就說一下我自己從Java開發(fā)到大數(shù)據(jù)開發(fā)的曲折學習之路(狗頭保命.jpg)。
因為我現(xiàn)在是做大數(shù)據(jù)相關的工作了,所以Java后端涉及到的一些SSM框架等知識點我就不介紹了,畢竟后續(xù)一段時間也沒有做了。自己看過的大數(shù)據(jù)學習相關的視頻+資料大概是200G-300G吧,從Linux->Hadoop->。。。->Spark->項目,還有就是一些面試文檔,面經(jīng)等。一些視頻看了兩遍或者更多,跟著學,跟著敲代碼,做項目,準備面試。
涉及到需要學習的東西包括:JavaSE,數(shù)據(jù)結(jié)構與算法(計算機行業(yè)必備),MySQL,Redis,ES(數(shù)據(jù)庫這些可以看項目,也可以自己熟練一兩個),Linux,Shell(這個可以后期補),Hadoop,Zookeeper,Hive,F(xiàn)lume,Kafka,HBase,Scala(Spark是Scala寫的,會Scala做相關的項目會更容易入手),Spark,F(xiàn)link(這個是找工作時有面試官問過幾次liao不liao解,所以找完工作才開始接觸學習),相關項目。

編程語言階段學習

? 如果是零基礎的話,建議還是從視頻開始入門比較好,畢竟一上來就看教材,這樣有些代碼的來龍去脈可能不是很了解。如果是有一些編程語言基礎的話,從視頻開始也會更簡單,一些for、while循環(huán)你都知道了,學起來也會快很多。
? JavaSE我是選擇的某馬劉意的為主,因為剛剛開始學Java看過一本從《Java從入門到精通》,沒什么感覺,后續(xù)又在看了某課網(wǎng)的Java初級視頻,還是沒感覺出來啥(當時就有點懷疑自己了。。。),可能有點沒進入狀態(tài)。
? 還好后續(xù)找了某馬劉意老師的JavaSE視頻(我是看的2015年版本,那時候19版還沒出),覺得他講的真的是很好很詳細,每個知識點都會有例子,也都會帶你敲代碼,做測試,可能前面有C語言基礎,然后也看過Java的一些語法,所以學起來還是比較順利,后面的IO流、多線程等知識點時,也有看書看博客,或者看看其他老師的課程,講解的可能自己比較容易接受就可以,反正都是多嘗試(下面會給出視頻鏈接),盡量懂一些,后續(xù)可以回頭來復習。JavaSE相關的視頻,先看一遍,后續(xù)有時間建議再看一遍,而且這些經(jīng)典的視頻,看兩遍真的是享受。
? 如果有一定基礎了的,JavaSE前面七八天的視頻可以加速看,但是不懂的一定要停下開仔細想想,零基礎的還是盡量不要加速吧,慢慢來穩(wěn)些。后面的視頻建議還是跟著視頻來,盡量不要加速,代碼盡量都敲一敲,第一遍基本上一個月到一個半月可以結(jié)束。
? JavaSE可以說是很基礎也很重要的東西,主要重點包括面向?qū)ο?、集合(List、Map等),IO流,String/StringBuilder/StringBuffer、反射、多線程,這些最好是都要熟悉一些,面試也是重點。
? JavaSE之后,如果你是要走前端或后端開發(fā)路線的話,可以跟著一些網(wǎng)上的視頻繼續(xù)學習,這里我就不多做介紹了。

===========分割線,Scala可以后續(xù)Spark階段再接觸學習=============

? Scala的學習,Scala是一門多范式 (multi-paradigm) 的編程語言,Scala支持面向?qū)ο蠛秃瘮?shù)式編程,最主要的是后續(xù)Spark的內(nèi)容需要用到Scala,所以前面學習了JavaSE,到Spark學習之前,再把Scala學習一波,美滋滋,而且Scala可以和Java進行無縫對接,混合使用,更是爽歪歪。后續(xù)Spark學習時基本都是用的Scala,也可能是和Java結(jié)合使用,所以Spark之前建議還是先學一波Scala,而且Scala用起來真是很舒服(wordcount一行代碼搞定),適合迭代式計算,對數(shù)據(jù)處理有很大幫助,不過Scala看代碼很容易看懂,但是學起來還是挺難的,比如樣例類(case class)用起來真是nice,但是隱式轉(zhuǎn)換學起來就相對比較難。學習Scala的建議:1. 學習scala 特有的語法,2. 搞清楚scala和java區(qū)別,3. 了解如何規(guī)范的使用scala。Scala對學習Spark是很重要的(后面Flink也是要用),雖然現(xiàn)在很多公司還是用Java開發(fā)比較多,而且Spark是Scala寫的,如果要讀源碼,會Scala還是很重要的(至少要看得懂代碼)。
? Scala主要重點包括:隱式轉(zhuǎn)換和隱式參數(shù)、模式匹配、函數(shù)式編程。這里我看的是某硅谷韓老師的Scala視頻,韓老師講的真的很不錯,五星推薦,哈哈。
? 也許有人會覺得Python也是需要的,但是學習階段,可能用Java還是比較多,面試也基本都是問Java相關的內(nèi)容,所以Python后續(xù)工作會用到的話,再看看Python的內(nèi)容吧。

大數(shù)據(jù)框架階段學習

? 大數(shù)據(jù)這方面的知識點自己可以說真的是從零開始的,剛剛開始學那會Linux基本都沒用過,心里那個虛啊,而且時間也緊迫,想起來都是一把辛酸淚。
? 剛剛開始學的時候,看了廈門大學林子雨的《 大數(shù)據(jù)技術原理與應用》課程,可能這個課程是面對上課的,所以看了一些,感覺對自己幫助不是很大(并不是說課程不好,可能不太適合自己,如果是要了解理論知識,很透徹,但是俺時間緊迫?。?,所以就繼續(xù)在網(wǎng)上找視頻,然后發(fā)現(xiàn)某硅谷的培訓視頻很多人去參加,而且知識點也很齊全,大數(shù)據(jù)相關組件都有講課,還有一些項目比較好,所以就找了它相關的視頻,當時看的是2018年的,所以視頻不算舊。
? 來一張推薦系統(tǒng)架構的圖,先看看

? 一般來說,F(xiàn)lume+Kafka對數(shù)據(jù)進行采集聚合傳輸,一方面Spark對實時數(shù)據(jù)進行處理,傳輸給相應的數(shù)據(jù)處理模塊(比如實時數(shù)據(jù)處理的算法模塊,Spark也有提供常見的機器學習算法的程序庫),另一方面采集的數(shù)據(jù)也可以放入數(shù)據(jù)庫(HBase、MongoDB等)中,后續(xù)MapReduce對離線數(shù)據(jù)進行離線處理,數(shù)據(jù)處理完畢用于后續(xù)的使用,數(shù)據(jù)采集處理的流程大概就是這樣。如果是推薦系統(tǒng),實時推薦會給用戶產(chǎn)生實時的推薦結(jié)果,讓用戶進行查閱選擇,比如你在界面瀏覽了或者看了新的物品,然后刷新下界面,可能給你展示的東西就有一些變成跟你剛剛瀏覽的相關了。離線推薦的話主要是對離線數(shù)據(jù)進行處理,為物品或種類做出相似的推薦,如果后續(xù)用戶搜索相應的物品時,給用戶展示相應的產(chǎn)品。

? 大數(shù)據(jù)學習路線:Linux -> Hadoop -> Zookeeper -> Hive -> Flume -> Kafka -> HBase -> Scala -> Spark -> 項目 - > Flink( 如果需要學習Storm,在Spark前面學習)

一、Linux(基本操作)

? 一般我們使用的都是虛擬機來進行操作,所以要安裝VM( Virtual Machine),我使用的是CentOS,所以VM和CentOS都要跟著安裝好,跟著視頻操作,一定要動手實踐,將一些Linux基本命令熟練掌握,一些VIM編輯器的命令也要會用,做相應的一些配置,使用SecureCRT來做遠程登錄操作(也可以使用其他的,自己順手就行)。再強調(diào)一遍,基本操作命令盡量熟練一點,如果一下記不住,打印一些常用的,自己看看,多用多實踐,慢慢就會用了。還有一些軟件包的下載安裝卸載等,跟著操作一遍,熟悉下,后續(xù)都會使用,Shell編程可以后續(xù)補。

二、Hadoop(重點中的重點)

? Hadoop是一個分布式系統(tǒng)基礎框架,用于主要解決海量數(shù)據(jù)的存儲和海量數(shù)據(jù)的分析計算問題,也可以說Hadoop是后續(xù)整個集群環(huán)境的基礎,很多框架的使用都是會依賴于Hadoop。主要是由HDFS、MapReduce、YARN組成。這個部分安裝Hadoop,Hadoop的三個主要組成部分是重點,對他們的概念要理解出來,知道他們是做什么的,搭建集群環(huán)境,偽分布式模式和完全分布式模式的搭建,重要的是完全分布式的搭建,這些部分一定要自己動手實踐,自己搭建集群,仔細仔細再仔細,Hadoop的NameNode,DataNode,YARN的啟動關閉命令一定要知道,以及他們的啟動關閉順序要記住,不要搞混。后續(xù)視頻會有一些案例操作,跟著寫代碼,做測試,把基本環(huán)境都配置好,后續(xù)這個集群(完全分布式需要三臺虛擬機)要一直使用。

三、Zookeeper

? Zookeeper是一個開源的分布式的,為分布式應用提供協(xié)調(diào)服務的Apache項目。分布式安裝ZK,對ZK有一定的了解就可以了,了解它的應用場景,以及內(nèi)部原理,跟著做一些操作,基本上有一些了解即可。

四、Hive(重點)

? Hive是基于Hadoop的數(shù)據(jù)倉庫工具,可以將結(jié)構化的數(shù)據(jù)文件映射為一張表,并提供類SQL查詢功能。Hive的安裝,它的數(shù)據(jù)類型,以及它的數(shù)據(jù)定義、數(shù)據(jù)操作有較好的了解,怎么操作表(創(chuàng)建表、刪除表,創(chuàng)建什么類型的表,他們有什么不同),怎么操作數(shù)據(jù)(加載數(shù)據(jù),下載數(shù)據(jù),對不同的表進行數(shù)據(jù)操作),對數(shù)據(jù)的查詢一定要進行實踐操作,以及對壓縮方式和存儲格式要有一些了解,用到時不懂也可以去查,最好是能理解清楚。這部分有什么面試可能會問,所以視頻后續(xù)的面試講解可以看看,理解清楚。

五、Flume

? Flume是一個高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng)。對于Flume,對它的組成架構,以及對Flume Agent的內(nèi)部原理要理解清楚,Source、Channel、Sink一定要知道它們的各種類型以及作用,有哪些拓撲結(jié)構是常見常用的,例如一對一,單Source、多Channel、多Sink等,它們有什么作用,要理解清楚。還有一個重點,就是對Flume的配置文件一定要了解清楚,不懂的可以上官網(wǎng)查看案例,對于不同的情況,它的配置文件要做相應的修改,才能對數(shù)據(jù)進行采集處理,視頻中的實踐案例一定要跟著做。

六、Kafka(重點)

? Kafka是一個分布式消息隊列,用來緩存數(shù)據(jù)的。比如說實時計算中可以通過Flume+Kafka對數(shù)據(jù)進行采集處理之后,Spark Streaming再使用Kafka相應的Topic中的數(shù)據(jù),用于后續(xù)的計算使用。對于Kafka,要理解Kafka的架構,什么是Kafka,為什么需要Kafka,應用場景。基本的命令行操作要掌握,比如怎么創(chuàng)建刪除Topic,怎么通過生產(chǎn)者生成數(shù)據(jù),消費者怎么消費數(shù)據(jù)等基本操作,官網(wǎng)也是有一些案例可以查閱的。

七、HBase(重點)

? HBase是一個分布式的、基于列存儲的開源數(shù)據(jù)庫。HBase適合存儲PB級別的海量數(shù)據(jù),也可以說HBase是很適合大數(shù)據(jù)的存儲的,它是基于列式存儲數(shù)據(jù)的,列族下面可以有非常多的列,列族在創(chuàng)建表的時候就必須指定。所以對HBase的數(shù)據(jù)結(jié)構要有一定的理解,特別是RowKey的設計部分(因為面試被問到過,咳咳,所以點一下),對于它的原理要了解,一些基本操作也要都會,比如創(chuàng)建表,對表的操作,基本的API使用等。

八、Spark(重點中的重點)

? Spark是快速、易用、通用的大數(shù)據(jù)分析引擎。一說到Spark,就有一種哪哪都是重點感覺,哈哈。
? Spark的組成可以看下圖

? Spark是基于內(nèi)存計算的,對于數(shù)據(jù)的處理速度要比MapReduce快很多很多,而且數(shù)據(jù)挖掘這些都是要對數(shù)據(jù)做迭代式計算,MapReduce對數(shù)據(jù)的處理方式也不適合,而Spark是可以進行迭代式計算,很適合數(shù)據(jù)挖掘等場景。Spark的Spark SQL能夠?qū)Y(jié)構化數(shù)據(jù)進行處理,Spark SQL的DataFrame或DataSet可以作為分布式SQL查詢引擎的作用,可以直接使用Hive上的表,對數(shù)據(jù)進行處理。Spark Streaming主要用于對應用場景中的實時流數(shù)據(jù)進行處理,支持多種數(shù)據(jù)源,DStream是Spark Streaming的基礎抽象,由一系列RDD組成,每個RDD中存放著一定時間段的數(shù)據(jù),再對數(shù)據(jù)進行處理,而且是基于內(nèi)存計算,速度快,所以很適合實時數(shù)據(jù)的處理。Spark MLlib提供常見的機器學習(ML)功能的程序庫。包括分類、回歸、聚類、協(xié)同過濾等,還提供了模型評估、數(shù)據(jù) 導入等額外的支持功能。對Spark的核心組件、部署模式(主要是Standalone模式和YARN模式)、通訊架構、任務調(diào)度要有一定了解(面試問到了可以說一波),Spark Shuffle要好好理解,還有內(nèi)存管理要知道,對Spark的內(nèi)核原理一定要好好理解,不僅面試可能要用,以后工作也是有幫助的。

九、Flink(重點中的重點)

? Flink是一個框架和分布式處理引擎,用于對無界(有開始無結(jié)束)和有界(有開始有結(jié)束)數(shù)據(jù)流進行有狀態(tài)計算?,F(xiàn)在主要是ucloud系公司使用的比較多,很多公司使用的還是Spark居多,而且Flink基本上都是和Spark很多功能大體上一樣的,但是以后Flink和Spark孰強孰弱還有待時間的考驗,不過Flink近幾年越來越火了這是事實,所以如果有時間有精力的話,可以學一學Flink相關的內(nèi)容也是很不錯的。Spark和Flink主要都是在數(shù)據(jù)處理方面應用,在數(shù)據(jù)處理方面的話,離線數(shù)據(jù)處理:Flink暫時比不上Spark,Spark SQL優(yōu)點在于可以和Hive進行無縫連接,Spark SQL可以直接使用Hive中的表;Flink暫時做不到這一步,因為官方不支持這一操作,F(xiàn)link只能將數(shù)據(jù)讀取成自己的表,不能直接使用Hive中的表。對于實時數(shù)據(jù)的處理:Flink和Spark可以說是平分秋色吧,而且Flink是以事件為驅(qū)動對數(shù)據(jù)進行處理,而Spark是以時間為驅(qū)動對數(shù)據(jù)進行處理,在一些應用場景中,也許Flink的效果比Spark的效果還要好些,因為Flink對數(shù)據(jù)更加的敏感。比如一秒鐘如果觸發(fā)了成千上萬個事件,那么時間驅(qū)動型就很難對數(shù)據(jù)做細致的計算,而事件驅(qū)動型可以以事件為單位,一個個事件進行處理,相比而言延遲更低,處理效果更好?,F(xiàn)在使用Flink的公司越來越多,有時間學習下,也算是有個準備。

項目階段

? 其實某硅谷的視頻里面有很多大數(shù)據(jù)相關的項目,而且都是文檔配代碼的,B站上也有視頻,學習期間可以跟著視頻做兩到三個項目,自己理清思路,把項目理解透徹,還是可以學到很多東西的。
? 根據(jù)自己情況,選擇兩到三個項目重點跟著做,理解透徹一點

大數(shù)據(jù)項目實戰(zhàn)

? 某硅谷的視頻里面有很多大數(shù)據(jù)相關的項目,而且都是文檔配代碼的,學習期間可以跟著視頻做兩到三個項目,自己理清思路,把項目理解透徹,還是可以學到很多東西的。根據(jù)自己情況,選擇兩到三個項目重點跟著做,理解透徹一點。相關項目文檔資料我已經(jīng)放到網(wǎng)盤,GongZhongHao回復相應關鍵字獲取領取方式。
? 相關項目、涉及技術框架及其B站鏈接(B站鏈接主要是為了有些小伙伴網(wǎng)盤速度限制,這樣就下載文檔資料即可)

書籍

? 書籍部分直接云盤鏈接保存即可,這里我放兩張Java開發(fā)和大數(shù)據(jù)開發(fā)我自己的書單(很多,路漫漫,吾將上下而求索~)
? Java后端書架:


? 大數(shù)據(jù)書架:


? 大概就這些,看完就需要很久了,大部分我也是需要的時候看相應的部分,所以有時間可以好好看下,不然就需要哪一部分看哪一部分,有助于學習即可。

最后

? 大數(shù)據(jù)開發(fā)也是需要編程基礎的,并不是學會使用這些框架怎么樣就可以了,所以對于編程語言,數(shù)據(jù)結(jié)構與算法,計算機網(wǎng)絡這些基礎也是要的,這些基礎知識也有助于自己以后的發(fā)展,如果是應屆生校招的話,面試基本上都是JavaSE和數(shù)據(jù)結(jié)構與算法等的知識點,還有大數(shù)據(jù)組件相關的知識點,以及對項目的理解,這些都是要自己面試前準備好的,多看面經(jīng),多找面試題看,面幾次,心里有譜了,后續(xù)面試就好了。
? 不管是從事什么樣的計算機相關的崗位,編程都是很重要的,數(shù)據(jù)結(jié)構與算法特別重要,還有就是leetcode等編程網(wǎng)站刷題,提升自己的編程思維,后續(xù)筆試面試都要要的。
? 要將一行行代碼看做一疊疊rmb,但是一行行代碼能不能轉(zhuǎn)換成一疊疊rmb,自己就一定要:堅持,多敲代碼;多敲代碼,堅持;堅持。?

評論0 贊同0
  •  加載中...
beita

beita

回答于2022-06-28 14:56


大數(shù)據(jù)技術學習的課程如下:

大數(shù)據(jù)開發(fā):Ja-va、大數(shù)據(jù)基礎、HDFS分布式文件系統(tǒng)、MapReduce分布式計算模型、 Yarn分布式資源管理器、Zookeeper分布式協(xié)調(diào)服務、Hbase分布式數(shù)據(jù)庫、Hive分布式數(shù)據(jù)倉庫、 FlumeNG分布式數(shù)據(jù)采集系統(tǒng)、Sqoop大數(shù)據(jù)遷移系統(tǒng)、Scala大數(shù)據(jù)黃金語言、 kafka分布式總線系統(tǒng)、Spark體系...

數(shù)據(jù)分析與挖掘:Python基礎、關系型數(shù)據(jù)庫MySQL、文檔數(shù)據(jù)庫MongoDB、內(nèi)存數(shù)據(jù)庫Redis、網(wǎng)絡爬蟲、數(shù)據(jù)分析、數(shù)據(jù)處理、數(shù)據(jù)分析處理進階..

評論0 贊同0
  •  加載中...
joy968

joy968

回答于2022-06-28 14:56

想學大數(shù)據(jù)的話就是自學或者培訓了,但是自學的話就是自己買書買資料,自己看,但是往往自己看的話容易找不到重點,沒有目標,這樣比較浪費時間

培訓的話尤其對于小白來說效果會比較好,事半功倍,比自學更有效率,也更專業(yè)。要真正學好IT技術,應該的是找一家專業(yè)IT教育的院校,處在專業(yè)的育人環(huán)境,有專業(yè)的課程體系與老師,這才離成功最近的捷徑。建議可以跟著百戰(zhàn)程序員的線上課程學習,壓力不會很大,還可以學好技術,授課老師都是業(yè)內(nèi)大牛,一個好的老師可以幫你打開思路。百戰(zhàn)程序員是我自己在跟著學習的,很多的項目和實操也能很好的鍛煉的自己實力可以更好的找到工作。平時的工作生活都不耽誤,利用休息時間在線上學習不也挺好的嗎。課程質(zhì)量還是挺高的, 有很多的實操項目,還有技術老師答疑、批改作業(yè),還有班主任每天監(jiān)督學習,可以先去百戰(zhàn)程序員官網(wǎng)可以試聽課程 你可以先自己感受一下

如果你有足夠的時間,自制力又不行的,可以考慮參加線下學習,線下學習學習氛圍也相對好一點,可以看看尚學堂官網(wǎng)或者校區(qū)了解一下相關情況,現(xiàn)在這互聯(lián)網(wǎng)時代這么發(fā)達 ,學習也不用局限于地域了

評論0 贊同0
  •  加載中...

最新活動

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關注的人
向幫助了您的網(wǎng)友說句感謝的話吧!
付費偷看金額在0.1-10元之間
<