public class WebHdfsFileSystem
extends org.apache.hadoop.fs.FileSystem
implements org.apache.hadoop.fs.DelegationTokenRenewer.Renewable, org.apache.hadoop.crypto.key.KeyProviderTokenIssuer
Modifier and Type | Class and Description |
---|---|
protected class |
WebHdfsFileSystem.ReadRunner
This class will allow retries to occur for both open and read operations.
|
class |
WebHdfsFileSystem.WebHdfsInputStream
This class is used for opening, reading, and seeking files while using the
WebHdfsFileSystem.
|
Modifier and Type | Field and Description |
---|---|
static String |
CANT_FALLBACK_TO_INSECURE_MSG |
protected org.apache.hadoop.hdfs.web.URLConnectionFactory |
connectionFactory
Default connection factory may be overridden in tests to use smaller
timeout values
|
static String |
EZ_HEADER |
static String |
FEFINFO_HEADER |
static org.slf4j.Logger |
LOG |
static String |
PATH_PREFIX
Http URI: http://namenode:port/{PATH_PREFIX}/path/to/file
|
protected org.apache.hadoop.io.Text |
tokenServiceName |
static int |
VERSION
WebHdfs version.
|
Constructor and Description |
---|
WebHdfsFileSystem() |
Modifier and Type | Method and Description |
---|---|
void |
access(org.apache.hadoop.fs.Path path,
org.apache.hadoop.fs.permission.FsAction mode) |
org.apache.hadoop.security.token.Token<?>[] |
addDelegationTokens(String renewer,
org.apache.hadoop.security.Credentials credentials) |
void |
allowSnapshot(org.apache.hadoop.fs.Path p) |
org.apache.hadoop.fs.FSDataOutputStream |
append(org.apache.hadoop.fs.Path f,
int bufferSize,
org.apache.hadoop.util.Progressable progress) |
void |
cancelDelegationToken(org.apache.hadoop.security.token.Token<?> token) |
protected URI |
canonicalizeUri(URI uri) |
void |
close() |
void |
concat(org.apache.hadoop.fs.Path trg,
org.apache.hadoop.fs.Path[] srcs) |
org.apache.hadoop.fs.FSDataOutputStream |
create(org.apache.hadoop.fs.Path f,
org.apache.hadoop.fs.permission.FsPermission permission,
boolean overwrite,
int bufferSize,
short replication,
long blockSize,
org.apache.hadoop.util.Progressable progress) |
org.apache.hadoop.fs.FSDataOutputStream |
createNonRecursive(org.apache.hadoop.fs.Path f,
org.apache.hadoop.fs.permission.FsPermission permission,
EnumSet<org.apache.hadoop.fs.CreateFlag> flag,
int bufferSize,
short replication,
long blockSize,
org.apache.hadoop.util.Progressable progress) |
org.apache.hadoop.fs.Path |
createSnapshot(org.apache.hadoop.fs.Path path,
String snapshotName) |
void |
createSymlink(org.apache.hadoop.fs.Path destination,
org.apache.hadoop.fs.Path f,
boolean createParent)
Create a symlink pointing to the destination path.
|
boolean |
delete(org.apache.hadoop.fs.Path f,
boolean recursive) |
void |
deleteSnapshot(org.apache.hadoop.fs.Path path,
String snapshotName) |
void |
disallowSnapshot(org.apache.hadoop.fs.Path p) |
org.apache.hadoop.fs.permission.AclStatus |
getAclStatus(org.apache.hadoop.fs.Path f) |
Collection<org.apache.hadoop.hdfs.protocol.BlockStoragePolicy> |
getAllStoragePolicies() |
String |
getCanonicalServiceName() |
URI |
getCanonicalUri() |
org.apache.hadoop.fs.ContentSummary |
getContentSummary(org.apache.hadoop.fs.Path p) |
long |
getDefaultBlockSize() |
int |
getDefaultPort() |
short |
getDefaultReplication() |
protected org.apache.hadoop.security.token.Token<?> |
getDelegationToken() |
org.apache.hadoop.security.token.Token<org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenIdentifier> |
getDelegationToken(String renewer) |
org.apache.hadoop.fs.BlockLocation[] |
getFileBlockLocations(org.apache.hadoop.fs.FileStatus status,
long offset,
long length) |
protected org.apache.hadoop.fs.BlockLocation[] |
getFileBlockLocations(GetOpParam.Op operation,
org.apache.hadoop.fs.Path path,
long offset,
long length)
Get file block locations implementation.
|
org.apache.hadoop.fs.BlockLocation[] |
getFileBlockLocations(org.apache.hadoop.fs.Path p,
long offset,
long length) |
org.apache.hadoop.fs.MD5MD5CRC32FileChecksum |
getFileChecksum(org.apache.hadoop.fs.Path p) |
org.apache.hadoop.fs.FileStatus |
getFileStatus(org.apache.hadoop.fs.Path f) |
org.apache.hadoop.fs.Path |
getHomeDirectory() |
static String |
getHomeDirectoryString(org.apache.hadoop.security.UserGroupInformation ugi)
Deprecated.
|
org.apache.hadoop.crypto.key.KeyProvider |
getKeyProvider() |
URI |
getKeyProviderUri() |
org.apache.hadoop.security.token.Token<?> |
getRenewToken() |
String |
getScheme()
Return the protocol scheme for the FileSystem.
|
org.apache.hadoop.fs.FsServerDefaults |
getServerDefaults() |
org.apache.hadoop.hdfs.protocol.BlockStoragePolicy |
getStoragePolicy(org.apache.hadoop.fs.Path src) |
protected org.apache.hadoop.io.Text |
getTokenKind() |
protected String |
getTransportScheme()
return the underlying transport protocol (http / https).
|
org.apache.hadoop.fs.Path |
getTrashRoot(org.apache.hadoop.fs.Path path) |
URI |
getUri() |
org.apache.hadoop.fs.Path |
getWorkingDirectory() |
byte[] |
getXAttr(org.apache.hadoop.fs.Path p,
String name) |
Map<String,byte[]> |
getXAttrs(org.apache.hadoop.fs.Path p) |
Map<String,byte[]> |
getXAttrs(org.apache.hadoop.fs.Path p,
List<String> names) |
void |
initialize(URI uri,
org.apache.hadoop.conf.Configuration conf) |
static boolean |
isEnabled(org.apache.hadoop.conf.Configuration conf)
Is WebHDFS enabled in conf?
|
org.apache.hadoop.fs.FileStatus[] |
listStatus(org.apache.hadoop.fs.Path f) |
org.apache.hadoop.fs.FileSystem.DirectoryEntries |
listStatusBatch(org.apache.hadoop.fs.Path f,
byte[] token) |
List<String> |
listXAttrs(org.apache.hadoop.fs.Path p) |
boolean |
mkdirs(org.apache.hadoop.fs.Path f,
org.apache.hadoop.fs.permission.FsPermission permission) |
void |
modifyAclEntries(org.apache.hadoop.fs.Path path,
List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) |
org.apache.hadoop.fs.FSDataInputStream |
open(org.apache.hadoop.fs.Path f,
int bufferSize) |
void |
removeAcl(org.apache.hadoop.fs.Path path) |
void |
removeAclEntries(org.apache.hadoop.fs.Path path,
List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) |
void |
removeDefaultAcl(org.apache.hadoop.fs.Path path) |
void |
removeXAttr(org.apache.hadoop.fs.Path p,
String name) |
boolean |
rename(org.apache.hadoop.fs.Path src,
org.apache.hadoop.fs.Path dst) |
void |
rename(org.apache.hadoop.fs.Path src,
org.apache.hadoop.fs.Path dst,
org.apache.hadoop.fs.Options.Rename... options) |
void |
renameSnapshot(org.apache.hadoop.fs.Path path,
String snapshotOldName,
String snapshotNewName) |
long |
renewDelegationToken(org.apache.hadoop.security.token.Token<?> token) |
void |
setAcl(org.apache.hadoop.fs.Path p,
List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) |
<T extends org.apache.hadoop.security.token.TokenIdentifier> |
setDelegationToken(org.apache.hadoop.security.token.Token<T> token) |
void |
setOwner(org.apache.hadoop.fs.Path p,
String owner,
String group) |
void |
setPermission(org.apache.hadoop.fs.Path p,
org.apache.hadoop.fs.permission.FsPermission permission) |
boolean |
setReplication(org.apache.hadoop.fs.Path p,
short replication) |
void |
setRetryPolicy(org.apache.hadoop.io.retry.RetryPolicy rp) |
void |
setStoragePolicy(org.apache.hadoop.fs.Path p,
String policyName) |
void |
setTimes(org.apache.hadoop.fs.Path p,
long mtime,
long atime) |
void |
setWorkingDirectory(org.apache.hadoop.fs.Path dir) |
void |
setXAttr(org.apache.hadoop.fs.Path p,
String name,
byte[] value,
EnumSet<org.apache.hadoop.fs.XAttrSetFlag> flag) |
boolean |
truncate(org.apache.hadoop.fs.Path f,
long newLength) |
void |
unsetStoragePolicy(org.apache.hadoop.fs.Path src) |
append, append, appendFile, areSymlinksEnabled, cancelDeleteOnExit, checkPath, clearStatistics, closeAll, closeAllForUGI, completeLocalOutput, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyToLocalFile, copyToLocalFile, copyToLocalFile, create, create, create, create, create, create, create, create, create, create, create, create, createFile, createNewFile, createNonRecursive, createNonRecursive, createSnapshot, delete, deleteOnExit, enableSymlinks, exists, fixRelativePart, get, get, get, getAllStatistics, getBlockSize, getDefaultBlockSize, getDefaultReplication, getDefaultUri, getFileChecksum, getFileLinkStatus, getFileSystemClass, getFSofPath, getGlobalStorageStatistics, getInitialWorkingDirectory, getLength, getLinkTarget, getLocal, getName, getNamed, getQuotaUsage, getReplication, getServerDefaults, getStatistics, getStatistics, getStatus, getStatus, getStorageStatistics, getTrashRoots, getUsed, getUsed, globStatus, globStatus, isDirectory, isFile, listCorruptFileBlocks, listFiles, listLocatedStatus, listLocatedStatus, listStatus, listStatus, listStatus, listStatusIterator, makeQualified, mkdirs, mkdirs, moveFromLocalFile, moveFromLocalFile, moveToLocalFile, newInstance, newInstance, newInstance, newInstanceLocal, open, primitiveCreate, primitiveMkdir, primitiveMkdir, printStatistics, processDeleteOnExit, resolveLink, resolvePath, setDefaultUri, setDefaultUri, setVerifyChecksum, setWriteChecksum, setXAttr, startLocalOutput, supportsSymlinks
public static final org.slf4j.Logger LOG
public static final int VERSION
public static final String PATH_PREFIX
public static final String EZ_HEADER
public static final String FEFINFO_HEADER
protected org.apache.hadoop.hdfs.web.URLConnectionFactory connectionFactory
public static final String CANT_FALLBACK_TO_INSECURE_MSG
protected org.apache.hadoop.io.Text tokenServiceName
public String getScheme()
getScheme
in class org.apache.hadoop.fs.FileSystem
webhdfs
protected String getTransportScheme()
protected org.apache.hadoop.io.Text getTokenKind()
public void initialize(URI uri, org.apache.hadoop.conf.Configuration conf) throws IOException
initialize
in class org.apache.hadoop.fs.FileSystem
IOException
public URI getCanonicalUri()
getCanonicalUri
in class org.apache.hadoop.fs.FileSystem
public static boolean isEnabled(org.apache.hadoop.conf.Configuration conf)
protected org.apache.hadoop.security.token.Token<?> getDelegationToken() throws IOException
IOException
public int getDefaultPort()
getDefaultPort
in class org.apache.hadoop.fs.FileSystem
public URI getUri()
getUri
in class org.apache.hadoop.fs.FileSystem
protected URI canonicalizeUri(URI uri)
canonicalizeUri
in class org.apache.hadoop.fs.FileSystem
@Deprecated public static String getHomeDirectoryString(org.apache.hadoop.security.UserGroupInformation ugi)
public org.apache.hadoop.fs.Path getHomeDirectory()
getHomeDirectory
in class org.apache.hadoop.fs.FileSystem
public org.apache.hadoop.fs.Path getWorkingDirectory()
getWorkingDirectory
in class org.apache.hadoop.fs.FileSystem
public void setWorkingDirectory(org.apache.hadoop.fs.Path dir)
setWorkingDirectory
in class org.apache.hadoop.fs.FileSystem
public org.apache.hadoop.fs.FileStatus getFileStatus(org.apache.hadoop.fs.Path f) throws IOException
getFileStatus
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.permission.AclStatus getAclStatus(org.apache.hadoop.fs.Path f) throws IOException
getAclStatus
in class org.apache.hadoop.fs.FileSystem
IOException
public boolean mkdirs(org.apache.hadoop.fs.Path f, org.apache.hadoop.fs.permission.FsPermission permission) throws IOException
mkdirs
in class org.apache.hadoop.fs.FileSystem
IOException
public void createSymlink(org.apache.hadoop.fs.Path destination, org.apache.hadoop.fs.Path f, boolean createParent) throws IOException
createSymlink
in class org.apache.hadoop.fs.FileSystem
IOException
public boolean rename(org.apache.hadoop.fs.Path src, org.apache.hadoop.fs.Path dst) throws IOException
rename
in class org.apache.hadoop.fs.FileSystem
IOException
public void rename(org.apache.hadoop.fs.Path src, org.apache.hadoop.fs.Path dst, org.apache.hadoop.fs.Options.Rename... options) throws IOException
rename
in class org.apache.hadoop.fs.FileSystem
IOException
public void setXAttr(org.apache.hadoop.fs.Path p, String name, byte[] value, EnumSet<org.apache.hadoop.fs.XAttrSetFlag> flag) throws IOException
setXAttr
in class org.apache.hadoop.fs.FileSystem
IOException
public byte[] getXAttr(org.apache.hadoop.fs.Path p, String name) throws IOException
getXAttr
in class org.apache.hadoop.fs.FileSystem
IOException
public Map<String,byte[]> getXAttrs(org.apache.hadoop.fs.Path p) throws IOException
getXAttrs
in class org.apache.hadoop.fs.FileSystem
IOException
public Map<String,byte[]> getXAttrs(org.apache.hadoop.fs.Path p, List<String> names) throws IOException
getXAttrs
in class org.apache.hadoop.fs.FileSystem
IOException
public List<String> listXAttrs(org.apache.hadoop.fs.Path p) throws IOException
listXAttrs
in class org.apache.hadoop.fs.FileSystem
IOException
public void removeXAttr(org.apache.hadoop.fs.Path p, String name) throws IOException
removeXAttr
in class org.apache.hadoop.fs.FileSystem
IOException
public void setOwner(org.apache.hadoop.fs.Path p, String owner, String group) throws IOException
setOwner
in class org.apache.hadoop.fs.FileSystem
IOException
public void setPermission(org.apache.hadoop.fs.Path p, org.apache.hadoop.fs.permission.FsPermission permission) throws IOException
setPermission
in class org.apache.hadoop.fs.FileSystem
IOException
public void modifyAclEntries(org.apache.hadoop.fs.Path path, List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) throws IOException
modifyAclEntries
in class org.apache.hadoop.fs.FileSystem
IOException
public void removeAclEntries(org.apache.hadoop.fs.Path path, List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) throws IOException
removeAclEntries
in class org.apache.hadoop.fs.FileSystem
IOException
public void removeDefaultAcl(org.apache.hadoop.fs.Path path) throws IOException
removeDefaultAcl
in class org.apache.hadoop.fs.FileSystem
IOException
public void removeAcl(org.apache.hadoop.fs.Path path) throws IOException
removeAcl
in class org.apache.hadoop.fs.FileSystem
IOException
public void setAcl(org.apache.hadoop.fs.Path p, List<org.apache.hadoop.fs.permission.AclEntry> aclSpec) throws IOException
setAcl
in class org.apache.hadoop.fs.FileSystem
IOException
public void allowSnapshot(org.apache.hadoop.fs.Path p) throws IOException
IOException
public org.apache.hadoop.fs.Path createSnapshot(org.apache.hadoop.fs.Path path, String snapshotName) throws IOException
createSnapshot
in class org.apache.hadoop.fs.FileSystem
IOException
public void disallowSnapshot(org.apache.hadoop.fs.Path p) throws IOException
IOException
public void deleteSnapshot(org.apache.hadoop.fs.Path path, String snapshotName) throws IOException
deleteSnapshot
in class org.apache.hadoop.fs.FileSystem
IOException
public void renameSnapshot(org.apache.hadoop.fs.Path path, String snapshotOldName, String snapshotNewName) throws IOException
renameSnapshot
in class org.apache.hadoop.fs.FileSystem
IOException
public boolean setReplication(org.apache.hadoop.fs.Path p, short replication) throws IOException
setReplication
in class org.apache.hadoop.fs.FileSystem
IOException
public void setTimes(org.apache.hadoop.fs.Path p, long mtime, long atime) throws IOException
setTimes
in class org.apache.hadoop.fs.FileSystem
IOException
public long getDefaultBlockSize()
getDefaultBlockSize
in class org.apache.hadoop.fs.FileSystem
public short getDefaultReplication()
getDefaultReplication
in class org.apache.hadoop.fs.FileSystem
public void concat(org.apache.hadoop.fs.Path trg, org.apache.hadoop.fs.Path[] srcs) throws IOException
concat
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FSDataOutputStream create(org.apache.hadoop.fs.Path f, org.apache.hadoop.fs.permission.FsPermission permission, boolean overwrite, int bufferSize, short replication, long blockSize, org.apache.hadoop.util.Progressable progress) throws IOException
create
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FSDataOutputStream createNonRecursive(org.apache.hadoop.fs.Path f, org.apache.hadoop.fs.permission.FsPermission permission, EnumSet<org.apache.hadoop.fs.CreateFlag> flag, int bufferSize, short replication, long blockSize, org.apache.hadoop.util.Progressable progress) throws IOException
createNonRecursive
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FSDataOutputStream append(org.apache.hadoop.fs.Path f, int bufferSize, org.apache.hadoop.util.Progressable progress) throws IOException
append
in class org.apache.hadoop.fs.FileSystem
IOException
public boolean truncate(org.apache.hadoop.fs.Path f, long newLength) throws IOException
truncate
in class org.apache.hadoop.fs.FileSystem
IOException
public boolean delete(org.apache.hadoop.fs.Path f, boolean recursive) throws IOException
delete
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FSDataInputStream open(org.apache.hadoop.fs.Path f, int bufferSize) throws IOException
open
in class org.apache.hadoop.fs.FileSystem
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FileStatus[] listStatus(org.apache.hadoop.fs.Path f) throws IOException
listStatus
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FileSystem.DirectoryEntries listStatusBatch(org.apache.hadoop.fs.Path f, byte[] token) throws FileNotFoundException, IOException
listStatusBatch
in class org.apache.hadoop.fs.FileSystem
FileNotFoundException
IOException
public org.apache.hadoop.security.token.Token<org.apache.hadoop.hdfs.security.token.delegation.DelegationTokenIdentifier> getDelegationToken(String renewer) throws IOException
getDelegationToken
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.security.token.Token<?> getRenewToken()
getRenewToken
in interface org.apache.hadoop.fs.DelegationTokenRenewer.Renewable
public <T extends org.apache.hadoop.security.token.TokenIdentifier> void setDelegationToken(org.apache.hadoop.security.token.Token<T> token)
setDelegationToken
in interface org.apache.hadoop.fs.DelegationTokenRenewer.Renewable
public long renewDelegationToken(org.apache.hadoop.security.token.Token<?> token) throws IOException
IOException
public void cancelDelegationToken(org.apache.hadoop.security.token.Token<?> token) throws IOException
IOException
public org.apache.hadoop.security.token.Token<?>[] addDelegationTokens(String renewer, org.apache.hadoop.security.Credentials credentials) throws IOException
addDelegationTokens
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.BlockLocation[] getFileBlockLocations(org.apache.hadoop.fs.FileStatus status, long offset, long length) throws IOException
getFileBlockLocations
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.BlockLocation[] getFileBlockLocations(org.apache.hadoop.fs.Path p, long offset, long length) throws IOException
getFileBlockLocations
in class org.apache.hadoop.fs.FileSystem
IOException
protected org.apache.hadoop.fs.BlockLocation[] getFileBlockLocations(GetOpParam.Op operation, org.apache.hadoop.fs.Path path, long offset, long length) throws IOException
path
- path to the fileoffset
- start offset in the given filelength
- of the file to get locations foroperation
- Valid operation is either
#GET_BLOCK_LOCATIONS
or
#GET_BLOCK_LOCATIONS
IOException
- Http connection error, decoding error or given
operation is not validpublic org.apache.hadoop.fs.Path getTrashRoot(org.apache.hadoop.fs.Path path)
getTrashRoot
in class org.apache.hadoop.fs.FileSystem
public void access(org.apache.hadoop.fs.Path path, org.apache.hadoop.fs.permission.FsAction mode) throws IOException
access
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.ContentSummary getContentSummary(org.apache.hadoop.fs.Path p) throws IOException
getContentSummary
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.MD5MD5CRC32FileChecksum getFileChecksum(org.apache.hadoop.fs.Path p) throws IOException
getFileChecksum
in class org.apache.hadoop.fs.FileSystem
IOException
public String getCanonicalServiceName()
getCanonicalServiceName
in class org.apache.hadoop.fs.FileSystem
public void setStoragePolicy(org.apache.hadoop.fs.Path p, String policyName) throws IOException
setStoragePolicy
in class org.apache.hadoop.fs.FileSystem
IOException
public Collection<org.apache.hadoop.hdfs.protocol.BlockStoragePolicy> getAllStoragePolicies() throws IOException
getAllStoragePolicies
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.hdfs.protocol.BlockStoragePolicy getStoragePolicy(org.apache.hadoop.fs.Path src) throws IOException
getStoragePolicy
in class org.apache.hadoop.fs.FileSystem
IOException
public void unsetStoragePolicy(org.apache.hadoop.fs.Path src) throws IOException
unsetStoragePolicy
in class org.apache.hadoop.fs.FileSystem
IOException
public org.apache.hadoop.fs.FsServerDefaults getServerDefaults() throws IOException
getServerDefaults
in class org.apache.hadoop.fs.FileSystem
IOException
public void setRetryPolicy(org.apache.hadoop.io.retry.RetryPolicy rp)
public URI getKeyProviderUri() throws IOException
getKeyProviderUri
in interface org.apache.hadoop.crypto.key.KeyProviderTokenIssuer
IOException
public org.apache.hadoop.crypto.key.KeyProvider getKeyProvider() throws IOException
getKeyProvider
in interface org.apache.hadoop.crypto.key.KeyProviderTokenIssuer
IOException
Copyright © 2018 Apache Software Foundation. All Rights Reserved.