從事大數(shù)據(jù)需要學(xué)入門知識(shí)、Java 基礎(chǔ)、 Scala 基礎(chǔ)、Hadoop 技術(shù)模塊 、Hadoop 項(xiàng)目實(shí)戰(zhàn) 、Spark 技術(shù)模塊、大數(shù)據(jù)項(xiàng)目實(shí)戰(zhàn),因?yàn)榇髷?shù)據(jù)不是某個(gè)專業(yè)或一門編程語(yǔ)言,實(shí)際上它是一系列技術(shù)的組合運(yùn)用。
入門知識(shí)主要針對(duì)的是新手,在學(xué)習(xí)之前需要先掌握基本的數(shù)據(jù)庫(kù)知識(shí)。Java 語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征,跨平臺(tái)應(yīng)用能力比 C、C++ 更易用,更容易上手。同時(shí)還具有簡(jiǎn)單性、面向?qū)ο?、分布式、健壯性、安全性、平臺(tái)獨(dú)立與可移植性、多線程、動(dòng)態(tài)性等特點(diǎn)。要的一點(diǎn)是 Hadoop 是用 Java 編寫的。
Scala 是一種多范式的編程語(yǔ)言,其設(shè)計(jì)的初衷是要集成面向?qū)ο缶幊毯秃瘮?shù)式編程的各種特性。由于 Scala 運(yùn)行于 Java 平臺(tái)(Java 虛擬機(jī)),并兼容現(xiàn)有的Java 程序,所以 Scala 可以和大數(shù)據(jù)相關(guān)的基于 JVM 的系統(tǒng)很好的集成。
Hadoop能搭建大型數(shù)據(jù)倉(cāng)庫(kù),PB 級(jí)別數(shù)據(jù)的存儲(chǔ)、處理、分析、統(tǒng)計(jì)等業(yè)務(wù)。學(xué)完理論就要進(jìn)行動(dòng)手實(shí)戰(zhàn)了,Hadoop 項(xiàng)目實(shí)戰(zhàn)可以幫助加深對(duì)內(nèi)容的理解,并鍛煉動(dòng)手能力。Spark 和 Hadoop 都是大數(shù)據(jù)框架。Hadoop 提供了 Spark 所沒有的功能特性,比如分布式文件系統(tǒng),而 Spark 為需要它的那些數(shù)據(jù)集提供了實(shí)時(shí)內(nèi)存處理。所以學(xué)習(xí) Spark 也非常必要。
當(dāng)然企業(yè)級(jí)的實(shí)戰(zhàn)項(xiàng)目也是很重要的,這是對(duì)常用技能的系統(tǒng)運(yùn)用,例如使用常用的機(jī)器學(xué)習(xí)進(jìn)行建模、分析和運(yùn)算,可以幫我積累到一定的經(jīng)驗(yàn)。