Apache > Hadoop > Core

- 项目
- 维基
- Hadoop 0.18文档

PDF

# 名字空间配额管理指南

Hadoop分布式文件系统(HDFS)允许管理员为每个目录设置配额。 新建立的目录没有配额。 最大的配额是Long.Max_Value。配额为1可以强制目录保持为空。

目录配额是对目录树上该目录下的名字数量做硬性限制。如果创建文件或目录时超过了配额，该操作会失败。重命名不会改变该目录的配额；如果重命名操作会导致违反配额限制，该操作将会失败。如果尝试设置一个配额而现有文件数量已经超出了这个新配额，则设置失败。

配额和fsimage保持一致。当启动时，如果fsimage违反了某个配额限制（也许fsimage被偷偷改变了），则启动失败并生成错误报告。设置或删除一个配额会创建相应的日志记录。

下面的新命令或新选项是用于支持配额的。 前两个是管理员命令。

- dfsadmin -setquota <N> <directory>...<directory>
  把每个目录配额设为N。这个命令会在每个目录上尝试， 如果N不是一个正的长整型数，目录不存在或是文件名， 或者目录超过配额，则会产生错误报告。
- dfsadmin -clrquota <directory>...<director>
  为每个目录删除配额。这个命令会在每个目录上尝试，如果目录不存在或者是文件，则会产生错误报告。如果目录原来没有设置配额不会报错。
- fs -count -q <directory>...<directory>
  使用-q选项，会报告每个目录设置的配额，以及剩余配额。 如果目录没有设置配额，会报告none和inf。