码迷,mamicode.com
首页 > 其他好文 > 详细

Hadoop学习笔记——入门指令操作

时间:2016-08-10 22:46:49      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:

假设Hadoop的安装目录HADOOP_HOME为/home/admin/hadoop。

启动与关闭
启动HADOOP
1. 进入HADOOP_HOME目录。

2. 执行sh bin/start-all.sh

关闭HADOOP
1. 进入HADOOP_HOME目录。

2. 执行sh bin/stop-all.sh

文件操作
Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。

查看文件列表
查看hdfs中/user/admin/aaron目录下的文件。

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs -ls /user/admin/aaron

这样,我们就找到了hdfs中/user/admin/aaron目录下的文件了。

我们也可以列出hdfs中/user/admin/aaron目录下的所有文件(包括子目录下的文件)。

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs -lsr /user/admin/aaron

创建文件目录
查看hdfs中/user/admin/aaron目录下再新建一个叫做newDir的新目录。

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs -mkdir /user/admin/aaron/newDir

删除文件
删除hdfs中/user/admin/aaron目录下一个名叫needDelete的文件

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs -rm /user/admin/aaron/needDelete

删除hdfs中/user/admin/aaron目录以及该目录下的所有文件

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs -rmr /user/admin/aaron

上传文件
上传一个本机/home/admin/newFile的文件到hdfs中/user/admin/aaron目录下

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs –put /home/admin/newFile /user/admin/aaron/

下载文件
下载hdfs中/user/admin/aaron目录下的newFile文件到本机/home/admin/newFile中

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs –get /user/admin/aaron/newFile /home/admin/newFile

查看文件
我们可以直接在hdfs中直接查看文件,功能与类是cat类似

查看hdfs中/user/admin/aaron目录下的newFile文件

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop fs –cat /home/admin/newFile

MAPREDUCE JOB操作
提交MAPREDUCE JOB
原则上说,Hadoop所有的MapReduce Job都是一个jar包。

运行一个/home/admin/hadoop/job.jar的MapReduce Job

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobMainClass] [jobArgs]
./bin/hadoop jar jars/CJBLogTestWeb.jar cjb.test.log.wap.LogWapCleanJob /input/access.log_2015-11-18.txt /outputCJB/CJBWAPTest/WAP3
杀死某个正在运行的JOB
假设Job_Id为:job_201005310937_0053

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop job -kill job_201005310937_0053

更多HADOOP的命令
上面介绍的这些Hadoop的操作命令是我们最常用的。如果你希望了解更多,可以按照如下的方式获取命令的说明信息。

1. 进入HADOOP_HOME目录。

2. 执行sh bin/hadoop

我们可以看到更多命令的说明信息:

Usage: hadoop [--config confdir] COMMAND
where COMMAND is one of:
namenode -format format the DFS filesystem
secondarynamenode run the DFS secondary namenode
namenode run the DFS namenode
datanode run a DFS datanode
dfsadmin run a DFS admin client
fsck run a DFS filesystem checking utility
fs run a generic filesystem user client
balancer run a cluster balancing utility
jobtracker run the MapReduce job Tracker node
pipes run a Pipes job
tasktracker run a MapReduce task Tracker node
job manipulate MapReduce jobs
queue get information regarding JobQueues
version print the version
jar <jar> run a jar file
distcp <srcurl> <desturl> copy file or directories recursively
archive -archiveName NAME <src>* <dest> create a hadoop archive
daemonlog get/set the log level for each daemon
or
CLASSNAME run the class named CLASSNAME
Most commands print help when invoked w/o parameters.

hadoopdfs -ls 列出HDFS下的文件
hadoop dfs -ls in 列出HDFS下某个文档中的文件
hadoop dfs -put test1.txt test 上传文件到指定目录并且重新命名,只有所有的DataNode都接收完数据才算成功
hadoop dfs -get in getin 从HDFS获取文件并且重新命名为getin,同put一样可操作文件也可操作目录
hadoop dfs -rmr out 删除指定文件从HDFS上
hadoop dfs -cat in/* 查看HDFS上in目录的内容
hadoop dfsadmin -report 查看HDFS的基本统计信息,结果如下
hadoop dfsadmin -safemode leave 退出安全模式
hadoop dfsadmin -safemode enter 进入安全模式


Hadoop 2.x中YARN系统的服务日志包括ResourceManager日志和各个NodeManager日志,他们的日志位置如下:
ResourceManager日志存放位置是Hadoop安装目录下的logs目录下的yarn-*-resourcemanager-*.log
NodeManager日志存放位置是各个NodeManager节点上hadoop安装目录下的logs目录下的yarn-*-nodemanager-*.log
应用程序日志包括jobhistory日志和Container日志,其中,jobhistory日志是应用程序运行日志,包括应用程序启动时间、结束时间,每个任务的启动时间、结束时间,各种counter信息等。
Container日志包含ApplicationMaster日志和普通Task日志,它们均存放在Hadoop安装目录下的userlogs目录中的application_xxx目录下,其中ApplicationMaster日志目录名称为container_xxx_000001,普通task日志目录名称则为container_xxx_000002,container_xxx_000003,….,同Hadoop 1.x一样,每个目录下包含三个日志文件:stdout、stderr和syslog,且具体含义是一样的。

Hadoop学习笔记——入门指令操作

标签:

原文地址:http://www.cnblogs.com/yangjun323/p/5758963.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!