public class HdfsClientBlobStore extends ClientBlobStore
The HdfsBlobStore implementation takes care of the null Subjects. It assigns Subjects based on what hadoop says who the users are. These users must be configured accordingly in the SUPERVISOR_ADMINS for ACL validation and for the supervisors to download the blobs. This API is only used by the supervisor in order to talk directly to HDFS.
ClientBlobStore.WithBlobstore| Constructor and Description |
|---|
HdfsClientBlobStore() |
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
AtomicOutputStream |
createBlobToExtend(String key,
SettableBlobMeta meta)
Client facing API to create a blob.
|
void |
createStateInZookeeper(String key)
Creates state inside a zookeeper.
|
void |
deleteBlob(String key)
Client facing API to delete a blob.
|
InputStreamWithMeta |
getBlob(String key)
Client facing API to read a blob.
|
ReadableBlobMeta |
getBlobMeta(String key)
Client facing API to read the metadata information.
|
int |
getBlobReplication(String key)
Client facing API to read the replication of a blob.
|
long |
getRemoteBlobstoreUpdateTime()
Client facing API to get the last update time of existing blobs in a blobstore.
|
boolean |
isRemoteBlobExists(String blobKey)
Decide if the blob is deleted from cluster.
|
Iterator<String> |
listKeys()
List keys.
|
void |
prepare(Map<String,Object> conf)
Sets up the client API by parsing the configs.
|
void |
setBlobMetaToExtend(String key,
SettableBlobMeta meta)
Client facing API to set the metadata for a blob.
|
boolean |
setClient(Map<String,Object> conf,
NimbusClient client)
Client facing API to set a nimbus client.
|
void |
shutdown() |
AtomicOutputStream |
updateBlob(String key)
Client facing API to update a blob.
|
int |
updateBlobReplication(String key,
int replication)
Client facing API to update the replication of a blob.
|
createBlob, setBlobMeta, withConfiguredClientpublic void prepare(Map<String,Object> conf)
ClientBlobStoreprepare in class ClientBlobStoreconf - The storm conf containing the config detailspublic AtomicOutputStream createBlobToExtend(String key, SettableBlobMeta meta) throws AuthorizationException, KeyAlreadyExistsException
ClientBlobStorecreateBlobToExtend in class ClientBlobStorekey - blob key namemeta - contains ACL informationAuthorizationExceptionKeyAlreadyExistsExceptionpublic AtomicOutputStream updateBlob(String key) throws AuthorizationException, KeyNotFoundException
ClientBlobStoreupdateBlob in class ClientBlobStorekey - blob key nameAuthorizationExceptionKeyNotFoundExceptionpublic ReadableBlobMeta getBlobMeta(String key) throws AuthorizationException, KeyNotFoundException
ClientBlobStoregetBlobMeta in class ClientBlobStorekey - blob key nameAuthorizationExceptionKeyNotFoundExceptionpublic boolean isRemoteBlobExists(String blobKey) throws AuthorizationException
ClientBlobStoreisRemoteBlobExists in class ClientBlobStoreblobKey - blob keyAuthorizationExceptionpublic void setBlobMetaToExtend(String key, SettableBlobMeta meta) throws AuthorizationException, KeyNotFoundException
ClientBlobStoresetBlobMetaToExtend in class ClientBlobStorekey - blob key namemeta - contains ACL informationAuthorizationExceptionKeyNotFoundExceptionpublic void deleteBlob(String key) throws AuthorizationException, KeyNotFoundException
ClientBlobStoredeleteBlob in class ClientBlobStorekey - blob key nameAuthorizationExceptionKeyNotFoundExceptionpublic InputStreamWithMeta getBlob(String key) throws AuthorizationException, KeyNotFoundException
ClientBlobStoregetBlob in class ClientBlobStorekey - blob key nameAuthorizationExceptionKeyNotFoundExceptionpublic Iterator<String> listKeys()
ClientBlobStorelistKeys in class ClientBlobStorepublic int getBlobReplication(String key) throws AuthorizationException, KeyNotFoundException
ClientBlobStoregetBlobReplication in class ClientBlobStorekey - blob key nameAuthorizationExceptionKeyNotFoundExceptionpublic int updateBlobReplication(String key, int replication) throws AuthorizationException, KeyNotFoundException
ClientBlobStoreupdateBlobReplication in class ClientBlobStorekey - blob key namereplication - int indicates the replication factor a blob has to be setAuthorizationExceptionKeyNotFoundExceptionpublic boolean setClient(Map<String,Object> conf, NimbusClient client)
ClientBlobStoresetClient in class ClientBlobStoreconf - storm confclient - NimbusClientpublic void createStateInZookeeper(String key)
ClientBlobStorecreateStateInZookeeper in class ClientBlobStorepublic void shutdown()
public void close()
close in interface AutoCloseableclose in class ClientBlobStorepublic long getRemoteBlobstoreUpdateTime()
throws IOException
ClientBlobStoregetRemoteBlobstoreUpdateTime in class ClientBlobStoreIOExceptionCopyright © 2023 The Apache Software Foundation. All rights reserved.