1. hadoop fs 帮助信息

hadoop fs

使用help选项可以获得某个具体命令的详细说明:

hadoop fs -help ls

2. 列出HDFS文件和目录

hadoop fs -ls /user/

3. 复制文件到HDFS和从HDFS复制文件

  在很多方面,HDFS较之于本地0S文件系统更像一个远程文件系统。对HDFS文件的复制操作更像SCP或FTP操作,而非NFS上的文件系统操作。文件上传使用-put或-copyFromLocal,文件下载使用-get或-copytoLocal。为了方便-copyFromLocal和-copytoLocal分别用来从本地复制文件到HDFS或将HDFS文件复制到本地,然后自动删除源文件。

  复制文件到hdfs

hadoop fs -put /etc/passwd /user/

  从hdfs复制文件

hadoop fs -get /user/passwd /usr/local

4. 修改HDFS文件的复制因子

  HDFS的另一个特别之处在于能够设置文件的复制因子。用-setrep命令,加上复制因子和可选标志(-R)表示要递归执行该操作。

hadoop fs -setrep 5 -R /user/tmp/

  注:HDFS会主动跟踪并管理可用数据块副本的数量,当副本数目低于配置的复制因子时,文件系统会自动从剩下的副本创建一个新的副本。

5. 设定目录磁盘空间的限额

//size是磁盘限额(用字节表示),path就是配额作用的目标目录
hadoop dfsadmin -setSpaceQuota size path

6. 查询文件夹的磁盘空间限额和文件数目限额

hadoop fs -count -q path

  结果的第一列显示的是文件数的限额,第二列是允许添加的文件数,第三列和第四列分别是磁盘空间的限额和剩余的可用空间(单位是字节)。

  注:只有当磁盘空间配额大小为磁盘块大小的整数倍时,才有意义。

7. 解除文件夹磁盘空间配额限制的命令

hadoop dfsadmin -clrSpaceQuota path

8. 设定文件数目配额

hadoop dfsadmin -setQuota number path

9. 解除文件数目配额

hadoop dfsadmin -clrQuota path

10. 添加一个DataNode

  集群扩容需要添加新DataNode,通常是在需要增加存储的情况下,虽然有时也是为了增加IO总带宽或减小单台机器失效的影响。在运行中的HDFS集群上增加新的DataNode是一个在线操作或热操作。对于要使用HDFS主机及功能的用户,新主机的IP地址必须添加到include文件中,但主机列表可以动态更新而无需重新启动NameNode。

1. 把DataNode的IP地址加入dfs.hosts参数指定的文件中。每个IP地址占用一行。

2. 以HDFS超级用户或有类似权限的用户执行命令行hadoop dfsadmin -refreshNodes。

3. 如果使用机架感知机制,需要为新加入主机更新相关的机架信息。

4. 启动DataNode进程。

5. 通过NameNode的Web界面或命令hadoop dfsadmin -report的输出来确定新节点是否已连接。

  仅当使用包含HDFS主机的功能时需要执行步骤1和2。

11. 卸载DataNode

  DataNode可能被卸载以便把它从集群中安全移除,同时还要保持主机上所有块的复制因子。这个过程可能很漫长,取决于被卸载主机上的数据量、集群工作数以及网络速度等因素。因为卸载的时间太长,在操作系统重启或配置变化引发的重启所导致的短暂停机状态下不适合做卸载节点的操作。如果想保证所有数据块安全,就需要使用安全卸载功能。

1. 把DataNode的IP地址添加到dfs.hosts.exclude参数指定的文件中。每个IP地址占用一行。

2. 以HDFS超级用户或拥有类似权限的用户执行hadoop dfsadmin -refreshNodes。

3. 监控NameNode的Web界面确保卸载正在进行。有时更新会滞后几秒。

4. 因为DataNode上的数据较多,卸载有时会持续数小时甚至几天。卸载完成时,NameNode界面会把DataNode显示成已卸载。

5. 停止DataNode进程。

6. 如果不打算把机器放回集群,就需要在HDFS的include和exclude文件中去除DataNode,同时更新机架拓扑数据库。

7. 执行hadoop dfsadmin -refreshNodes让NameNode进行节点更新。

12. 在HDFS中创建一个新文件夹

hadoop fs -mkdir /user/weblogs

13. 列出HDFS上weblog_entries.txt文件信息

hadoop fs -ls /user/weblogs/weblog_entries.txt

HDFS命令行工具的更多相关文章

  1. windows下的命令行工具babun

    什么是babun babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux,unix上面的命令,他几乎可以取代windows的shell.用官方的题目说就是 ...

  2. 『.NET Core CLI工具文档』(一).NET Core 命令行工具(CLI)

    说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正. 原文:.NET Core Command Line Tools 翻译:.NET Core命令行工具 什么是 .NET Core ...

  3. 命令行工具aspnet_regiis.exe实现加密和解密web.config

    命令行工具aspnet_regiis.exe,是一个类似于DOS的命令工具,称之为命令解释器.使用命令行工具加密和解密web.config文件中的数据库连接字符串时,只需要简单的语法命令即可. 加密语 ...

  4. nodejs 编写(添加时间戳)命令行工具 timestamp

    Nodejs除了编写服务器端程序还可以编写命令行工具,如gulp.js就是Nodejs编写的. 接下来我们来实现一个添加时间戳的命令: $ timestamp action https://www.n ...

  5. 如何用Node编写命令行工具

    0. 命令行工具 当全局安装模块之后,我们可以在控制台下执行指定的命令来运行操作,如果npm一样.我把这样的模块称之为命令行工具模块(如理解有偏颇,欢迎指正) 1.用Node编写命令行工具 在Node ...

  6. Orchard中的命令行工具

    在Orchard中提供了一个命令行工具,我们可以使用这个命令行工具创建用户.创建博客.生成代码.配置网站.打包模块等.并且这个命令行工具是可以扩充的,只要我们在自己开发的模块中创建一个Command类 ...

  7. Linux 性能监控之命令行工具

    引言 对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.这些命令行工具可以在各种Linux系统下使用,可以用于监控和查找产生性能问题的原因.这个命令行工具列表提供了足够的 ...

  8. 命令行工具解析Crash文件,dSYM文件进行符号化

    备份   文/爱掏蜂窝的熊(简书作者)原文链接:http://www.jianshu.com/p/0b6f5148dab8著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 序 在日常开发 ...

  9. MySQL 命令行工具之 mysqldump 深入研究

    mysqldump 是MySQL的一个命令行工具,用于逻辑备份.可以将数据库和表的结构,以及表中的数据分别导出成:create database, create table, insert into的 ...

随机推荐

  1. [VBA]批量替换PPT里的字体颜色

    不知道为什么计组老师的大量课件字体是伤害视力的亮蓝色……看久了眼睛疼,想把颜色替换成保护视力一点的灰色,但是找了N久也没找到在图形界面上直接操作的方法,于是在MSDN上晃了晃,Google了一下,写了 ...

  2. 生成元(UVa1583)

    题目具体描述见:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_prob ...

  3. 修改 jupyter notebook 启动工作路径的方法

    Windows下jupyter notebook默认的启动路径就是当前cmd启动jupyter 的路径: C:\Users\用户名>jupyter notebook 此时jupyter 的启动工 ...

  4. [实战]MVC5+EF6+MySql企业网盘实战(7)——文件上传

    写在前面 周末了,在家继续折腾网盘,今天实现网盘文件的上传. 系列文章 [EF]vs15+ef6+mysql code first方式 [实战]MVC5+EF6+MySql企业网盘实战(1) [实战] ...

  5. ​Web(click and script) 与 Web(HTTP/HTML)协议区别

    Web(click and script) 与 Web(HTTP/HTML)协议区别 webjavascriptvbscript浏览器脚本login 先从最简单的说明上来看, Web(HTTP/HTM ...

  6. intellij自动生成java代码注释(java文件注释和方法注释)

    1定义java文件头部的注释 2给java类中的方法添加上注释 2.1第一步勾选Enable Live  Templates 2.2第二步新建一个Group 2.3第三步新建一个Template 2. ...

  7. ASP.NET MVC 3和Razor中的@helper

    ASP.NET MVC 3支持一项名为“Razor”的新视图引擎选项(除了继续支持/加强现有的.aspx视图引擎外).当编写一个视图模板时,Razor将所需的字符和击键数减少到最小,并保证一个快速.通 ...

  8. JavaScript 实现数组去重

    JavaScript 实现数组去重 演示Demo 数组去重 // 方法一 function unique1(a) { var res = []; for (var i = 0, len = a.len ...

  9. poj1753 Flip Game(BFS+位压缩)

    题目链接 http://poj.org/problem?id=1753 题意 一个棋盘上有16个格子,按4×4排列,每个格子有两面,两面的颜色分别为黑色和白色,游戏的每一轮选择一个格子翻动,翻动该格子 ...

  10. vue中使用ueditor富文本编辑框

    1.把下载的Ueditor资源,放入静态资源static中. 修改ueditor.config.js中的window.UEDITOR_HOME_URL配置,如下图: 2.在main.js中引入以下文件 ...