您的位置:首页 > 运维架构

hadoop1.2.1基本操作整理

2014-07-10 10:07 169 查看
现阶段暂时不用hadoop了,为了怕自己忘记,对一些基本操作进行整理。

1.启动与退出

启动

首先刷新hadoop的配置文件:source /etc/profile

然后启动hadoop的守护进程:start-all.sh

查看启动情况:jps

正常启动的话这时会看到datanode, namenode, jps, secondary namenode, jobTracker, tasktracter 共6项,否则,格式化HDFS:hadoop namenode -format,然后重新执行上述操作

退出

任务进行完后,一定要记得关闭hadoop,否则下次启动时后出现一些问题

stop-all.sh

启动时还可能会遇到关于安全模式的问题,这时,查看namenode处于哪种状态:hadoop dfsadmin -safenode get

hadoop 启动时是在安全模式,进入安全模式: hadoop dfsadmin -safemode enter

进行插入删除操作时是在非安全模式,离开安全模式:hadoop dfsadmin -safemode leave

2.文件操作

hadoop 的hdfs文件操作命令类似linux命令,所不同的是,HDFS命令的格式为

hadoop fs -cmd<args>

其中,cmd的命令名常与unix对应的命令名相同

HDFS工作目录建立:hadoop fs -mkdir /user/$user ,$user是可以自己命名的,这样就建立了其工作目录。

然后我们就可以在该目录下建立自己的输入输出文件夹

文件上传:hadoop fs -put 本地文件路径 HDFS中想要放置的位置

文件下载:hadoop fs -get HDFS中想要下载的文件的路径 本地存储路径

如果不想下载,还可以查看HDFS上的文件:hadoop fs -cat 文件在HDFS中的路径

删除文件或空的文件夹: hadoop fs -rm 文件路径

删除文件夹:hadoop fs -rmr 文件夹路径

3.hadoop streaming运行map,reduce程序

首先确保编译好map,reduce程序,map,reduce程序各自的源文件可以由多个,但编译之后必须让其生成一个map程序,一个reduce程序,已检验过,这样做是可以的。

其次,输入文件必须上传到HDFS,

运行命令如下:

hadoop jar jar包位置(hadoop 安装路径/hadoop/bin/contrib/streaming/hadoop1.2.1-streaming.jar)

-input input文件路径

-output output文件夹路径

-mapper map程序路径

-reducer reduce程序路径

-jobconf mapred.reduce.tasks=任务数 或 mapred.map.tasks=任务数

-jobconf这个参数是用来人为的控制程序运行的map和reduce的任务个数,但其实map的任务个数是不能被控制的,原因见上篇。而控制reduce的个数为0的时候是为了方便检验map程序是否正确。

这个参数已经算是被废弃的,现在都用-D命令,与-jobconf命令的功能类似,不过-D命令必须出现在输入输出命令之前,已验证过,出现在其之后会报错。

4.hadoop的集群用户界面

我们也可以在hafs的用户界面查看任务的执行情况,端口号是50070

http:\\localhost:50070

可以查看上传的文件,输出的文件等等。

暂时先写这么多。

----------------------------------------------------------------------------------------------Mark here
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: