2014-11-25 76 views
0

我在Udacity.com上參加了Hadoop和MapReduce的課程,講師提到在HDFS中爲了減少故障點,每個數據塊在數據庫中被複制3次。這是真的嗎?這是否意味着如果我有1 PB的日誌,我需要3 PB的存儲空間?因爲這會讓我付出更多的代價HDFS是否需要數據空間的3倍?

回答

0

是的。所以說,如果你說有4臺機器上運行着datanode,那麼默認情況下複製也會在其他兩臺機器上隨機發生。如果你不希望出現這種情況,你可以通過在HDFS-site.xml中設置dfs.replication屬性切換到1

1

是的,是真實的,HDFS要求每個冗餘副本空間,需要拷貝來實現容錯和處理過程中的數據局部性

但是,這不一定是真實的關於MapReduce,它可以運行在其他文件系統,如S3或Azure blob,例如。 HDFS需要3個副本。

0

這是因爲HDFS在存儲數據時會複製數據。 hdfs的默認複製因子是3,您可以在ddfs.replication屬性下的hdfs-site.xml文件中找到它。您可以根據您的要求將此值設置爲1或5。

數據複製非常有用,就像某些節點特別關閉一樣,您將擁有其他節點/節點上可用的數據副本進行處理。

1

默認情況下,HDFS設置參數dfs.replication設置值爲3,允許容錯,disponibility,等...(All parameters of HDFS here

但在安裝時,你可以設置爲1的參數,和HDFS不要複製你的數據。在dfs.replication = 1的情況下,1 PB的存儲空間量相同。