在HDFS中:
dfs.namenode.name.dir
dfs.datanode.data.dir
这两个属性共同构成了HDFS最重要的部分:保存数据的位置。
默认情况下:
dfs.namenode.name.dir
和dfs.datanode.data.dir
是file://${hadoop.tmp.dir}
内的子目录(参见hdfs-default.xml
)${hadoop.tmp.dir}
为/tmp/hadoop-${user.name}
(请参阅core-default.xml
)简而言之,HDFS默认将您的数据存储在/tmp
。
为什么HDFS默认将数据存储在/tmp
?为什么有人希望他们的数据是暂时的?
答案 0 :(得分:2)
由于Hadoop不对您的文件结构做任何假设,因此希望能够直接安装,并指导用户在正确配置后覆盖这些属性。
大多数Linux发行版都有/ tmp,并且所有用户都可以公开写入。不确定/ etc,/ var或/ mnt符合该标准
显然没有人希望数据是临时的,但默认情况也不是生产就绪。例如,fs.defaultFS
默认只是本地文件系统,并且只有1个文件副本