1. 程式人生 > >Hadoop支援的多種檔案系統URI格式

Hadoop支援的多種檔案系統URI格式

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