星空网 > 软件开发 > 数据库

四、PutMerge合并文件程序

一、需求

      服务器的apache日志文件可能比较小,Hadoop更适合处理大文件,效率会更高,此时就需要合并分散的文件,开发一个PutMerge程序,用于合并本地文件后存入HDFS系统中

二、java代码

package org.apache.hadoop.studyhdfs;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;import org.apache.hadoop.io.IOUtils;public class PutMergeFile {  public static void main(String[] args) throws Exception {    //赋初始值    args =new String[]{"/opt/dataFile","hdfs://Hadoop-senior02.beifeng.com:8020/input/putMerge.};    //1.get conf    Configuration conf =new Configuration();    //2.get filesystem    FileSystem hdfs =FileSystem.get(conf);    FileSystem local =FileSystem.getLocal(conf);    //3.get path    Path localPath=new Path(args[0]);    Path hdfsPath=new Path(args[1]);    //4.inputFiles    FileStatus[] inputFiles =local.listStatus(localPath);    //out stream    FSDataOutputStream outputStream =hdfs.create(hdfsPath);    FSDataInputStream inputStream;    for(FileStatus inputFile:inputFiles){      System.out.println(inputFile.getPath().getName());      inputStream=local.open(inputFile.getPath());      IOUtils.copyBytes(inputStream, outputStream, 4096,false);      IOUtils.closeStream(inputStream);    }    IOUtils.closeStream(outputStream);  }    }

 三、结果查看

代码:$bin/hdfs dfs -text /input/putMerge.


原标题:四、PutMerge合并文件程序

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

tiktok upload:https://www.goluckyvip.com/tag/83211.html
tiktok卖号网站:https://www.goluckyvip.com/tag/83212.html
tiktok的海外国际版:https://www.goluckyvip.com/tag/83213.html
tiktok 卖课程:https://www.goluckyvip.com/tag/83214.html
tiktok 培训教程:https://www.goluckyvip.com/tag/83215.html
korean tiktok:https://www.goluckyvip.com/tag/83216.html
中国有哪些著名的酒店品牌。:https://www.vstour.cn/a/411242.html
石象湖景区门票-石象湖景区门票优惠政策:https://www.vstour.cn/a/411243.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流