Hadoop学习之常用命令

HADOOP基本操作命令

在这篇文章中,我们默认认为Hadoop环境已经由运维人员配置好直接可以使用。

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

启动与关闭

启动HADOOP

  1. 进入HADOOP_HOME目录。
  2. 执行sh bin/start-all.sh
  3. 进入HADOOP_HOME目录。
  4. 执行sh bin/stop-all.sh

关闭HADOOP

文件操作

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]

杀死某个正在运行的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.

上一篇:Java XML DOM解析(xPath)


下一篇:Hadoop HDFS的常用命令