HDFS Quotas Guide

Overview

HDFS允许管理员为多个每个目录设置使用的命名空间和空间的配额。命名空间配额和空间配额独立操作,但是这两种类型的配额的管理和实现非常类似。

Name Quotas

命名空间配额是一个目录树中该目录下的文件和子目录数量的硬限制。如果超出配额,文件和目录会创建失败。配额会与重命名的目录保持联系。如果重命名操作导致违反配额限制,操作将会失败。为目录设置新的配额时,即使现在的目录状态违反新的配额限制,操作仍然成功。一个新创建的目录没有配额限制。配额的最大值是Long.Max_Value。一个目录的配额会强制一个目录保持空。(是的,一个目录会占用自己的配额)

配额在FsImage中被持久化。当集群启动时,如果fsimage中有违反配额的目录(可能是FsImage文件被偷偷地修改了),将会打印出一个warning。设置或者移除配额配置会创建日志条目。

Space Quotas

空间配额是关于目录树上一个子目录数下的文件大小的硬限制。如果一个目录所剩的配额不够一个Block的大小,Block申请失败。每一个Block的副本都会计算到配额中。配额会与重命名的目录保持联系,如果重命名操作导致违反配额限制,操作将会失败。一个新创建的目录不被分配配额。最大的配额值时Long.Max_Value。配额为0仍然允许文件被创建,但是这个文件不会有Block。目录不使用主机文件系统空间,不计算在空间配额中。(空间配额----Block)。改变一个文件的副本因子将会归还或者占用配额。

配额在FsImage中被持久化。当集群启动时,如果fsimage中有违反配额的目录(可能是FsImage文件被偷偷地修改了),将会打印出一个warning。设置或者移除配额配置会创建日志条目。

Administrative Commands

配额通过下面的命令管理,只对管理员可用:

1.      dfsadmin -setQuota <N><directory>...<directory>

设置一个或多个目录的命名空间配额为N。如果N不是一个正整数,这个目录不存在或者这个路径是个文件,或者目录将立即超出新的配额时会抛出错误报告。

2.      dfsadmin -clrQuota<directory>...<directory>

移除目录列表中目录的所有命名空间配额。如果目录不存在或者路径是一个文件,将会抛出错误。如果目录没有配额的话不会抛出错误。

3.      dfsadmin-setSpaceQuota <N> <directory>...<directory>

设置目录列表中的每个目录的空间配额为N,单位bytes。这是对此目录下的整个字目录树的文件大小总和的硬限制。空间配额也会考虑副本等的信息,拥有3个副本的1GB的数据会消耗3GB的配额。为了方便,N也可以用一个二进制前缀指定。例如,50g用50 gigabytes表示,2t用2terabytes表示等等。如果N既不是0也不是正整数或者目录不存在或者路径是个文件或者目录将立即超出配额,会抛出错误信息。

4.      dfsadmin-clrSpaceQuota <directory>...<director>

移除目录列表中每一个目录的空间配额。如果目录不存在或者路径是个文件,将会抛出错误。如果目录没有配额不会抛出错误。

Reporting Command

一个HDFS shell 计数命令的扩展,这个命令报考配额的值和当前使用的命名空间配额和空间配额。

fs -count -q <directory>...<directory>

使用-q选项,报告目录列表中每个目录的命名空间配额值,可用的命名空间剩余,空间配额值,可用的空间配额剩余。如果目录没有设置配额,报告的值时none和inf。

hdfs的文件个数 HDFS Quotas Guide的更多相关文章

  1. HDFS写文件过程分析

    转自http://shiyanjun.cn/archives/942.html HDFS是一个分布式文件系统,在HDFS上写文件的过程与我们平时使用的单机文件系统非常不同,从宏观上来看,在HDFS文件 ...

  2. Hadoop HDFS分布式文件系统设计要点与架构

      Hadoop HDFS分布式文件系统设计要点与架构     Hadoop简介:一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群 ...

  3. Spark1.4从HDFS读取文件运行Java语言WordCounts

    Hadoop:2.4.0 Spark:1.4.0 Ubuntu 14.0 1.首先启动Hadoop的HDFS系统.     HADOOP_HOME/sbin/start-dfs.sh 2.在Linux ...

  4. Spark1.4从HDFS读取文件运行Java语言WordCounts并将结果保存至HDFS

    本次实验相关信息如下: 操作系统:Ubuntu 14 Hadoop版本:2.4.0 Spark版本:1.4.0 运行前提是Hadoop与Spark均已正确安装配置 2.在Linux中生成一个文件tes ...

  5. hadoop HDFS常用文件操作命令

    命令基本格式: hadoop fs -cmd < args > 1. ls 列出hdfs文件系统根目录下的目录和文件 hadoop fs -ls /dir hadoop fs -ls -R ...

  6. Hadoop Shell命令(基于linux操作系统上传下载文件到hdfs文件系统基本命令学习)

    Apache-->hadoop的官网文档命令学习:http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html FS Shell 调用文件系统( ...

  7. Hadoop HDFS分布式文件系统设计要点与架构(转摘)

    Hadoop简介:一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力高速运算和存储.Hadoop实现了一个分布式文件系统(Ha ...

  8. HDFS常用文件操作

    put 上传文件    hadoop fs -put wordcount.txt   /data/wordcount/ text 查看文件内容   hadoop fs -text /output/wo ...

  9. 解决HDFS小文件带来的计算问题

    hive优化 一.小文件简述 1.1. HDFS上什么是小文件? HDFS存储文件时的最小单元叫做Block,Hadoop1.x时期Block大小为64MB,Hadoop2.x时期Block大小为12 ...

随机推荐

  1. AKKA Actor创建

    Actor 类定义 Actor 类需要继承AbstractActor类 实现createReceive方法,绑定各类actor收到不同类型消息对应处理不同业务逻辑 默认提供了ReceiveBuilde ...

  2. Remote Desktop突然不能用了 “This could be due to CredSSP encryption oracle remediation”

    一段时间没有用RDP去连远程的Windows主机,某一天突然发现用不了了. 错误信息如下: An authentication error has occurred. The function req ...

  3. 【转帖】 PM RD QA OP

    From 百度知道 一.PM: Product Manager,产品经理,又称品牌经理(Brand Manager).举凡产品从创意到上市,所有相关的研发.调研.生产.编预算.广告.促销活动等等,都由 ...

  4. Springboot Actuator之五:Springboot中的HealthAggregator、新增自定义Status

    springboot的actuator内置了/health的endpoint,很方便地规范了每个服务的健康状况的api,而且HealthIndicator可以自己去扩展,增加相关依赖服务的健康状态,非 ...

  5. yum 多线程插件,apt多线程插件

    1.安装yum-axelget插件,默认 yum使用单线程下载,安装该插件后,会使用多线程下载. yum -y install yum-axelget 2. apt-fast安装 https://gi ...

  6. Java随堂笔记三

    今天学习了Java运算符的最后一部分 public static void main(String[] args) {        //算数运算符:+ - * / % ++ --        // ...

  7. Python基础笔记(四)

    1. 返回函数与闭包 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure) def getSum(*args): def add(): ...

  8. Authentication using SASL/Kerberos

    Prerequisites KerberosIf your organization is already using a Kerberos server (for example, by using ...

  9. FineReport连接SSAS多维数据库

    1.服务器——定义数据连接,如下图: 2.配置SSAS服务器地址及登录名密码: 注意这里的用户名.密码是指的服务器的登录名和登录密码,也就是你远程桌面的登录用户名和密码,不是数据库的登录用户名密码. ...

  10. LaTeX的安装并使其能够编译中文

    首先,感谢博客园团队帮我找回这篇被我误删除的博客.找回方法:发送邮件至"contact@cnblogs.com",然后就可以在工作人员的帮助下找回了.下面介绍LaTeX的安装并使其 ...