阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Hadoop之HDFS文件操作

109次阅读
没有评论

共计 2109 个字符,预计需要花费 6 分钟才能阅读完成。

摘要:Hadoop 之 HDFS 文件操作常有两种方式,命令行方式和 JavaAPI 方式。本文介绍如何利用这两种方式对 HDFS 文件进行操作。
 
关键词:HDFS 文件    命令行    Java API
 
HDFS 是一种分布式文件系统,为 MapReduce 这种框架下的海量数据分布式处理而设计。
 
Hadoop 之 HDFS 文件操作常有两种方式,一种是命令行方式,即 Hadoop 提供了一套与 Linux 文件命令类似的命令行工具;另一种是 JavaAPI,即利用 Hadoop 的 Java 库,采用编程的方式操作 HDFS 的文件。

————————————– 分割线 ————————————–

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

Hadoop LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm

Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm

————————————– 分割线 ————————————–
 
方式一:命令行方式
 
Hadoop 文件操作命令形式为
 
hadoop fs -cmd <args>
 
说明:cmd 是具体的文件操作命令,<args> 是一组数目可变的参数。
 
Hadoop 最常用的文件操作命令,包括添加文件和目录、获取文件、删除文件等。
 
1 添加文件和目录
 
HDFS 有一个默认工作目录 /usr/$USER,其中 $USER 是你的登录用户名,作者的用户名是 root。该目录不能自动创建,需要执行 mkdir 命令创建。
 
hadoop fs -mkdir  /usr/root
 
使用 Hadoop 的命令 put 将本地文件 README.txt 送到 HDFS。
 
hadoop fs -put README.txt  .
 
注意上面这个命令最后一个参数是句点(.),这意味着把本地文件放入到默认的工作目录,该命令等价于:
 
hadoop fs -put README.txt    /user/root
 
使用 Hadoop 的 ls 命令,即
 
hadoop fs -ls
 
显示结果如图 1 所示。
 

Hadoop 之 HDFS 文件操作图 1  hadoop 中 ls 命令 Demo
 
2 获取文件
 
获取文件包含两层意思,一是 HDFS 从本地文件中获取文件,即前面介绍的添加文件;二是本地文件从 HDFS 中获取文件,可以使用 Hadoop 的 get 命令。例如若本地文件没有 README.txt 文件,需要从 HDFS 中取回,可以执行如下命令。
 
hadoop fs -get  README.txt  .
 
或者
 
hadoop fs -get README.txt  /usr/root/README.txt
 
3 删除文件
 
Hadoop 删除文件命令为 rm。例如要删除从本地文件上传的 README.txt,可以执行如下命令。
 
hadoop  fs -rm  README.txt
 
4 检索文件
 
检索文件即查阅 HDFS 中的文件内容,可以使用 hadoop 中的 cat 命令。例如要查阅 README.txt 的内容,可以执行如下命令。
 
hadoop fs -cat README.txt
 
部分显示结果如图 2 所示
 

Hadoop 之 HDFS 文件操作图 2 hadoop 中 cat 命令 Demo
 
另外,hadoop 的 cat 命令的输出也可以使用管道传递给 Unix 命令的 head:
 
hadoop fs -cat README.txt | head
 
Hadoop 也支持 tail 命令查看最后一千字节。例如要查阅 README.txt 最后一千个字节,可以执行如下命令。
 
hadoop fs -tail README.txt
 
5 查阅帮助
 
查阅 Hadoop 命令帮助,可以让我们很好地掌握和使用 Hadoop 的 命令。我们可以执行 hadoop fs 获取所用版本 Hadoop 的一个完整命令列别,也可以使用 help 来显示某个具体命令的用法及简短描述。
 
例如,要了解 ls 命令,可执行如下命令。
 
hadoop  fs -help ls
 
关于 hadoop 命令 ls 的描述如图 3 所示。
Hadoop 之 HDFS 文件操作
图 3 Hadoop 命令 ls 的介绍

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计2109字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中