Hadoop支持的多种文件系统URI格式

来源:互联网 发布:java log4j jar下载 编辑:程序博客网 时间:2024/06/05 17:04

org.apache.hadoop.fs.FileSystem

这个抽象类代表hadoop的一个文件系统,目前系统已经有很多个具体实现:

文件系统 URI前缀 hadoop的具体实现类

Local file fs.LocalFileSystem

HDFS hdfs hdfs.DistributedFileSystem

HFTP hftp hdfs.HftpFileSystem

HSFTP hsftp hdfs.HsftpFileSystem

HAR har fs.HarFileSystem

KFS kfs fs.kfs.KosmosFileSystem

FTP ftp fs.ftp.FTPFileSystem

S3 (native) s3n fs.s3native.NativeS3FileSystem

S3 (blockbased) s3 fs.s3.S3FileSystem

Hadoop提供了很多接口来访问这些文件系统,最常用的是通过URI前缀来访问正确的文件系统。比如:

hadoop fs -ls file:///…….

hadoop fs -ls hdfs:///…….

MapReduce使用的文件系统

虽然理论上MapReduce可以使用上面这些系统,但是如果我们处理海量数据的话还是要选用一个分布式文件系统hdfs或者kfs。

代码片段

private static FileSystem createFileSystem(URI uri, Configuration conf
) throws IOException {
Class