2016-11-12 92 views
0

假設我們在HDFS上有一個文件,有3個塊(每個64mb)。當我們使用具有3個分區的相同文件創建RDD時,羣集上的每個節點(假設羣集具有3個數據節點)將具有重複的文件內容(來自hdfs和RDD分區的一個塊)RDD分區

+0

這是真的嗎?請澄清。 –

回答

0

在HDFS塊是隨機分佈的(默認情況下,如果你放置文件的客戶端不是集羣的一部分),所以你不能確定每個節點有1個塊,除非你有副本3.在這種情況下,每個塊將被放置在三個節點中。

關於Spark,默認情況下,Spark會嘗試從靠近它的節點讀取數據到RDD中,並嘗試在整個羣集中傳播rdd分區。

你的假設並不總是正確的,你必須要考慮與副本放置策略,火花執行人等HDFS塊分佈然而,這將是真實的,如果你在HDFS副本3,你有3個星火集羣員工在集羣中的每個節點中都有一個。