• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
玅神
博客园    首页    新随笔    联系   管理    订阅  订阅

HDFS-学习总结

在多人共用HDFS的环境下,配置设置非常重要。特别是在Hadoop处理大量资料的环境,如
果没有配额管理,很容易把所有的空间用完造成别人无法存取。Hdfs的配额设定是针对目录
而不是针对账号,可以 让每个账号仅操作某一个目录,然后对目录设置配置。


hdfs文件的限额配置允许我们以文件个数,或者文件大小来限制我们在某个目录下上传的文
件数量或者文件内容总量,以便达到我们类似百度网盘网盘等限制每个用户允许上传的最大
的文件的量。

1|1①数量限额


hdfs dfs  -mkdir -p /user/root/dir   #创建hdfs文件夹 hdfs dfsadmin -setQuota 2 dir    # 给该文件夹下面设置最多上传两个文件,发现只能上传一个文件,因为系统把文件本身也当作文件

清除文件数量限制

hdfs dfsadmin -clrQuota /user/root/dir  # 清除文件数量限制

1|2②空间大小限额


在设置空间配额时,设置的空间至少是block_size * 3大小

 

 生成任意大小文件的命令:

dd if=/dev/zero of=1.txt  bs=1M count=2   #生成2M的文件

清除空间配额限制

 

二、hdfs的安全模式

安全模式是hadoop的一种保护机制,用于保证集群中的数据块的安全性。当集群启动的时

候,会首先进入安全模式。当系统处于安全模式时会检查数据块的完整性。


假设我们设置的副本数(即参数dfs.replication)是3,那么在datanode上就应该有3个副本存
在,假设只存在2个副本,那么比例就是2/3=0.666。hdfs默认的副本率0.999。我们的副本率
0.666明显小于0.999,因此系统会自动的复制副本到其他dataNode,使得副本率不小于0.999。
如果系统中有5个副本,超过我们设定的3个副本,那么系统也会删除多于的2个副本。


在安全模式状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求。在,当
整个系统达到安全标准时,HDFS自动离开安全模式

安全模式操作命令:

hdfs dfsadmin  -safemode  get #查看安全模式状态 hdfs dfsadmin  -safemode enter #进入安全模式 hdfs dfsadmin  -safemode leave #离开安全模式

 

三、HDFS Shell命令

概述

HDFS Shell命令允许使用命令行在HDFS存储中进行文件夹和文件操作。

如文件夹的增删改查、文件的增删改查等。

 

开始练习hadoop时,打开Linux之后要用 start-dfs.sh 

 启动HDFS。
HDFS不是开机启动的

 

常用命令

命令格式

hdfs dfs -操作命令 参数

前面的【hdfs dfs -】部分是固定的,后面的【操作命令 参数】部分是变化的

 

命令练习(练习时可结合Hadoop站点观察操作结果)

 

hdfs dfs -mkdir /abc #创建名为/abc的文件夹

hdfs dfs -ls / 0 #列出根目录中的内容

hdfs dfs -ls -R / #递归列出多层文件夹的内容

hdfs dfs -put /etc/hosts /abc/hosts #把Linux系统中/etc/hosts文件上传到HDFS中

hdfs dfs -appendToFile /etc/hosts /abc/hosts

#向文件中追加内容

hdfs dfs -checksum /abc/hosts #查看文件的MD5值

hdfs dfs -du -h / #查看文件/文件夹的大小

#-h以人类友好的方式显示大小(过大时带单位)

hdfs dfs -get /abc/hosts ./hosts #把HDFS中的文件下载到本地Linux中

#注意./hosts是下载后保存到本地的位置

hdfs dfs -cat /abc/hosts #查看HDFS中文本文件的内容

#注意:只能查看文件文件

hdfs dfs -tail /abc/hosts #列出文件结尾处1KB的文件内容

hdfs dfs -mv /abc/hosts /abc/xyz #修改文件名字或移动位置

hdfs dfs -cp /abc/xyz /abc/hosts #复制文件

hdfs dfs -find / -name xyz #查找名字为xyz的文件的位置

hdfs dfs -rmdir /abc #删除名为/abc的文件夹

#注意:如果其中还有文件则不能删除

hdfs dfs -rm /abc/hosts #删除文件

hdfs dfs -rm -r /abc #递归删除文件/文件夹,文件夹中有文件也能删除

hdfs dfs -df #查看HDFS文件系统的磁盘使用情况

posted @ 2020-12-11 23:01  玅神  阅读(229)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3