【问题标题】:Hadoop HDFS: DateNode directory on system partition?Hadoop HDFS:系统分区上的 DataNode 目录?
【发布时间】:2012-11-14 14:28:56
【问题描述】:

以这种方式设置的 Hadoop 集群空间不足:

  • 1x 1TB HDD /
  • 3x 1.5TB HDD /data1 /data2 /data3

系统分区几乎没有使用(97% 空闲),不会用于与 hadoop 无关的任务。

将系统分区作为 HDFS 数据目录添加到 DataNode 配置是否安全?

恐怕 Hadoop 会填满分区,使系统无法使用。

最好的方法可能是设置单独的 lvm 卷或重新分区磁盘。但我会避免走这条路。

hadoop 是否尊重 unix 配额?例如。如果我从系统分区添加一个目录并通过配额限制 hadoop 用户仅使用例如0.5TB 会有帮助吗?

【问题讨论】:

    标签: linux hadoop filesystems hdfs quota


    【解决方案1】:

    是的,Hadoop 使用通用文件写入 API 来写入块数据,并且会遵守 Unix 级别的配额。此外,还有一个配置属性dfs.datanode.du.reserved,它允许您为每个卷设置保留空间(适用于所有卷),DataNodes 不会考虑写入。

    但是,允许写入操作系统挂载通常是不好的做法。如果您设想最终寻找更多存储空间(假设您已经达到了限制),最好购买更多磁盘并将它们安装在 DataNode 上。

    【讨论】:

    • 谢谢,现在我选择了dfs.datanode.du.reserved。我理解您对使用 os 分区的看法,但目前不能选择更多磁盘,并且该空间将仅用于 HDFS,而不用于 MapReduce 中间数据。我希望在我们得到更多空间更大的机器之前,我会在这方面保持安全。
    • 为了更加安全,不允许在这个挂载点上使用mapred.local.dir,因为这是由用户运行逻辑使用的,并且可能导致空间填充,即使只是用于临时数据。
    猜你喜欢
    • 2016-07-22
    • 2015-09-04
    • 2015-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多