Hadoop入门(三)HDFS API

一、、HDFS 常用类

Configuration  配置

Path  路径

FileSystem  文件系统

Stream  流

IOUtils  IO工具

API文档

 

二、类解析

(1)Configuration 

配置文件加载顺序

设置/获取参数方法

(2)Path

Path 常用方法

(3)FileSystem

创建文件

打开文件

文件追加

从本地拷贝文件到HDFS

从HDFS拷贝文件到本地

创建目录

删除及重命名

获取文件或目录信息

设置文件或目录属性

(4)Stream

HDFS输入流

HDFS输出流

(5)IOUtils

IOUtils 构造方法

IOUtils 拷贝流方法

 

三、HDFS 依赖的jar包及Java Doc位置

 

四、例子

(1)创建HDFS文件(createNewFile)

Configuration config = new Configuration();
FileSystem hdfs = FileSystem.get(config);
Path path = new Path(fileName);
boolean isCreated = hdfs.createNewFile(path);

(2)从本地拷贝文件到HDFS(copyFromLocalFile)

Configuration config = new Configuration();
FileSystem hdfs = FileSystem.get(config);
Path srcPath = new Path(srcFile);
Path dstPath = new Path(dstFile);
hdfs.copyFromLocalFile(srcPath,dstPath)

(3)从HDFS读取文件(open)

Configuration config = new Configuration();
FileSystem hdfs = FileSystem.get(config);
Path path = new Path(dstFile);
FSDataInputStream inputStream = hdfs.open(path);
Text line = new Text()
LineReader liReader  = new LineReader(inputStream);while (liReader.readLine(line) > 0) {
System.out.println(line);
}
inputStream.close();

(4)追加方式写入HDFS文件(append)

Configuration config = new Configuration();
FileSystem hdfs = FileSystem.get(config);
Path path= new Path(dstFile);
FSDataOutputStream out = hdfs.append(path);
//在文件尾部,追加数据
out.close();

(5)列出目录下的所有文件(listStatus)

Configuration config = new Configuration();
FileSystem hdfs = FileSystem.get(config);
Path dir = new Path(dirName);
FileStatus[] fileStatus = hdfs.listStatus(new Path[]{dir});

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/323047.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在XUnit中用Moq怎样模拟EntityFramework Core下的DbSet

最近在做一个项目的单元测试时,遇到了些问题,解决后,觉得有必要记下来,并分享给需要的人,先简单说一下项目技术框架背景: asp.net core 2.0(for .net core)框架 用Entity Framework Core作ORM XUnit作单元…

解决idea中xml文件报红问题

报错截图: 解决方法: 复制爆红的约束链接file >>> settings >>> Languages & Frameworks >>> Schemas and DTDs右边框中找到 Ignored schemas and DTD3:点击加号添加约束,如下图应用即可!

Hadoop入门(四)HDFS编程

一、编程环境设置 编程使用到idea2018,maven (1)启动集群 在window上启动vmware软件的虚拟机hadoop01,hadoop02,hadoop03。 进入hadoop01虚拟机启动集群,执行命令 start-dfs.sh (2&#x…

ASP.NET Core 认证与授权[4]:JwtBearer认证

Bearer认证 HTTP提供了一套标准的身份验证框架:服务器可以用来针对客户端的请求发送质询(challenge),客户端根据质询提供身份验证凭证。质询与应答的工作流程如下:服务器端向客户端返回401(Unauthorized,未授权&#x…

隧道裂缝检测_2【C++PCL】

作者:迅卓科技 简介:本人从事过多项点云项目,并且负责的项目均已得到好评! 公众号:迅卓科技,一个可以让您可以学习点云的好地方 1.前言 我们团队注重每一个细节,确保代码的可读性、可维护性和可扩展性达到最高标准。我们严格遵循行业最佳实践,采用模块化和面向对象的设…

开源纯C#工控网关+组态软件(五)从网关到人机界面

一、 引子 之前都在讲网关,不少网友关注如何实现界面。想了解下位机变量变化,是怎样一步步触发人机界面动画的。 这个步步触发,实质上是变量组(Group)的批量数据变化(DataChange)事件&#xf…

P1315,jzoj3029-观光公交【费用流】

前言 你绝对想不到,我用费用流神仙构图做了一道 的题 正题 评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP1315 题目大意 有nnn个地方,iii到第i1i1i1的长度为did_idi​。 有mmm个人,从tit_iti​出发,从l…

Spring依赖注入和控制反转

文章目录1、依赖注入1.1、依赖注入和控制反转的概念1.2、依赖注入的实现方式1.3、控制反转的具体实现1.4、依赖注入的具体实现1.5、依赖注入和控制反转总结1、依赖注入 1.1、依赖注入和控制反转的概念 依赖注入(Dependency Injection, 简称DI)与控制反转(IoC)的含义相同&…

Hadoop入门(五)IO操作

一、HadoopIO操作意义 Hadoop自带一套用于I/O的原子性的操作 (不会被线程调度机制打断,一直到结束,中间不会有任何context switch) 特点 基于保障海量数据集的完整性和压缩性 Hadoop提供了一些用于开发分布式系统的API&#xff…

使用Identity Server 4建立Authorization Server (1)

预备知识: 学习Identity Server 4的预备知识 本文内容基本完全来自于Identity Server 4官方文档: https://identityserver4.readthedocs.io/ 官方文档很详细的. 使用OAuth可以更安全, 这里我们的authorization server和web api 以及网站将分别独立运行. 建立authorization ser…

Python和SQL Server 2017的力量

Python是SQL Server 2017的新功能。 它主要是为了允许在SQL Server中使用基于Python的机器学习,但是它可以与任何Python库或框架一起使用。为了提供可能的例子,Hitendra展示了如何安全地使用该功能来提供智能应用程序缓存,其中SQL Server可以…

Spring中的Bean配置、属性配置、装配内容详细叙述

文章目录1、Bean的配置1.1、配置方式2、Bean的实例化2.1、构造器实例化2.2、静态工厂方式实例化2.3、实例工厂方式实例化3、Bean的作用域3.1、作用域的种类4、Bean的生命周期5、Bean的装配方式5.1、基于XML的装配5.2、基于Annotation的装配5.3、自动装配1、Bean的配置 1.1、配…

Hadoop入门(六)Mapreduce

一、Mapreduce概述 MapReduce是一个编程模型,用以进行大数据量的计算 二、Hadoop MapReduce (1)MapReduce是什么 Hadoop MapReduce是一个软件框架,基于该框架能够容易地编写应用程序,这些应用程序能够运行在由上千个…

Ocelot API网关的实现剖析

在微软Tech Summit 2017 大会上和大家分享了一门课程《.NET Core 在腾讯财付通的企业级应用开发实践》,其中重点是基于ASP.NET Core打造可扩展的高性能企业级API网关,以开源的API网关Ocelot为基础结合自己的业务特性,当天课程只有40分钟&…

Hadoop入门(十二)Intellij IDEA远程向hadoop集群提交mapreduce作业

Intellij IDEA远程向hadoop集群提交mapreduce作业,需要依赖到hadoop的库,hadoop集群的配置信息,还有本地项目的jar包。 一、软件环境 (1)window本地安装hadoop软件 首先将集群上的hadoop环境下载到本地,…

Spring AOP知识点简介

文章目录1、什么是AOP1.1、AOP术语1.2、AOP框架2、动态代理2.1、JDK动态代理2.2、CGLIB动态代理3、基于代理类的AOP实现3.1、Spring的通知类型3.2、ProxyFactoryBean4、AspectJ开发4.1、基于XML的声明式AspectJ4.2、基于注解的声明式AspectJ1、什么是AOP 面向切面编程&#xf…

SQL2017 Azure SQL新功能:图形数据库

图形数据库是什么呢?如果从字面理解是进行图形处理的数据库,那么你就错了哈哈。 我们先来解释什么是图形数据库。 图形数据库是NoSQL数据库的一种类型,它应用图形理论存储实体之间的关系信息。最常见的例子,就是社会网络中人与人之…

Hadoop入门(十三)远程提交wordCout程序到hadoop集群

一、项目结构 用到的文件有WordCount.java、core-site.xml、mapreduce-site.xml、yarn-site.xml、log4j.properties、pom.xml 二、项目源码 (1)WordCount.java package com.mk.mapreduce;import org.apache.hadoop.conf.Configuration; import org.ap…

腾讯云短信服务使用记录与.NET Core C#代码分享

1、即使是相同的短信签名与短信正文模板,也需要针对“国内文本短信”与“海外文本短信”分别申请。开始不知道,以为只要申请一次,给国外手机发短信时给api传对应的国家码就行,后来才发现需要分别申请。 2、短信服务web api响应“手…

Hadoop入门(九)Mapreduce高级shuffle之Combiner

一、Combiner的出现 (1)为什么需要进行Map规约操 作 在上述过程中,我们看到至少两个性能瓶颈: (1)如果我们有10亿个数据,Mapper会生成10亿个键值对在网络间进行传输,但如果我们只…