成都创新互联网站制作重庆分公司

HDFS如何实现读写操作

这篇文章主要介绍了HDFS如何实现读写操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

成都创新互联主营维西网站建设的网络公司,主营网站建设方案,APP应用开发,维西h5小程序设计搭建,维西网站营销推广欢迎维西等地区企业咨询

  1. import java.io.OutputStream;

  2. import java.net.URI;

  3. import java.net.URL;

  4. import org.apache.commons.io.IOUtils;

  5. import org.apache.hadoop.conf.Configuration;

  6. import org.apache.hadoop.fs.FSDataInputStream;

  7. import org.apache.hadoop.fs.FileSystem;

  8. import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;

  9. import org.apache.hadoop.fs.Path;

  10. public class HdfsTest {

  11.     public static void main(String[] args) throws Exception {

  12.         write();

  13.     }

  14.     public static void read1(String url) throws Exception {

  15.         URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());

  16.         System.out.println(IOUtils.toString(new URL(url).openStream()));

  17.     }

  18.     

  19.     public static void read2(String url) throws Exception {

  20.         Configuration conf = new Configuration();

  21.         FileSystem fs = FileSystem.get(URI.create(url), conf);

  22.         FSDataInputStream is = fs.open(new Path(url));

  23.         System.out.println(IOUtils.toString(is));

  24.         is.close();

  25.         fs.close();

  26.     }

  27.     public static void write() throws Exception {

  28.         String hdfsFile = "hdfs://192.168.202.134:9000/test/text2.txt";

  29.         Configuration conf = new Configuration();

  30.         FileSystem fs = FileSystem.get(URI.create(hdfsFile), conf, "andy");

  31.         OutputStream out = fs.create(new Path(hdfsFile), true);

  32.         out.write("new file text2.txt".getBytes());

  33.         out.close();

  34.         fs.close();

  35.         read1(hdfsFile);

  36.         read2(hdfsFile);

  37.     }

  38. }

感谢你能够认真阅读完这篇文章,希望小编分享的“HDFS如何实现读写操作”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


文章题目:HDFS如何实现读写操作
分享路径:http://cxhlcq.com/article/jphped.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部