存储文件:
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
public class AddFile {
public static void main(String[] args) throws Exception {
String localSrc = "E:\\test\\spring3_MVC.docx";
String dst = "hdfs://localhost:9000/home/hdfs/s3.docx";
InputStream in = new BufferedInputStream(new FileInputStream(localSrc));
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(dst), conf);
OutputStream out = fs.create(new Path(dst), true);
long l1 = System.currentTimeMillis();
IOUtils.copyBytes(in, out, 4096, true);
System.out.println("ms = " + (System.currentTimeMillis() - l1));
}
}
下载文件:
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
public class readFile{
public static void main(String[] args) throws Exception {
String uri = "hdfs://localhost:9000/home/hdfs/s3.docx";
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(uri), conf);
InputStream in = null;
OutputStream out = null;
try {
in = fs.open(new Path(uri));
out = new FileOutputStream("D:/s3.docx");
IOUtils.copyBytes(in, out, 4096, false);
} finally {
IOUtils.closeStream(in);
IOUtils.closeStream(out);
}
}
}
分享到:
相关推荐
接下来,了解`FileSystem`类是关键,它是Hadoop文件操作的核心。你可以通过以下方式获取一个`FileSystem`实例: ```java Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(conf); ``` ...
Hadoop 文件上传实验 本资源主要介绍了如何使用 HDFS 进行文件上传操作,同时了解如何使用 HDFS API 进行文件上传。实验内容包括使用命令行上传文件和使用 Java API 上传文件。 Hadoop 文件上传实验主要涉及到以下...
综上所述,BeeGFS作为Hadoop文件系统的主要优点在于它提供了一种性能更优的存储解决方案,可以解决HDFS在某些高要求环境下的局限性,例如在低延迟高吞吐量网络环境中,或者是在需要处理大规模并行IO操作的高性能计算...
5·访问Hadoop文件系统上的文件: 点击Hadoop按钮: 选择需要访问的文件, 在点击DownLoad按钮, 结果如下, 返回“DONE”说明下载成功, 这时Hadoop文件夹里将出现相应的文件。 四、 编程细节: 左边为OS-...
Hadoop 文件上传失败原因分析及解决方法 本文主要讨论了在 Java Web 程序中上传文件到 Hadoop HDFS 文件系统中失败的原因分析及解决方法。通过对问题的分析和解决,可以总结出以下知识点: 1. Hadoop 文件上传失败...
在提供的信息中,我们关注的是"Hadoop的dll文件",这是一个动态链接库(DLL)文件,通常在Windows操作系统中使用,用于存储可由多个程序共享的功能和资源。Hadoop本身是基于Java的,因此在Windows环境下运行Hadoop...
【标题】:“Hadoop文件”通常指的是在Hadoop生态系统中处理和存储的大数据文件。Hadoop是Apache软件基金会开发的一个开源框架,专为分布式存储和处理大规模数据集而设计。它允许用户在廉价硬件上构建大规模可扩展的...
本篇将深入探讨如何利用Hadoop的Java接口进行文件操作,实现对Hadoop服务的增、删、改、查等功能。 首先,我们要了解Hadoop的核心组件:HDFS(Hadoop Distributed File System)和MapReduce。HDFS是Hadoop的数据...
【基于Django的Hadoop文件管理系统】 在信息技术领域,Django和Hadoop是两个非常重要的技术组件,分别在Web开发和大数据处理方面发挥着关键作用。这个“基于Django的Hadoop文件管理系统”是一个结合了这两者优势的...
Hadoop豆瓣电影数据分析(Hadoop)操作源码
在Hadoop的分布式文件系统(HDFS)...通过以上对Hadoop文件读写、文件属性和目录操作的解析,我们可以理解HDFS如何高效、安全地处理大规模数据。在实际应用中,理解并优化这些操作,对于提升Hadoop集群的性能至关重要。
然而,通过一些额外的配置和库文件,我们可以在Windows上运行Hadoop。以下是一些关于在Windows上安装Hadoop库文件的关键知识点: 1. **Java开发工具**:Hadoop依赖于Java环境,因此首先需要安装Java Development ...
在Hadoop环境中,熟练掌握HDFS的基本操作至关重要,这包括了通过不同方式访问HDFS、管理文件和目录等任务。 HDFS提供了多种访问途径,包括Web界面、Shell命令行以及编程API。对于初学者和运维人员,通过Shell命令行...
本篇文章将详细讲解如何利用`FileSystem API`执行Hadoop文件的读写操作,带你一步步深入理解这一关键知识点。 首先,我们要了解`FileSystem API`的基本概念。它是一个抽象接口,用于与不同的文件系统(如HDFS、本地...
这个目录包含了Hadoop运行所需的各种命令行工具,如`hadoop`, `hdfs`, `yarn`, `mapred`等,它们都是可执行的脚本文件,用于启动、管理和操作Hadoop集群。 替换原有的"bin"目录是为了确保你使用的是Hadoop 2.8版本...
本文将深入探讨Hadoop HA(高可用性)集群的配置文件,包括`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`、`yarn-site.xml`以及`slaves`文件,这些都是确保Hadoop集群稳定运行的基础。 1. `core-site.xml`:...
这个文件是Hadoop与Windows操作系统交互的桥梁,使开发者能够在Windows环境下执行Hadoop相关的操作,如启动Hadoop服务、运行MapReduce任务等。 winutils.exe是Hadoop的Windows工具集,包含了诸如设置HDFS的HADOOP_...
本实验报告主要涵盖了两个核心部分:Linux操作系统的基本操作和Hadoop分布式文件系统的使用。 在Linux部分,实验旨在使学生熟悉一系列基础命令,这对于任何在Linux环境中工作的数据科学家都是必不可少的技能。例如...
标题中的"hadoop/bin/hadoop.dll"指出这是一款与Hadoop框架相关的动态链接库(DLL)文件,它位于Hadoop安装目录的"bin"子目录下。在Windows操作系统中,DLL文件是程序运行所必需的组件,它们包含了可执行文件在运行...
此外,还会讲解如何使用Hadoop自带的工具进行数据操作,如HDFS的文件上传、下载和管理。 "Hadoop和Hbase安装使用"深入介绍了Hadoop与HBase的集成。HBase是一个基于Hadoop的分布式数据库,提供实时读写和强一致性。...