Package com.google.cloud.hadoop.fs.gcs
Class GoogleHadoopFS
java.lang.Object
org.apache.hadoop.fs.AbstractFileSystem
com.google.cloud.hadoop.fs.gcs.GoogleHadoopFS
- All Implemented Interfaces:
org.apache.hadoop.fs.PathCapabilities
public class GoogleHadoopFS
extends org.apache.hadoop.fs.AbstractFileSystem
GoogleHadoopFS provides a YARN compatible Abstract File System on top of Google Cloud Storage
(GCS).
It is implemented as a thin abstraction layer on top of GoogleHadoopFileSystem, but will soon be refactored to share a common base.
-
Field Summary
Fields inherited from class org.apache.hadoop.fs.AbstractFileSystem
statistics -
Constructor Summary
ConstructorsConstructorDescriptionGoogleHadoopFS(GoogleHadoopFileSystem ghfs, URI uri, org.apache.hadoop.conf.Configuration conf) GoogleHadoopFS(URI uri, org.apache.hadoop.conf.Configuration conf) -
Method Summary
Modifier and TypeMethodDescriptionvoidcheckPath(org.apache.hadoop.fs.Path path) Only accept valid AbstractFileSystem and GoogleHadoopFileSystem Paths.org.apache.hadoop.fs.FSDataOutputStreamcreateInternal(org.apache.hadoop.fs.Path file, EnumSet<org.apache.hadoop.fs.CreateFlag> flag, org.apache.hadoop.fs.permission.FsPermission absolutePermission, int bufferSize, short replication, long blockSize, org.apache.hadoop.util.Progressable progress, org.apache.hadoop.fs.Options.ChecksumOpt checksumOpt, boolean createParent) booleandelete(org.apache.hadoop.fs.Path f, boolean recursive) org.apache.hadoop.fs.BlockLocation[]getFileBlockLocations(org.apache.hadoop.fs.Path f, long start, long len) org.apache.hadoop.fs.FileChecksumgetFileChecksum(org.apache.hadoop.fs.Path f) org.apache.hadoop.fs.FileStatusgetFileStatus(org.apache.hadoop.fs.Path f) org.apache.hadoop.fs.FsStatusorg.apache.hadoop.fs.FsServerDefaultsgetUri()This is overridden to use GoogleHadoopFileSystem's URI, because AbstractFileSystem appends the default port to the authority.intbooleanisValidName(String src) Follow HDFS conventions except allow for ':' in paths.org.apache.hadoop.fs.FileStatus[]listStatus(org.apache.hadoop.fs.Path f) voidmkdir(org.apache.hadoop.fs.Path dir, org.apache.hadoop.fs.permission.FsPermission permission, boolean createParent) org.apache.hadoop.fs.FSDataInputStreamopen(org.apache.hadoop.fs.Path f, int bufferSize) voidrenameInternal(org.apache.hadoop.fs.Path src, org.apache.hadoop.fs.Path dst) voidvoidsetPermission(org.apache.hadoop.fs.Path f, org.apache.hadoop.fs.permission.FsPermission permission) booleansetReplication(org.apache.hadoop.fs.Path f, short replication) voidsetTimes(org.apache.hadoop.fs.Path f, long mtime, long atime) voidsetVerifyChecksum(boolean verifyChecksum) Methods inherited from class org.apache.hadoop.fs.AbstractFileSystem
access, checkScheme, clearStatistics, create, createFileSystem, createMultipartUploader, createSnapshot, createSymlink, deleteSnapshot, equals, get, getAclStatus, getAllStatistics, getAllStoragePolicies, getCanonicalServiceName, getDelegationTokens, getEnclosingRoot, getFileLinkStatus, getFsStatus, getHomeDirectory, getInitialWorkingDirectory, getLinkTarget, getServerDefaults, getStatistics, getStatistics, getStoragePolicy, getUriPath, getXAttr, getXAttrs, getXAttrs, hashCode, hasPathCapability, listCorruptFileBlocks, listLocatedStatus, listStatusIterator, listXAttrs, makeQualified, methodNotSupported, modifyAclEntries, msync, open, openFileWithOptions, printStatistics, removeAcl, removeAclEntries, removeDefaultAcl, removeXAttr, rename, renameInternal, renameSnapshot, resolvePath, satisfyStoragePolicy, setAcl, setStoragePolicy, setXAttr, setXAttr, supportsSymlinks, truncate, unsetStoragePolicy
-
Constructor Details
-
GoogleHadoopFS
public GoogleHadoopFS(URI uri, org.apache.hadoop.conf.Configuration conf) throws URISyntaxException, IOException - Throws:
URISyntaxExceptionIOException
-
GoogleHadoopFS
public GoogleHadoopFS(GoogleHadoopFileSystem ghfs, URI uri, org.apache.hadoop.conf.Configuration conf) throws URISyntaxException, IOException - Throws:
URISyntaxExceptionIOException
-
-
Method Details
-
createInternal
public org.apache.hadoop.fs.FSDataOutputStream createInternal(org.apache.hadoop.fs.Path file, EnumSet<org.apache.hadoop.fs.CreateFlag> flag, org.apache.hadoop.fs.permission.FsPermission absolutePermission, int bufferSize, short replication, long blockSize, org.apache.hadoop.util.Progressable progress, org.apache.hadoop.fs.Options.ChecksumOpt checksumOpt, boolean createParent) throws IOException - Specified by:
createInternalin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
getUriDefaultPort
public int getUriDefaultPort()- Specified by:
getUriDefaultPortin classorg.apache.hadoop.fs.AbstractFileSystem
-
getUri
This is overridden to use GoogleHadoopFileSystem's URI, because AbstractFileSystem appends the default port to the authority.- Overrides:
getUriin classorg.apache.hadoop.fs.AbstractFileSystem
-
isValidName
Follow HDFS conventions except allow for ':' in paths.- Overrides:
isValidNamein classorg.apache.hadoop.fs.AbstractFileSystem
-
checkPath
public void checkPath(org.apache.hadoop.fs.Path path) Only accept valid AbstractFileSystem and GoogleHadoopFileSystem Paths.- Overrides:
checkPathin classorg.apache.hadoop.fs.AbstractFileSystem
-
getServerDefaults
- Specified by:
getServerDefaultsin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
mkdir
public void mkdir(org.apache.hadoop.fs.Path dir, org.apache.hadoop.fs.permission.FsPermission permission, boolean createParent) throws IOException - Specified by:
mkdirin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
delete
- Specified by:
deletein classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
open
public org.apache.hadoop.fs.FSDataInputStream open(org.apache.hadoop.fs.Path f, int bufferSize) throws IOException - Specified by:
openin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
setReplication
- Specified by:
setReplicationin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
renameInternal
public void renameInternal(org.apache.hadoop.fs.Path src, org.apache.hadoop.fs.Path dst) throws IOException - Specified by:
renameInternalin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
setPermission
public void setPermission(org.apache.hadoop.fs.Path f, org.apache.hadoop.fs.permission.FsPermission permission) throws IOException - Specified by:
setPermissionin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
setOwner
public void setOwner(org.apache.hadoop.fs.Path f, String username, String groupname) throws IOException - Specified by:
setOwnerin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
setTimes
- Specified by:
setTimesin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
getFileChecksum
public org.apache.hadoop.fs.FileChecksum getFileChecksum(org.apache.hadoop.fs.Path f) throws IOException - Specified by:
getFileChecksumin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
getFileStatus
public org.apache.hadoop.fs.FileStatus getFileStatus(org.apache.hadoop.fs.Path f) throws IOException - Specified by:
getFileStatusin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
getFileBlockLocations
public org.apache.hadoop.fs.BlockLocation[] getFileBlockLocations(org.apache.hadoop.fs.Path f, long start, long len) throws IOException - Specified by:
getFileBlockLocationsin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
getFsStatus
- Specified by:
getFsStatusin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
listStatus
- Specified by:
listStatusin classorg.apache.hadoop.fs.AbstractFileSystem- Throws:
IOException
-
setVerifyChecksum
public void setVerifyChecksum(boolean verifyChecksum) - Specified by:
setVerifyChecksumin classorg.apache.hadoop.fs.AbstractFileSystem
-