@InterfaceAudience.Public @InterfaceStability.Stable public class NativeS3FileSystem extends FileSystem
FileSystem for reading and writing files stored on
Amazon S3.
This implementation stores files on S3 in their native form so they can be
read by other S3 tools.
A note about directories. S3 of course has no "native" support for them. The idiom we choose then is: for any directory created by this class, we use an empty object "#{dirpath}_$folder$" as a marker. Further, to interoperate with other S3 tools, we also accept the following:
| 修飾子とタイプ | フィールドと説明 |
|---|---|
static org.slf4j.Logger |
LOG |
DEFAULT_FS, FS_DEFAULT_NAME_KEY, SHUTDOWN_HOOK_PRIORITY, statistics, TRASH_PREFIX| コンストラクタと説明 |
|---|
NativeS3FileSystem() |
NativeS3FileSystem(org.apache.hadoop.fs.s3native.NativeFileSystemStore store) |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
FSDataOutputStream |
append(Path f,
int bufferSize,
Progressable progress)
This optional operation is not yet supported.
|
protected URI |
canonicalizeUri(URI rawUri)
Canonicalize the given URI.
|
protected void |
checkPath(Path path)
Check that a Path belongs to this FileSystem.
|
FSDataOutputStream |
create(Path f,
FsPermission permission,
boolean overwrite,
int bufferSize,
short replication,
long blockSize,
Progressable progress)
Create an FSDataOutputStream at the indicated Path with write-progress
reporting.
|
boolean |
delete(Path f,
boolean recurse)
Delete a file.
|
String |
getCanonicalServiceName()
Get a canonical service name for this file system.
|
long |
getDefaultBlockSize()
Return the number of bytes that large input files should be optimally
be split into to minimize i/o time.
|
FileStatus |
getFileStatus(Path f)
Return a file status object that represents the path.
|
String |
getScheme()
Return the protocol scheme for the FileSystem.
|
URI |
getUri()
Returns a URI whose scheme and authority identify this FileSystem.
|
Path |
getWorkingDirectory()
Get the current working directory for the given file system
|
void |
initialize(URI uri,
Configuration conf)
Called after a new FileSystem instance is constructed.
|
FileStatus[] |
listStatus(Path f)
If
f is a file, this method will make a single call to S3. |
boolean |
mkdirs(Path f,
FsPermission permission)
Make the given file and all non-existent parents into
directories.
|
FSDataInputStream |
open(Path f,
int bufferSize)
Opens an FSDataInputStream at the indicated Path.
|
boolean |
rename(Path src,
Path dst)
Renames Path src to Path dst.
|
void |
setWorkingDirectory(Path newDir)
Set the working directory to the given directory.
|
append, append, areSymlinksEnabled, cancelDeleteOnExit, clearStatistics, close, closeAll, closeAllForUGI, completeLocalOutput, concat, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyToLocalFile, copyToLocalFile, copyToLocalFile, create, create, create, create, create, create, create, create, create, create, create, create, createNewFile, createNonRecursive, createNonRecursive, createNonRecursive, createSnapshot, createSnapshot, createSymlink, delete, deleteOnExit, deleteSnapshot, enableSymlinks, exists, fixRelativePart, get, get, get, getAclStatus, getAllStatistics, getAllStoragePolicies, getBlockSize, getCanonicalUri, getContentSummary, getDefaultBlockSize, getDefaultPort, getDefaultReplication, getDefaultReplication, getDefaultUri, getFileBlockLocations, getFileBlockLocations, getFileChecksum, getFileChecksum, getFileLinkStatus, getFileSystemClass, getFSofPath, getGlobalStorageStatistics, getHomeDirectory, getInitialWorkingDirectory, getLength, getLinkTarget, getLocal, getName, getNamed, getQuotaUsage, getReplication, getServerDefaults, getServerDefaults, getStatistics, getStatistics, getStatus, getStatus, getStoragePolicy, getStorageStatistics, getTrashRoot, getTrashRoots, getUsed, getUsed, getXAttr, getXAttrs, getXAttrs, globStatus, globStatus, isDirectory, isFile, listCorruptFileBlocks, listFiles, listLocatedStatus, listLocatedStatus, listStatus, listStatus, listStatus, listStatusIterator, listXAttrs, makeQualified, mkdirs, mkdirs, modifyAclEntries, moveFromLocalFile, moveFromLocalFile, moveToLocalFile, newInstance, newInstance, newInstance, newInstanceLocal, open, primitiveCreate, primitiveMkdir, primitiveMkdir, printStatistics, processDeleteOnExit, removeAcl, removeAclEntries, removeDefaultAcl, removeXAttr, rename, renameSnapshot, resolveLink, resolvePath, setAcl, setDefaultUri, setDefaultUri, setOwner, setPermission, setReplication, setStoragePolicy, setTimes, setVerifyChecksum, setWriteChecksum, setXAttr, setXAttr, startLocalOutput, supportsSymlinks, truncate, unsetStoragePolicygetConf, setConfpublic static final org.slf4j.Logger LOG
public NativeS3FileSystem()
public NativeS3FileSystem(org.apache.hadoop.fs.s3native.NativeFileSystemStore store)
public String getScheme()
getScheme クラス内 FileSystems3npublic void initialize(URI uri, Configuration conf) throws IOException
FileSysteminitialize クラス内 FileSystemuri - a uri whose authority section names the host, port, etc.
for this FileSystemconf - the configurationIOExceptionprotected void checkPath(Path path)
checkPath クラス内 FileSystempath - to checkIllegalArgumentException - if there is an FS mismatchprotected URI canonicalizeUri(URI rawUri)
FileSystemcanonicalizeUri クラス内 FileSystemNetUtils.getCanonicalUri(URI, int)public FSDataOutputStream append(Path f, int bufferSize, Progressable progress) throws IOException
append クラス内 FileSystemf - the existing file to be appended.bufferSize - the size of the buffer to be used.progress - for reporting progress if it is not null.IOExceptionpublic FSDataOutputStream create(Path f, FsPermission permission, boolean overwrite, int bufferSize, short replication, long blockSize, Progressable progress) throws IOException
FileSystemcreate クラス内 FileSystemf - the file name to openpermission - file permissionoverwrite - if a file with this name already exists, then if true,
the file will be overwritten, and if false an error will be thrown.bufferSize - the size of the buffer to be used.replication - required block replication for the file.blockSize - block sizeprogress - the progress reporterIOExceptionFileSystem.setPermission(Path, FsPermission)public boolean delete(Path f, boolean recurse) throws IOException
FileSystemdelete クラス内 FileSystemf - the path to delete.recurse - if path is a directory and set to
true, the directory is deleted else throws an exception. In
case of a file the recursive can be set to either true or false.IOExceptionpublic FileStatus getFileStatus(Path f) throws IOException
FileSystemgetFileStatus クラス内 FileSystemf - The path we want information fromFileNotFoundException - when the path does not exist;
IOException see specific implementationIOExceptionpublic URI getUri()
FileSystemgetUri クラス内 FileSystempublic FileStatus[] listStatus(Path f) throws IOException
If f is a file, this method will make a single call to S3.
If f is a directory, this method will make a maximum of
(n / 1000) + 2 calls to S3, where n is the total number of
files and directories contained directly in f.
listStatus クラス内 FileSystemf - given pathFileNotFoundException - when the path does not exist;
IOException see specific implementationIOExceptionpublic boolean mkdirs(Path f, FsPermission permission) throws IOException
FileSystemmkdirs クラス内 FileSystemf - path to createpermission - to apply to fIOExceptionpublic FSDataInputStream open(Path f, int bufferSize) throws IOException
FileSystemopen クラス内 FileSystemf - the file name to openbufferSize - the size of the buffer to be used.IOExceptionpublic boolean rename(Path src, Path dst) throws IOException
FileSystemrename クラス内 FileSystemsrc - path to be renameddst - new path after renameIOException - on failurepublic long getDefaultBlockSize()
FileSystemgetDefaultBlockSize クラス内 FileSystempublic void setWorkingDirectory(Path newDir)
setWorkingDirectory クラス内 FileSystemnewDir - Path of new working directorypublic Path getWorkingDirectory()
FileSystemgetWorkingDirectory クラス内 FileSystempublic String getCanonicalServiceName()
FileSystemSecurityUtil.buildDTServiceName(URI, int)Copyright © 2016 Apache Software Foundation. All rights reserved.