`
yehao0716
  • 浏览: 22714 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

hadoop学习笔记-java操作hdfs

阅读更多

使用Hadoop的java api 针对HDFS进行文件上传、创建、重命名、删除操作:

 

package hadoop.hdfs;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.net.URISyntaxException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;

/**
 * 使用FileSystem类
 * @author yehao
 *
 */
public class App2 {

	private final static String HDFS_PATH = "hdfs://hadoop:9000/hello";
	private final static String DIR_PATH="/d100";
	private final static String FILE_PATH = "/d100/f100";
	/**
	 * 
	 * @param args
	 * @throws URISyntaxException 
	 * @throws IOException 
	 */
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		final FileSystem fileSystem = FileSystem.get(new URI(HDFS_PATH), new Configuration());
		
		//创建文件夹
		makeDir(fileSystem);
		//上传文件
		uploadFile(fileSystem);
		//下载文件
		downFile(fileSystem);
		//删除文件夹
		deleteFile(fileSystem);
	}

	private static void deleteFile(final FileSystem fileSystem)
			throws IOException {
		fileSystem.delete(new Path(DIR_PATH), true);
	}

	private static void downFile(final FileSystem fileSystem)
			throws IOException {
		final FSDataInputStream in = fileSystem.open(new Path(FILE_PATH));
		IOUtils.copyBytes(in, System.out, 1024, true);
	}

	private static void makeDir(final FileSystem fileSystem) throws IOException {
		fileSystem.mkdirs(new Path(DIR_PATH));
	}
	
	private static void uploadFile(FileSystem fileSystem) throws Exception{
		
		final FSDataOutputStream out = fileSystem.create(new Path(FILE_PATH));
		final InputStream in = new FileInputStream("E:/test");
		IOUtils.copyBytes(in, out, 1024, true);
	}

}

 

分享到:
评论

相关推荐

    Hadoop-HDFS-Shell-学习资料及文档、Java代码

    内容概要: 架构、流程、机制、原理、环境、数据...HadoopHDFS-JavaRPC操作代码,含服务端和客户端代码; hadoop生态现状、介绍、部署; hadoop2.4.1伪分布式搭建; 分布式文件系统; 复安装过程详细步骤; hdfs笔记;

    Hadoop学习笔记

    这个“Hadoop学习笔记”涵盖了Hadoop生态系统中的核心组件,包括HDFS(Hadoop分布式文件系统)、HBase(一个分布式、列式存储的数据库)、Hive(数据仓库工具)以及Spark(一个快速、通用且可扩展的数据处理引擎)。...

    Hadoop学习文档笔记,基本原理 HDFS

    本文将深入探讨HDFS的基本原理和操作,以及如何通过Java API进行文件操作。 Hadoop分布式文件系统(HDFS)是Google文件系统(GFS)的一种实现,设计用于处理海量数据。HDFS的核心特点是分布式存储,它将大文件分割...

    最新Hadoop学习笔记

    **Hadoop学习笔记详解** Hadoop是一个开源的分布式计算框架,由Apache基金会开发,主要用于处理和存储海量数据。它的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce,两者构成了大数据处理的基础...

    HADOOP学习笔记

    【HADOOP学习笔记】 Hadoop是Apache基金会开发的一个开源分布式计算框架,是云计算领域的重要组成部分,尤其在大数据处理方面有着广泛的应用。本学习笔记将深入探讨Hadoop的核心组件、架构以及如何搭建云计算平台。...

    3.Hadoop学习笔记.pdf

    1. HDFS(Hadoop Distributed File System):这是一个高度容错的系统,设计用来运行在廉价的硬件上。HDFS具有高吞吐量的特点,适合于有大量数据的应用程序。HDFS将数据存储为一系列的块,这些块默认大小为128MB,...

    传智黑马赵星老师hadoop七天课程资料笔记-第七天(全)

    【标题】"传智黑马赵星老师hadoop七天课程资料笔记-第七天(全)" 涵盖了Hadoop技术栈的重要知识点,这是一份关于Hadoop学习的详尽资料,特别关注了课程的最后一天内容。在Hadoop的学习过程中,第七天通常会涉及到系统...

    传智黑马赵星老师hadoop七天课程资料笔记-第二天(全)

    标题和描述中提到的是“传智黑马赵星老师hadoop七天课程资料笔记-第二天(全)”,这表明这是一个关于Hadoop技术的深度学习资源,主要聚焦于赵星老师的Hadoop教学课程中的第二天内容。通常,这样的课程会涵盖Hadoop的...

    Hadoop-2.8.0-Day07-HA-Hive安装部署与HQL-课件与资料.zip

    本课程的资料可能包含PPT课件、笔记、示例脚本等,这些资源可以帮助你更好地理解和实践Hadoop HA环境下的Hive安装、配置和使用。通过深入学习和实践,你将能够掌握Hadoop集群的高可用性配置,以及如何高效地使用Hive...

    hadoop学习总结1-5

    学习Hadoop通常会涉及到本地环境的搭建,包括安装Java环境、下载Hadoop二进制包、配置环境变量、修改Hadoop配置文件如`core-site.xml`、`hdfs-site.xml`和`yarn-site.xml`等。 7. **Hadoop实战**: 在掌握了基本...

    传智黑马赵星老师hadoop七天课程资料笔记-第四天(全)

    在“传智黑马赵星老师hadoop七天课程资料笔记-第四天(全)”的学习中,我们深入探讨了Hadoop这一分布式计算框架的关键概念和技术。Hadoop是Apache软件基金会的一个开源项目,它设计用于处理和存储海量数据,通过...

    Hadoop学习笔记(一):HDFS分布式文件系统(从环境搭建到Java API)-附件资源

    Hadoop学习笔记(一):HDFS分布式文件系统(从环境搭建到Java API)-附件资源

    Hadoop笔记(word版).zip_Hadoop配置_大数据

    在大数据处理领域,Hadoop是一个不可或...通过深入学习Hadoop配置与操作,你可以更好地理解和利用这一强大的工具,应对不断增长的数据挑战。这份“Hadoop笔记(word版).doc”文档将是你探索Hadoop世界的重要参考资料。

    hadoopeclipse学习笔记

    本篇学习笔记主要介绍了如何在Eclipse中配置和编译Hadoop项目。 首先,我们需要创建一个新的Java项目来导入Hadoop的源代码。在Eclipse的Package Explorer视图中,通过右键选择“New” -> “Java Project”。在弹出...

    hadoop学习笔记(一、hadoop集群环境搭建).docx

    根据需求,修改Hadoop配置文件,如`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`等,以适应伪分布式环境。 ### 11. 格式化HDFS 首次启动Hadoop集群时,需要格式化NameNode: ```bash hadoop namenode -...

    hadoop学习笔记

    《Hadoop学习笔记》 Hadoop,作为大数据处理的核心框架,是开源社区的杰作,由Apache软件基金会维护。这份文档旨在深入解析Hadoop的基本概念、架构及其在大数据处理中的应用,帮助读者全面掌握这一重要技术。 一、...

Global site tag (gtag.js) - Google Analytics