hadoop的基本命令、java程序处理hd…


基本命令:
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();
      }        
    }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值