代码之家  ›  专栏  ›  技术社区  ›  Shashikant Kore

hadoop.tmp.dir应该是什么?

  •  24
  • Shashikant Kore  · 技术社区  · 15 年前

    Hadoop具有配置参数 hadoop.tmp.dir 根据文件,这是` “其他临时目录的基础。” 我想,这个路径指的是本地文件系统。

    我将此值设置为 /mnt/hadoop-tmp/hadoop-${user.name} . 格式化namenode并启动所有服务后,我看到在HDFS上创建的路径完全相同。

    这是否意味着, hadoop.tmp.dir 指的是网络上的临时位置 HDFS ?

    3 回复  |  直到 10 年前
        1
  •  33
  •   AdrieanKhisbe aytigra    10 年前

    这让人困惑,但是 hadoop.tmp.dir HDFS mapred.system.dir 默认设置为 "${hadoop.tmp.dir}/mapred/system" ,这将定义

    如果不想将这些绑定在一起,可以编辑 mapred-site.xml 因此mapred.system.dir的定义与 ${hadoop.tmp.dir}

        2
  •  27
  •   darcyy    12 年前

    让我对kkrugler的回答再补充一点:

    有三个HDFS属性包含 hadoop.tmp.dir 价值观

    1. dfs.name.dir :namenode存储其元数据的目录,默认值为 ${hadoop.tmp.dir}/dfs/name .
    2. dfs.data.dir :存储HDFS数据块的目录,默认值为 ${hadoop.tmp.dir}/dfs/data
    3. fs.checkpoint.dir :secondary namenode存储其检查点的目录,默认值为 ${hadoop.tmp.dir}/dfs/namesecondary .

    这就是为什么你看到了 /mnt/hadoop-tmp/hadoop-${user.name} 在格式化namenode之后,在HDFS中。

        3
  •  3
  •   Binary Nerd    15 年前

    我四处看看这方面的信息。我唯一能想到的就是网上的这个帖子 Amazon Elastic MapReduce Dev Guide :

    在hadoop-site.xml中,我们设置 /mnt/var/lib/hadoop/tmp/mnt在哪里 我们装载额外的EC2卷, 其中包含的数据可能比 默认卷(确切数额 取决于实例类型。)Hadoop的 java(解包的模块 hadoop.tmp.dir作为hadoop文件系统 路径而不是本地路径,因此 写入HDFS中的路径,而不是 本地路径。HDFS安装在 /mnt(特别是 /mnt/var/lib/hadoop/dfs/。所以,你可以 向它写入大量数据。