HDFS 常用操作分类汇总整理-阿里云开发者社区

开发者社区> 晚来风急> 正文

HDFS 常用操作分类汇总整理

简介:
+关注继续查看

1、HDFS文件的权限以及读写操作

HDFS文件的权限:

  • 与Linux文件权限类似
  • r: read; w:write; x:execute,权限x对于文件忽略,对于文件夹表示是否允许访问其内容
  • 如果Linux系统用户zhangsan使用hadoop命令创建一个文件,那么这个文件在HDFS中owner就是zhangsan
  • HDFS的权限目的:阻止好人错错事,而不是阻止坏人做坏事。HDFS相信,你告诉我你是谁,我就认为你是谁

HDFS文件的读取:

HDFS的常用操作

HDFS文件的写入:

HDFS文件存储:

两个文件,一个文件156M,一个文件128在HDFS里面怎么存储?

–Block为64MB

–rapliction默认拷贝3份

HDFS文件存储结构:

2、HDFS下的文件操作

(1)列出HDFS文件

通过“-ls”命令列出HDFS下的文件


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -ls

(2)列出HDFS目录下某个文档中的文件

此处展示的是“-ls 文件名”命令浏览HDFS下名为in的文档中的文件


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -ls in

(3)上传文件到HDFS

此处展示的是“-put 文件1 文件2”命令将hadoop-0.20.2目录下的test1文件上传到HDFS上并重命名为test


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -put test1 test 

注意:在执行“-put”时只有两种可能,即是执行成功和执行失败。在上传文件时,文件首先复制到DataNode上,只有所有的DataNode都成功接收完数据,文件上传才是成功的。

(4)将HDFS中的文件复制到本地系统中

此处展示的是“-get 文件1 文件2”命令将HDFS中的in文件复制到本地系统并命名为getin:


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -get in getin 

(5)删除HDFS下的文档

此处展示的是“-rmr 文件”命令删除HDFS下名为out的文档:


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -rmr out 

执行命令后,查看只剩下一个in文件,删除成功:

(6)查看HDFS下的某个文件

此处展示的是“-cat 文件”命令查看HDFS下in文件中的内容:


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfs -cat in/* 

输出:


  1. hello world 
  2. hello hadoop 

PS:bin/hadoop dfs 的命令远不止这些,但是本文的这些命令很实用,对于其他的操作,可以通过“-help commandName”命令所列出的清单来进一步的学习

3、管理与更新

(1)报告HDFS的基本统计信息

通过“-report”命令查看HDFS的基本统计信息


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfsadmin -report 

执行结果如下所示:


  1. 14/12/02 05:19:05 WARN conf.Configuration: DEPRECATED: hadoop-site.xml found in the classpath. Usage of hadoop-site.xml is deprecated. Instead use core-site.xml, mapred-site.xml and hdfs-site.xml to override properties of core-default.xml, mapred-default.xml and hdfs-default.xml respectively 
  2. Configured Capacity: 19945680896 (18.58 GB) 
  3. Present Capacity: 13558165504 (12.63 GB) 
  4. DFS Remaining: 13558099968 (12.63 GB) 
  5. DFS Used: 65536 (64 KB) 
  6. DFS Used%: 0
  7. Under replicated blocks: 1 
  8. Blocks with corrupt replicas: 0 
  9. Missing blocks: 0 
  10.  
  11. ————————————————- 
  12. Datanodes available: 1 (1 total, 0 dead) 
  13.  
  14. Name: 127.0.0.1:50010 
  15. Decommission Status : Normal 
  16. Configured Capacity: 19945680896 (18.58 GB) 
  17. DFS Used: 65536 (64 KB) 
  18. Non DFS Used: 6387515392 (5.95 GB) 
  19. DFS Remaining: 13558099968(12.63 GB) 
  20. DFS Used%: 0
  21. DFS Remaining%: 67.98
  22. Last contact: Tue Dec 02 05:19:04 PST 2014 

(2)退出安全模式

NameNode在启动时会自动进入安全模式。安全模式是NameNode的一种状态,在这个阶段,文件系统不允许有任何的修改。安全模式的目的是在系统启动时检查各个DataNode

上数据块的有效性,同时根据策略对数据块进行必要的复制和删除,当数据块的最小百分比数满足配置的最小副本数条件时,会自动退出安全模式。


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfsadmin -safemode leave 

(3)进入安全模式


  1. wu@ubuntu:~/opt/hadoop-0.20.2$ bin/hadoop dfsadmin -safemode enter 

(4)添加节点

可扩展性是HDFS的一个重要的特性,向HDFS集群中添加节点是很容易实现的。添加一个新的DataNode节点,首先在新加的节点上安装好hadoop,要和NameNode使用相同的配置,修改HADOOP_HOME/conf/master文件,加入NameNode主机名。然后在NameNode节点上修改HADOOP_HOME/conf/slaves文件,加入新节点主机名。再建立到新节点无密码SSH连接,运行启动命令:

$ bin/start-all.sh

通过http://(主机名):50070可查看到新的DataNode节点添加成功

(5)负载均衡

用户可以使用下面的命令来重新平衡DataNode上的数据块的分布:

$ bin/start-balancer.sh


本文作者:佚名

来源:51CTO

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
8700 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10528 0
字典常用操作
'''字典的方法 d1.get() d1.setdefault() d1.pop() d1.popitem() d1.copy() d1.update() d1.
695 0
MySQL数据库的常用操作
添加一个用户dba,密码sql,可以管理db_开头的数据库 GRANT ALL PRIVILEGES ON `db\_`.* TO 'dba'@'localhost' IDENTIFIED BY 'sql' WITH GRANT OPTION; FLUSH PRIVILEGES;   从其他机器访问 如果要允许从其他机器访问,要修改 etc/mysql/my.
709 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
12351 0
位运算常用操作总结
来源:http://blog.csdn.net/baitxaps/article/details/50160125 位运算应用口诀 清零取反要用与,某位置一可用或 若要取反和交换,轻轻松松用异或  移位运算 要点   1 、它们都是双目运算符,两个运算分量都是整形,结果也是整形。
708 0
集合常用操作
'''集合的方法 set1.add() set1.update() set1.copy() set1.pop() set1.remove() set1.
695 0
VI常用操作
VI中的多行删除与复制   方法一: 单行删除,:1(待删除行)d 多行删除 ,:1,10d   方法二: 光标所在行,dd 光标所在行以下的N行,Ndd   方法1: 光标放到第6行, 输入:2yy 光标放到第9行, 输入:p 此方法适合复制少量行文本的情况,复制第6行(包括)下面的2行数据,放到第9行下面。
696 0
+关注
9380
文章
243
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载