Hadoop 常用指令
1. 察看hdfs文件系统运行情况
bin/hdfs dfsadmin -report
2. 为了方便执行 HDFS 的操作指令,我们可以将需要的 Hadoop 路径写入环境变量中,便于直接执行命令。
如原本需要在 Hadoop 的安装路径下:bin/hadoop fs -ls / 才能执行的命令。我们在 ~/.bash_profile 文件中写入
export HADOOP_HOME=~/hadoop2.8.0
export PATH=$PATH:$HADOOP_HOME/bin
使用 source ~/.bash_profile 命令使当前用户的环境变量生效后,就可以直接输入 hadoop fs -ls / 来访问 HDFS 的根目录了。
3. 察看并保存部分 HDFS 上的文件内容
1. 依次察看一个比较大的文件内容
hadoop fs -cat /user/test | less
2. 保存大文件的部分内容到本地
hadoop fs -cat /user/test | head -n 100 > test
在这个过程中即使管道符后面的命令执行完了,也不会自动停止。因为会在后台默认执行管道符前面的内容,即显示文件的全部内容,此时手动中断即可。
4. 合并 HDFS 输出文件
hadoop fs -getmerge /user/ouput output.dat
上述命令中 /user/output 是 HDFS 上的输出目录,下面有很多个输出文件。该命令可以将所有这些文件合并到本地的 output.dat 文件中。
5. MapReduce 任务有多个输入时,每个 mapper 对应一个输入文件或者一个输入文件的一部分,此时可以通过环境变量来识别当前 mapper 处理的是哪个输入文件
通过 os.environ["map_input_file"] 可以获取到当前输入文件的 HDFS 完整路径。再对路径进行分割判断即可。
注意 os.path.split(path) 返回的是由路径和文件名组成的元组。如果路径为一个目录,那么返回目录,文件名为空。因此如果需要获取目录的某个特定级字段,需要手动对路径分割。
import os
os.path.split('C:/libo/test/filename')
#输出结果为 ('C:/libo/test', 'filename')
6. MapReduce 程序写完,一定要在本地测试
1. 使用 echo -e "test" | python mapper.py 测试 mapper.py 函数功能
2. 使用 echo -e "test" | python reducer.py 测试 reducer.py 函数功能
3. 使用 echo -e "test" | python mapper.py | python reducer.py 测试整体功能
4. 然后再尝试去集群上跑
Hadoop 常用指令的更多相关文章
- hadoop常用指令
1.格式化名称节点:hadoop namenode -format 2.操作hadoop文件系统:hadoop fs -ls / 3.设置ubuntu默认以命令行方式启动 sudo gedit /et ...
- Linux常用指令全集
Linux简介及Ubuntu安装 常见指令 系统管理命令 打包压缩相关命令 关机/重启机器 Linux管道 Linux软件包管理 vim使用 用户及用户组管理 文件权限管理 大牛笔记-www.weix ...
- linux常用指令
整理下来的linux常用指令 mount [-t 文件系统] 设备文件名 挂载点挂载命令,一般用于在挂载ISO,或者其他比如U盘等设备时使用,[-t iso9660]为固定格式,可写可不写,非必写项. ...
- 走进AngularJs(二) ng模板中常用指令的使用方式
通过使用模板,我们可以把model和controller中的数据组装起来呈现给浏览器,还可以通过数据绑定,实时更新视图,让我们的页面变成动态的.ng的模板真是让我爱不释手.学习ng道路还很漫长,从模板 ...
- mac 终端 常用指令
开始正式研究ios 应用开发,由于是从C开始学起,所以学习下常用的mac终端指令,方便后续常用操作. mac 终端 常用指令: 1.ls指令 用途:列出文件 常用参数 -w 以简洁的形式列出所有文件和 ...
- ImageMagick常用指令详解
Imagemagick常用指令 (ImageMagick--蓝天白云) (ImageMagick官网) (其他比较有价值的IM参考) (图片自动旋转的前端实现方案) convert 转换图像格式和大小 ...
- [AngularJS] 常用指令
常用指令 ng-hide指令,用于控制部分HTML元素可见(ng-hide="false")和不可见状态(ng-hide="true"),如下: <div ...
- iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )
一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源 作者是Linux之父:Linus Bened ...
- linux下svn常用指令
windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的 ...
随机推荐
- Git 使用vi或vim命令打开、关闭、保存文件
1.vi & vim 有两种工作模式: (1) 命令模式:接受.执行 vi & vim 操作命令的模式,打开文件后的默认模式: (2) 编辑模式:对打开的文件内容进行 增.删.改 操作 ...
- Scala函数特性
通常情况下,函数的參数是传值參数:即參数的值在它被传递给函数之前被确定.可是,假设我们须要编写一个接收參数不希望立即计算.直到调用函数内的表达式才进行真正的计算的函数. 对于这样的情况.Scala提供 ...
- 嵌入式文件系统构建工具 busybox / buildroot / openwrt
1.busybox busybox最轻量 1) 修改Makefile CROSS_COMPILE ?= /usr/local/gcc-linaro-arm-linux-gnueabihf/bin/ar ...
- 微信js-sdk使用
<?php $appid=""; $secret=""; class JSSDK { private $appId; private $appSecret ...
- facebook工具xhprof的安装与使用-分析php执行性能(转载)
下载源码包的网址 http://pecl.php.net/package/xhprof
- 在eclipse添加第一次添加Python项目时,提示: Project interpreter not specified
按图片操作,添加Python的路径,就能解决该问题
- ActiveMQ简单入门
一.创建一个简单的Hello World案例 首先需要导入activemq-all-5.14.5.jar包,写生产端: package com.ietree.mq.helloworld; import ...
- Way to tmux
1. tmux ls: 显示所有会话(OR: Ctrl-b s)2. tmux new -s session-name: 新建会话3. 可以简单地输入tmux a命令,这样可以接入第一个可用的会话:t ...
- XDU 1037 倍流畅序列(字符串匹配+贪心)
题目描述 对于一个0,1串s, 从左端开始读取它的0获得序列s0,从右端开始读取它的1获得s1,如果s0与s1同构,则称s为倍流畅序列.例如:011001是一个倍流畅序列, 因为:s0 = 0__00 ...
- Silly Java-Final 关键字
Final 关键字 adj. 最终的:最后的:决定性的:不可改变的 1.修饰变量 final variable 意味 [最后的变量,不可改变的变量即常量] Java中该关键字即代表常量 修饰基本类型的 ...