2017-08-27 55 views
1

在HDFS:爲什麼HDFS默認將數據存儲在/ tmp中?

  • 一個NameNode的存儲文件夾中的塊的位置dfs.namenode.name.dir
  • 的DataNode店的文件夾中的實際數據塊dfs.datanode.data.dir

總之,這兩個屬性構成了最HDFS的重要組成部分:保存數據的位置。

默認:

  • dfs.namenode.name.dirdfs.datanode.data.dir都在裏面file://${hadoop.tmp.dir}子目錄(見hdfs-default.xml
  • ${hadoop.tmp.dir}/tmp/hadoop-${user.name}(見core-default.xml

總之,HDFS存儲你的數據在/tmp默認情況下。

/tmp is emptied often在現代Linux發行版中。

爲什麼HDFS默認存儲/tmp的數據?爲什麼有人希望他們的數據是暫時的?

回答

2

由於Hadoop不會對您的文件結構做任何假設,因此希望能夠直接進行安裝,並指導用戶在正確配置時覆蓋這些屬性。

大多數Linux發行版都有/ tmp,並且它可以被所有用戶公開寫入。不確定/ etc,/ var或/ mnt符合那個標準

顯然沒有人希望數據是臨時的,但是默認值並不意味着生產就緒。例如,fs.defaultFS默認只是本地文件系統,並且只有1個文件副本

相關問題