給Hadoop初學者的一些建議
零基礎學習hadoop,沒有想象的那么困難,也沒有想象的那么容易。從一開始什么都不懂,到能夠搭建集群,開發。整個過程,只要有Linux基礎,虛擬機化和java基礎,其實hadoop并沒有太大的困難。下面整理一下整個學習過程,給大家一個參考。
首先我們要了解hadoop是什么?Hadoop能夠做什么?Hadoop的使用場景是什么?Hadoop和大數據、云計算的關系是什么?如何使用hadoop?
當大家對這些問題有了基本的了解之后,接下來我們就要系統性的學習hadoop了。我個人建議大家不要一味的去學習理論知識,***是理論和實踐相結合,可以先跟著視頻和文檔去操作,先把偽分布式集群搭建起來,把wordcount實例運行起來,對hadoop集群的搭建過程和運行機制有個大概的了解和認知,然后從操作的過程中去發現自己在哪方面是薄弱點,有針對性的去彌補,這樣學習就會更有針對性和目的性,學習效果也相對會更好一些,否則學習會很盲目、很痛苦的。
我們知道hadoop有單機模式,偽分布模式和分布式模式。同時hadoop的環境是Linux,所以我們還需要安裝Linux系統。因為我們的習慣是使用windows,所以對于Linux上來就安裝軟件之類的,困難程度會很大。并且我們要搭建集群,需要多臺硬件的,不可能為了搭建集群,去買三臺電腦。所以從成本和使用的角度我們還需要懂虛擬化方面的知識。這里的虛擬化其實就是我們需要懂得虛擬機的使用。因為hadoop安裝在Linux中,才能真正發揮作用。所以我們也不會使用windows。
基于以上內容。所以我們需要懂得
- 虛擬化
- Linux
- java基礎
下面我們來詳細介紹:
虛擬化:我們選擇的是VMware Workstation,這里就要求我們會搭建虛擬機,安裝linux(如centos)操作系統,這方面只要按照視頻操作應該還是很簡單的,難點在于虛擬機網絡的配置,尤其是nat模式和bridge模式,因為hadoop要求主機與虛擬機與外部網絡(能上網),這三者是相通的,都能夠連接上網絡,只有這樣在安裝的過程中,才不會遇到麻煩。
Linux:對于Linux的學習也是一個過程,因為可能你連最簡單的開機和關機命令都不會,更不要談配置網絡。常用的linux命令也就20多種,我們需要做的就是在搭建集群的過程中不斷地加強練習,在實踐中去記憶。但是我們會遇到各種不會的命令,即使能查到命令,我們也不能使用。為什么會這樣,因為有的命令,是需要使用安裝包的。所以我們也要學會如何下載安裝包。
我們需要使用一些命令,進行網絡配置,但是在網絡配置中,這里面又必須懂得虛擬機的一些知識,所以前面的虛擬機知識需要掌握扎實一些。
對于有linux基礎的學員也可以選擇hadoop運維工程師作為職業選擇。
提醒大家切忌浮躁,我們不可能一兩天就能完成上面的所有內容,我們至少需要花費一周的時間不斷地去訓練、強化。只要我們熟悉了Linux命令,熟悉了網絡知識。后面我們的學習才會很輕松,很快速。
通過以上的學習我們已經會安裝集群了,那么接下來我們就需要進入開發階段。開發零基礎,該怎么辦呢?
hadoop編程是一個Java框架,同時也是編程的一次革命,使得傳統開發運行程序由單臺客戶端(單臺電腦)轉換為可以由多個客戶端運行(多臺機器)運行,使得任務得以分解,這大大提高了效率。
Hadoop既然是一個Java框架,因此就要求我們必須要懂Java,網上有大量的資料,所以學習Java不是件難事。但是學到什么程度,可能是我們零基礎同學所關心的。
Java:我們需要具備javaSE基礎知識,暫時不需要java Web及各種框架知識。如果沒有javaSE基礎,建議在學習hadoop之前或過程中要加強這方面的學習和訓練。當然有java基礎和開發經驗的學員學習hadoop就會更快速、更輕松。