hadoop的基本命令、java程序处理hd…
2017-05-15 15:14
615 查看
基本命令:
hadoop fs -命令 (这里命令一般和Linux中的命令一样)
※这里一定要在~/.bashrc中进行配置,不然不会生效,在配置文件中加上下面语句
export HADOOP_HOOM=/usr/local/hadoop (这要写自己hadoop的安装路径)
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
常用命令:
hadoop fs -mkdir /user/用户名 ——创建默认工作目录,用户名是你的用户名也可以用这个语句创建其他目录
hadoop fs -ls —— 查看
hadoop fs -lsr —— 递归查看
hadoop fs -put example.txt . —— 从本地复制到hdfs的默认工作目录,注意后面有个.
hadoop fs -get example.txt —— 从hdfs中取出example.txt
hadoop fs -cat example.txt —— 显示hdfs中example.txt数据
hadoop fs -help 命令 —— 了解该命令详细内容
hadoop fs —— 查看hadoop该版本全部命令
※这些命令基本都是对hdfs的操作
java编程处理hdfs文件
FileSystem类:与文件系统交互,调用factory方法
Configuration类:保留键值对
例:
hadoop fs -命令 (这里命令一般和Linux中的命令一样)
※这里一定要在~/.bashrc中进行配置,不然不会生效,在配置文件中加上下面语句
export HADOOP_HOOM=/usr/local/hadoop (这要写自己hadoop的安装路径)
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
常用命令:
hadoop fs -mkdir /user/用户名 ——创建默认工作目录,用户名是你的用户名也可以用这个语句创建其他目录
hadoop fs -ls —— 查看
hadoop fs -lsr —— 递归查看
hadoop fs -put example.txt . —— 从本地复制到hdfs的默认工作目录,注意后面有个.
hadoop fs -get example.txt —— 从hdfs中取出example.txt
hadoop fs -cat example.txt —— 显示hdfs中example.txt数据
hadoop fs -help 命令 —— 了解该命令详细内容
hadoop fs —— 查看hadoop该版本全部命令
※这些命令基本都是对hdfs的操作
java编程处理hdfs文件
FileSystem类:与文件系统交互,调用factory方法
Configuration类:保留键值对
例:
package org.apache.hadoop.examples; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FSDataOutputStream; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; public class PutMerge { publicstatic void main(String[] args) throws IOException{ Configuration conf = new Configuration(); FileSystemhdfs = FileSystem.get(conf); FileSystemlocal = FileSystem.getLocal(conf); PathinputDir = new Path(args[0]); //设置输入目录 PathhdfsFile = new Path(args[1]); //设置输出目录 try{ FileStatus[]inputFiles = local.listStatus(inputDir); //得到本地文件列表 FSDataOutputStream out = hdfs.create(hdfsFile); //生成hdfs输出流 for(int i=0;i System.out.println(inputFiles[i].getPath().getName()); FSDataInputStream in = local.open(inputFiles[i].getPath());//打开本地输入流 bytebuffer[] = new byte[256]; //java复制过程 intbytesRead=0; while((bytesRead = in.read(buffer))>0){ out.write(buffer, 0, bytesRead); } in.close(); } out.close(); }catch(IOException e){ e.printStackTrace(); } } }
相关文章推荐
- 处理 Java 程序中的内存漏洞(下)
- Java2实用教程(第二版)程序代码——第二十一章 Java网络的基本知识
- 打字练习程序 -- Java线程/事件处理的好资料
- 新手入门:写Java程序的三十个基本规则
- 新手入门:写Java程序的三十个基本规则
- 多线程Java程序中常见错误的巧处理
- C++--MFC的SDI程序的用户命令的处理顺序
- 处理Java程序中的内存漏洞
- 关于在Java程序当中创建对象等基本操作的性能测试
- C++--MFC的SDI程序的用户命令的处理顺序
- [开发技巧] Java调用可执行程序和批处理命令
- 处理Java程序中的内存漏洞
- 关于六种Java异常处理程序的陋习
- java执行命令或调用其他exe程序的代码范例
- Composite 合成模式可以让客户程序把单个基本对象和对象的合成用一种统一的方式进行处理
- 三段基本的java程序
- java小程序中鼠标事件的响应处理(包含右键、双击等)
- Java常用的一些批处理命令- -
- JAVA代码编写程序的基本规范
- C++--MFC的SDI程序的用户命令的处理顺序