2016-11-27 59 views
1

NameNodes,的DataNodes,映射器和減速的號碼,我想知道如何設置的如何設置的Hadoop

NameNodes數量

的DataNodes

映射器

減速器

代碼/配置Hadoop

回答

1

Namenode和DataNode計數取決於您的業務需求。你不通過編程來設置它們。

如果您需要可擴展性,您必須查看HDFS聯合的概念。

有關聯合的更多詳細信息,請參閱此文檔page

爲了水平縮放名稱服務,聯邦使用多個獨立的Namenodes /名稱空間。 Namenodes是聯合的; Namenodes是獨立的,不需要彼此協調。 Datanodes被所有Namenode用作塊的公共存儲。

enter image description here

映射器由輸入分割決定的數量。

您可以以編程方式設置減少器數量,但框架並不強制服從您的建議。

所以最好讓Hadoop決定Mappers和Reducers的數量。

看一看這個相關SE問題:

How hadoop decides how many nodes will do map and reduce tasks

編輯:

Hadoop集羣的大小: 1.從您的企業識別數據requriements需要 2.確定replicaiton因素對於你的數據 3.計算未來幾年的數據擴展率 4.一旦你有了以上的數據,你可以考慮理想的簇大小和硬件對Namenode和Datanode的要求。

有關更多詳細信息,請參閱此cloudera article

地圖的並行度的正確級別似乎是每節點大約10-100個地圖「這裏的節點表示NameNode或DataNode?

它是Datanode。

談論映射器時,也有人說,相同數目的分裂,另一個說相同的塊數,而其他人說,這是由框架

它是由Hadoop框架,取決於輸入的數量決定確定分裂。

看一看相關SE問題:

How does Hadoop perform input splits?

+0

謝謝回答,我明白NameNodes可以通過CONFIGRATION,映射器和減壓器設置由Hadoop框架確定。那麼DataNode如何設置他們的號碼呢? 同樣在第二個鏈接中,您提到了它: 「地圖的正確的平行度似乎大約是每節點10-100個地圖」節點在這裏意味着NameNode或DataNode? 當談論Mappers時,有些人說分裂的數量是相同的,另一個說的是相同數量的區塊,而另外一些人說這是由框架決定的,可能不會給出確切數量的分裂或區塊,那麼從上面來看是正確的呢? –