講師回答 / 叁金
服務器分布在不同的機架(雙電源),為了防止某條線路斷電導致服務器失效(也解決了部分網絡機架網絡出問題的情況)備份的過程(默認3份) 首先,如果client是集群內的節點則將第一份存儲在client上否則隨機存儲到其他節點,第二份節點存儲到其他機架節點,第三份存儲到本機架節點。(注此處需開啟hadoop的機架感知屬性,默認是關閉的,如果未開啟機架感知 則認為 隨機放到了三個節點上,防止某些節點出問題造成數據丟失)通過zookeeper實現的namenode主備切換,防止因為namenode失效造成的數據無法...
2018-02-04
講師回答 / 叁金
?在向HDFS的寫操作中,不得不提一下“數據流管道”。數據流管道在Google實現他們的分布式文件系統(GFS)時就已引入,其目的是:在寫一份數據的多個副本時,可以充分利用集群中每一臺機器的帶寬,避免網絡瓶頸和高延時的連接,最小化推送所有數據的延時。? 其實這里我可能表述的不太準確,Client在保存數據的過程當中,將數據發送到第一個數據節點DateNode 1,然后在第一個DateNode節點在本地保存數據的同時,將數據推送到第二個數據節點DateNode 2,同理在第二個節點本地保存數據的同時,也會由...
2018-01-23
已采納回答 / 叁金
<...code...>這里沒問題的。out賦值的是內容,并不是data的長度。 你可以看一下python的文件IO相關的操作,read方法傳入的是長度,這段代碼的含義是 打開某個文件,并從其中讀出長度為len(data)的數據保存到out里面。
2018-01-21
講師回答 / 叁金
首先,建議使用anaconda的python科學計算集成環境,利用conda去管理python相關的模塊,如果你用的是anaconda你可以嘗試以下命令:<...code...>? ?
2018-01-18
講師回答 / 叁金
首先,建議使用anaconda的python科學計算集成環境,利用conda去管理python相關的模塊,其也會管理用到的c++模塊,如果你用的是anaconda你可以嘗試以下命令:<...code...>如果你不是anaconda環境,ubuntu系統可以嘗試:<...code...>其他的可以直接搜索github libhdfs3 進行編譯安裝。python訪問hdfs除了hdfs3還有其他模塊可以使用比如snakebite等,大家也可以看看其使用方式
2018-01-09
講師回答 / 叁金
with 語句適用于對資源進行訪問的場合,確保不管使用過程中是否發生異常都會執行必要的“清理”操作,釋放資源,比如文件使用后自動關閉、線程中鎖的自動獲取和釋放等。類似于 java 語言中的:<...code...>或者是C#中的:<...code...>作用就是自動釋放資源,要想理解可以自己了解下python的上下文管理器概念。
2018-01-02
講師回答 / 叁金
這個。。。? ?盡自己所能吧。。。? ? 盡量把話題往自己熟悉的領域帶。? ? 肚子里還是要有點干貨啊,要不面試不發虛嗎。 肚子里面有干貨了 還怕不知道咋回答他嗎。? 面試官也是技術人員,一般都比較好說話!
2017-12-22