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]
./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学习笔记——入门指令操作的更多相关文章
- Hadoop学习笔记(1) ——菜鸟入门
Hadoop学习笔记(1) ——菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序. ...
- Hadoop学习笔记(1)(转)
Hadoop学习笔记(1) ——菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序. ...
- hadoop学习笔记(四):HDFS文件权限,安全模式,以及整体注意点总结
本文原创,转载注明作者和原文链接! 一:总结注意点: 到现在为止学习到的角色:三个NameNode.SecondaryNameNode.DataNode 1.存储的是每一个文件分割存储之后的元数据信息 ...
- Hadoop学习笔记—22.Hadoop2.x环境搭建与配置
自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...
- Hadoop学习笔记(7) ——高级编程
Hadoop学习笔记(7) ——高级编程 从前面的学习中,我们了解到了MapReduce整个过程需要经过以下几个步骤: 1.输入(input):将输入数据分成一个个split,并将split进一步拆成 ...
- Hadoop学习笔记(6) ——重新认识Hadoop
Hadoop学习笔记(6) ——重新认识Hadoop 之前,我们把hadoop从下载包部署到编写了helloworld,看到了结果.现是得开始稍微更深入地了解hadoop了. Hadoop包含了两大功 ...
- Hadoop学习笔记(2)
Hadoop学习笔记(2) ——解读Hello World 上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello ...
- Hadoop学习笔记(5) ——编写HelloWorld(2)
Hadoop学习笔记(5) ——编写HelloWorld(2) 前面我们写了一个Hadoop程序,并让它跑起来了.但想想不对啊,Hadoop不是有两块功能么,DFS和MapReduce.没错,上一节我 ...
- Hadoop学习笔记(3)——分布式环境搭建
Hadoop学习笔记(3) ——分布式环境搭建 前面,我们已经在单机上把Hadoop运行起来了,但我们知道Hadoop支持分布式的,而它的优点就是在分布上突出的,所以我们得搭个环境模拟一下. 在这里, ...
随机推荐
- 将数组,表的某一列转换为string字符串的方法
样例:字符串数组为array,str为字符串数组转换成的字符串 string[] array = { etr, kdgj, 3454, tyt, gff }; string str=string.Jo ...
- WPF实现窗体最小化后小图标在右边任务栏下
一 基本功能 1. 这里是用 NotifyIcon 控件来实现,但 WPF 下没有 NotifyIcon 控件,怎么办,用 WinForm 下的呗. 先引用 .NET 自带的两个程序集 Syste ...
- pl_sql 报ora-12154 无法解析指定的连接标识符的问题
情况一:连接本地的没有问题,连接远程服务器的时候报以上错误.那么在本地客户端下的TNSNames.ora设置中配置你的远程服务器连接,本人的如下: //mestest是远程服务器名 //172.18. ...
- HTML中IE条件注释判断语句(<!--[if XX IE X]><![endif]-->)
<!--[if XX IE X]><![endif]-->是IE专门提供的一种语法,其他浏览器会将其作为注释而忽略这些语句. 作用: 根据不同的IE版本加载对应的CSS或者 ...
- c# 面相对象4-多态性
一.定义: 多态是面向对象程序设计的又一个特性.在面向过程的程序设计中,主要工作是编写一个个的过程或函数,这些过程和函数不能重名.例如在一个应用中,需要对数值型数据进行排序,还需要对字符型数据进行排序 ...
- 表空间使用情况统计[z]
SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOT ...
- 【.NetRemoting-3】2015.09.18
[Remoting程序的基本实现] [一]服务程序集 [1]服务对象必须要求继承[MBR,MarshalByRefObject] [二]服务端应用程序 [1]注册通道 [两种类型的通道] [A]发送请 ...
- window.showDialog()兼容性处理
ModalDialog 是什么? showModalDialog 是js window对象的一个方法, 和window.open一样都是打开一个新的页面. 区别是: showModalDialog打开 ...
- dir_colors linux颜色配置
在控制台下,用ls,就会发现,shell将不同类型的文件项目显示为不同的颜色.者可以提高效率,不用ls -l便能大概的把各个文件的类型情况了解一下. 你有没有想过更改这个着色配置呢? 其实,在/etc ...
- html5属性placeholder的js 向下兼容支持(jquery版)
placeholder是html5表单特性中比较好用的一条,但是苦于其向下兼容性,所以一般要做向下兼容的站点都不敢用,如果有用到的地方,也是用js简单模拟而实现的,那么有没有一个一劳永逸的方法去解决这 ...