2 回答

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊
Hadoop主要是分布式計(jì)算和存儲(chǔ)的框架,所以Hadoop工作過(guò)程主要依賴(lài)于HDFS(Hadoop Distributed File System)分布式存儲(chǔ)系統(tǒng)和Mapreduce分布式計(jì)算框架。
分布式存儲(chǔ)系統(tǒng)HDFS中工作主要是一個(gè)主節(jié)點(diǎn)namenode(master)(hadoop1.x只要一個(gè)namenode節(jié)點(diǎn),2.x中可以有多個(gè)節(jié)點(diǎn))和若干個(gè)從節(jié)點(diǎn)Datanode(數(shù)據(jù)節(jié)點(diǎn))相互配合進(jìn)行工作,HDFS主要是存儲(chǔ)Hadoop中的大量的數(shù)據(jù),namenode節(jié)點(diǎn)主要負(fù)責(zé)的是:
1、接收client用戶的操作請(qǐng)求,這種用戶主要指的是開(kāi)發(fā)工程師的Java代碼或者是命令客戶端操作。
2、維護(hù)文件系統(tǒng)的目錄結(jié)構(gòu),主要就是大量數(shù)據(jù)的關(guān)系以及位置信息等。
3、管理文件系統(tǒng)與block的關(guān)系,Hadoop中大量的數(shù)據(jù)為了方便存儲(chǔ)和管理主要是以block塊(64M)的形式儲(chǔ)存。一個(gè)文件被分成大量的block塊存儲(chǔ)之后,block塊之間都是有順序關(guān)系的,這個(gè)文件與block之間的關(guān)系以及block屬于哪個(gè)datanode都是有namenode來(lái)管理。
Datanode的主要職責(zé)是:
1、存儲(chǔ)文件。
2、將數(shù)據(jù)分成大量的block塊。
3、為保證數(shù)據(jù)的安全,對(duì)數(shù)據(jù)進(jìn)行備份,一般備份3份。當(dāng)其中的一份出現(xiàn)問(wèn)題時(shí),將由其他的備份來(lái)對(duì)數(shù)據(jù)進(jìn)行恢復(fù)。
MapReduce主要也是一個(gè)主節(jié)點(diǎn)JOPtracker和testtracker組成,主要是負(fù)責(zé)hadoop中的數(shù)據(jù)處理過(guò)程中的計(jì)算問(wèn)題。
joptracker主要負(fù)責(zé)接收客戶端傳來(lái)的任務(wù),并且把計(jì)算任務(wù)交給很多testtracker工作,同時(shí)joptracker會(huì)不斷的監(jiān)控testtracker的執(zhí)行情況。
testtracker主要是執(zhí)行joptracker交給它的任務(wù)具體計(jì)算,例如給求大量數(shù)據(jù)的最大值,每個(gè)testtracker會(huì)計(jì)算出自己負(fù)責(zé)的數(shù)據(jù)中的最大值,然后交給joptracker。
Hadoop的主要兩個(gè)框架組合成了分布式的存儲(chǔ)和計(jì)算,使得hadoop可以很快的處理大量的數(shù)據(jù)。

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊
要有java語(yǔ)言基礎(chǔ),和 linux系統(tǒng)命令基礎(chǔ)。
hadoop是運(yùn)行的系統(tǒng)要求是 linux。
hadoop 用 java寫(xiě)的分布式 ,處理大數(shù)據(jù)的框架。
只要思想是 分組合并 思想
分組:比如 有一個(gè)大型數(shù)據(jù),那么他就會(huì)將這個(gè)數(shù)據(jù)按照算法分成多份,每份存儲(chǔ)在 奴隸主機(jī)上,并且在奴隸主機(jī)上進(jìn)行計(jì)算。
合并:將每個(gè)機(jī)器上的計(jì)算結(jié)果合并起來(lái) 再在一臺(tái)機(jī)器上計(jì)算,得到最終結(jié)果。
就是mapreduce 算法。
添加回答
舉報(bào)