当前位置:操作系统 > Unix/Linux >>

Hadoop基本操作

Hadoop基本操作
 
在这篇文章中,我们默认认为Hadoop环境已经由运维人员配置好直接可以使用。
 
假设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]
 
杀死某个正在运行的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.
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,