問題

考慮一個hadoop叢集,其中hdfs-site.xml中的預設塊大小為64MB.但是,後來團隊決定將其更改為128MB.以下是我對上述場景的問題?

  1. 這個更改是否需要重新啟動叢集,還是將自動處理,所有新檔案的預設塊大小為128MB?
  2. 具有64M塊大小的現有檔案會發生什麼?配置中的更改會自動適用於現有檔案嗎?如果它將自動完成,那麼什麼時候會完成 – 一旦更改完成或啟動叢集?如果不自動完成,那麼如何手動執行此塊更改?

  最佳答案

這一變化是否需要重新啟動叢集,或者將予以處理 android – 自動並且所有新檔案都將具有預設的塊大小 128MB

為使這個屬性更改生效,需要重新啟動叢集。

具有64M塊大小的現有檔案會發生什麼? 配置的更改是否適用於現有檔案 自動?

現有的塊不會改變它們的塊大小。

如果不自動完成,那麼如何手動執行此塊更改?

要更改現有檔案,您可以使用distcp.它將使用新塊大小複製檔案.但是,您必須使用舊塊大小手動刪除舊檔案.這是您可以使用的命令

 hadoop distcp -Ddfs.block.size=XX /path/to/old/files /path/to/new/files/with/larger/block/sizes.
 

  相同標籤的其他問題

hadoophdfs