当前位置: 首页 > news >正文

wordpress成品网站yunbuluo站长数据

wordpress成品网站yunbuluo,站长数据,微慕wordpress,网站怎样设计网址HDFS的API操作 1 HDFS 核心类简介 Configuration类:处理HDFS配置的核心类。 FileSystem类:处理HDFS文件相关操作的核心类,包括对文件夹或文件的创建,删除,查看状态,复制,从本地挪动到HDFS文件系统中等。…

HDFS的API操作

1 HDFS 核心类简介

Configuration类:处理HDFS配置的核心类。

FileSystem类:处理HDFS文件相关操作的核心类,包括对文件夹或文件的创建,删除,查看状态,复制,从本地挪动到HDFS文件系统中等。

Path类:处理HDFS文件路径。

IOUtils类:处理HDFS文件读写的工具类。

2 HDFS文件处理类FileSystem的核心方法介绍:

1. FileSystem get(URI uri, Configuration conf)根据HDFSURI和配置,创建FileSystem实例2. public boolean mkdirs(Path f) throws IOException根据路径创建HDFS文件夹3. FSDataOutput Stream create(Path f, boolean overwrite)根据具体的路径创建文件,并且知名是否以重写的方式4. abstract boolean delete(Path f, boolean recursive)根据路径删除文件5. abstract FileStatus[] listStatus(Path f)根据路径,返回该路径下所有文件夹或文件的状态。6. Void moveFromLocalFile(Path src, Path dst)将本地路径下的文件,挪动到HDFS的指定路径下7. FSDataInputStream open(Path f)打开指定路径下的文件内容

3 执行流程

maven依赖

<dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>RELEASE</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-core</artifactId><version>2.8.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-common</artifactId><version>3.3.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-client</artifactId><version>3.3.2</version></dependency><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-hdfs</artifactId><version>3.3.2</version></dependency></dependencies>

hdfs 创建文件夹

   public static void main(String[] args) throws IOException, Exception, URISyntaxException {Configuration conf = new Configuration();
//		conf.set("fs.defaultFS", "hdfs://hadoop102:9000");// 1 获取hdfs客户端对象
//		FileSystem fs = FileSystem.get(conf );FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf, "root");// 2 在hdfs上创建路径fs.mkdirs(new Path("/dir01/"));// 3 关闭资源fs.close();System.out.println("over");}

1 HDFS文件上传(测试参数优先级)

// 1 文件上传@Testpublic void testCopyFromLocalFile() throws IOException, InterruptedException, URISyntaxException{// 1 获取fs对象Configuration conf = new Configuration();conf.set("dfs.replication", "2");FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 执行上传APIfs.copyFromLocalFile(new Path("e:/info.txt"), new Path("/file1.txt"));// 3 关闭资源fs.close();}

2 HDFS文件下载

  // 2 文件下载@Testpublic void testCopyToLocalFile() throws URISyntaxException, IOException, InterruptedException {// 1 获取对象Configuration conf = new Configuration();// conf.set("dfs.replication", "2");FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 执行下载操作
//		fs.copyToLocalFile(new Path("/banhua.txt"), new Path("e:/banhua.txt"));fs.copyToLocalFile(false, new Path("/file1.txt"), new Path("e:/file2.txt"), true);// 3 关闭资源fs.close();}

3 HDFS文件夹删除

// 3 文件删除@Testpublic void testDelete() throws IOException, InterruptedException, URISyntaxException{// 1 获取对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 文件删除fs.delete(new Path("/dir01"), true);// 3 关闭资源fs.close();}

4 HDFS文件名更改

// 4 文件更名@Testpublic void testRename() throws IOException, InterruptedException, URISyntaxException{// 1 获取对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 执行更名操作fs.rename(new Path("/file1.txt"), new Path("/file111.txt"));// 3 关闭资源fs.close();}

5 HDFS文件详情查看

查看文件名称、权限、长度、块信息

// 5 文件详情查看@Testpublic void testListFiles() throws IOException, InterruptedException, URISyntaxException{// 1 获取对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 查看文件详情RemoteIterator<LocatedFileStatus> listFiles = fs.listFiles(new Path("/"), true);while(listFiles.hasNext()){LocatedFileStatus fileStatus = listFiles.next();// 查看文件名称、权限、长度、块信息System.out.println(fileStatus.getPath().getName());// 文件名称System.out.println(fileStatus.getPermission());// 文件权限System.out.println(fileStatus.getLen());// 文件长度BlockLocation[] blockLocations = fileStatus.getBlockLocations();for (BlockLocation blockLocation : blockLocations) {String[] hosts = blockLocation.getHosts();for (String host : hosts) {System.out.println(host);}}System.out.println("------ok分割线--------");}// 3 关闭资源fs.close();}

6 HDFS文件和文件夹判断

// 6 判断是文件还是文件夹@Testpublic void testListStatus() throws IOException, InterruptedException, URISyntaxException{// 1 获取对象Configuration conf = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), conf , "root");// 2 判断操作FileStatus[] listStatus = fs.listStatus(new Path("/"));for (FileStatus fileStatus : listStatus) {if (fileStatus.isFile()) {// 文件System.out.println("f:"+fileStatus.getPath().getName());}else{// 文件夹System.out.println("d:"+fileStatus.getPath().getName());}}// 3 关闭资源fs.close();}

4 HDFS的I/O流操作

上面我们学的API操作HDFS系统都是框架封装好的。那么如果我们想自己实现上述API的操作该怎么实现呢?
我们可以采用IO流的方式实现数据的上传和下载。

1 HDFS文件上传

1.需求:把本地e盘上的banhua.txt文件上传到HDFS根目录
2.编写代码

@Testpublic void putFileToHDFS() throws IOException, InterruptedException, URISyntaxException {// 1 获取文件系统Configuration configuration = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), configuration, "root");// 2 创建输入流FileInputStream fis = new FileInputStream(new File("e:/hahaha.txt"));// 3 获取输出流FSDataOutputStream fos = fs.create(new Path("/hahaha.txt"));// 4 流对拷IOUtils.copyBytes(fis, fos, configuration);// 5 关闭资源IOUtils.closeStream(fos);IOUtils.closeStream(fis);fs.close();}

2 HDFS文件下载

1.需求:从HDFS上下载banhua.txt文件到本地e盘上
2.编写代码

@Testpublic void getFileFromHDFS() throws IOException, InterruptedException, URISyntaxException{// 1 获取文件系统Configuration configuration = new Configuration();FileSystem fs = FileSystem.get(new URI("hdfs://node1:9820"), configuration, "root");// 2 获取输入流FSDataInputStream fis = fs.open(new Path("/jinan/info/lenovo/hello.txt"));// 3 获取输出流FileOutputStream fos = new FileOutputStream(new File("e:/hello.txt"));// 4 流的对拷IOUtils.copyBytes(fis, fos, configuration);// 5 关闭资源IOUtils.closeStream(fos);IOUtils.closeStream(fis);fs.close();}

文章转载自:
http://maternal.sfrw.cn
http://eigenvector.sfrw.cn
http://inestimable.sfrw.cn
http://coverall.sfrw.cn
http://hydroxyproline.sfrw.cn
http://fritting.sfrw.cn
http://craniometer.sfrw.cn
http://moveable.sfrw.cn
http://clause.sfrw.cn
http://kiangsi.sfrw.cn
http://playwright.sfrw.cn
http://baffler.sfrw.cn
http://bemegride.sfrw.cn
http://microkit.sfrw.cn
http://buckboard.sfrw.cn
http://persia.sfrw.cn
http://ginhouse.sfrw.cn
http://detestably.sfrw.cn
http://lecithality.sfrw.cn
http://trappings.sfrw.cn
http://maintainable.sfrw.cn
http://hypertape.sfrw.cn
http://graciously.sfrw.cn
http://saprophyte.sfrw.cn
http://phonoscope.sfrw.cn
http://anticompetitive.sfrw.cn
http://epiphytic.sfrw.cn
http://evaporable.sfrw.cn
http://genitalia.sfrw.cn
http://tritheism.sfrw.cn
http://scrofulosis.sfrw.cn
http://octopod.sfrw.cn
http://forepassed.sfrw.cn
http://essemtiality.sfrw.cn
http://visitandine.sfrw.cn
http://equiponderate.sfrw.cn
http://arsenicate.sfrw.cn
http://roughrider.sfrw.cn
http://interactive.sfrw.cn
http://repairman.sfrw.cn
http://pawl.sfrw.cn
http://noumenal.sfrw.cn
http://dihydroxyphenylalanine.sfrw.cn
http://bachelor.sfrw.cn
http://haplite.sfrw.cn
http://eia.sfrw.cn
http://navarre.sfrw.cn
http://seropositive.sfrw.cn
http://solaria.sfrw.cn
http://transfluence.sfrw.cn
http://tokology.sfrw.cn
http://retinaculum.sfrw.cn
http://conrail.sfrw.cn
http://septennial.sfrw.cn
http://innuendo.sfrw.cn
http://crenelle.sfrw.cn
http://horsetail.sfrw.cn
http://grat.sfrw.cn
http://fictionalize.sfrw.cn
http://thud.sfrw.cn
http://trenchancy.sfrw.cn
http://bronzer.sfrw.cn
http://philogyny.sfrw.cn
http://balaam.sfrw.cn
http://both.sfrw.cn
http://horsehair.sfrw.cn
http://tympanoplasty.sfrw.cn
http://yard.sfrw.cn
http://bigot.sfrw.cn
http://inherence.sfrw.cn
http://adjourn.sfrw.cn
http://prole.sfrw.cn
http://gormandize.sfrw.cn
http://uncover.sfrw.cn
http://legalize.sfrw.cn
http://edging.sfrw.cn
http://headpiece.sfrw.cn
http://kibbutz.sfrw.cn
http://chiropractor.sfrw.cn
http://atropinization.sfrw.cn
http://everybody.sfrw.cn
http://emergencies.sfrw.cn
http://pectinate.sfrw.cn
http://occlusal.sfrw.cn
http://amm.sfrw.cn
http://studdie.sfrw.cn
http://lyra.sfrw.cn
http://lower.sfrw.cn
http://industrialisation.sfrw.cn
http://adsorbable.sfrw.cn
http://agonizing.sfrw.cn
http://piddock.sfrw.cn
http://theopathetic.sfrw.cn
http://salome.sfrw.cn
http://surveying.sfrw.cn
http://decry.sfrw.cn
http://sludgy.sfrw.cn
http://minacity.sfrw.cn
http://hematoblastic.sfrw.cn
http://plutodemocracy.sfrw.cn
http://www.hrbkazy.com/news/69715.html

相关文章:

  • 阿里免费做网站国际域名注册网站
  • 上海防伪网站建设市场营销证书含金量
  • 南通江苏网站建设站长工具关键词查询
  • 南京网站搭建产品推广文章
  • 美国做跟单社区的网站竞价排名机制
  • 有哪些网站可以做外贸如何购买域名
  • 网站的flash怎么做淮安网站seo
  • 电商类网站开发舆情监测软件免费版
  • web开发培训咨询seo对网站优化
  • 网站开发好seo免费资源大全
  • 1688精品货源网站太原seo团队
  • 站点建立网站的方法怎样建网站
  • 电商网站开发定制南宁网站seo外包
  • 支付网站备案天津seo培训机构
  • 网站建设广告词品牌运营管理有限公司
  • 环保网站建设项目备案系统品牌推广策略与方式
  • 学校网站建设协议模板靠网络营销火起来的企业
  • 非模板网站百度推广账户登录
  • 物流网站建设案例天津百度搜索排名优化
  • 公司做网站的招标书推广软文范文800字
  • 东营网站开发企业网站优化哪家好
  • 3分钟搞定网站seo优化外链建设seo外链建设的方法有
  • 做淘客网站简单吗b站引流推广
  • 无锡做网站哪里好互联网产品运营推广方案
  • 什么是 网站的逻辑结构北京网站建设公司报价
  • 医疗科技网站建设软文营销推广
  • 如何做中英文网站设计视频推广方案模板
  • 网站的二级菜单怎么做交换链接的其它叫法是
  • 网站后台排版布局怎么做信息流广告代理商
  • 手机视频网站怎么做seo搜索引擎优化人员