@InterfaceAudience.LimitedPrivate
@InterfaceStability.Evolving
public interface LedgerOffloader
| Modifier and Type | Interface and Description |
|---|---|
static interface |
LedgerOffloader.OffloadHandle
Used to store driver info, buffer entries, mark progress, etc.
|
static class |
LedgerOffloader.OffloadResult |
| Modifier and Type | Field and Description |
|---|---|
static String |
METADATA_SOFTWARE_GITSHA_KEY |
static String |
METADATA_SOFTWARE_VERSION_KEY |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Close the resources if necessary
|
CompletableFuture<Void> |
deleteOffloaded(long ledgerId,
UUID uid,
Map<String,String> offloadDriverMetadata)
Delete a ledger from long term storage.
|
default CompletableFuture<Void> |
deleteOffloaded(UUID uid,
Map<String,String> offloadDriverMetadata) |
default Map<String,String> |
getOffloadDriverMetadata()
Get offload driver metadata.
|
String |
getOffloadDriverName()
Get offload driver name.
|
OffloadPolicies |
getOffloadPolicies()
Get offload policies of this LedgerOffloader
|
CompletableFuture<Void> |
offload(org.apache.bookkeeper.client.api.ReadHandle ledger,
UUID uid,
Map<String,String> extraMetadata)
Offload the passed in ledger to longterm storage.
|
default CompletableFuture<org.apache.bookkeeper.client.api.ReadHandle> |
readOffloaded(long ledgerId,
MLDataFormats.OffloadContext ledgerContext,
Map<String,String> offloadDriverMetadata) |
CompletableFuture<org.apache.bookkeeper.client.api.ReadHandle> |
readOffloaded(long ledgerId,
UUID uid,
Map<String,String> offloadDriverMetadata)
Create a ReadHandle which can be used to read a ledger back from longterm
storage.
|
default CompletableFuture<LedgerOffloader.OffloadHandle> |
streamingOffload(ManagedLedger ml,
UUID uid,
long beginLedger,
long beginEntry,
Map<String,String> driverMetadata)
Begin offload the passed in ledgers to longterm storage, it will finish
when a segment reached it's size or time.
|
static final String METADATA_SOFTWARE_VERSION_KEY
static final String METADATA_SOFTWARE_GITSHA_KEY
String getOffloadDriverName()
default Map<String,String> getOffloadDriverMetadata()
The driver metadata will be recorded as part of the metadata of the original ledger.
CompletableFuture<Void> offload(org.apache.bookkeeper.client.api.ReadHandle ledger, UUID uid, Map<String,String> extraMetadata)
ledger - the ledger to offloaduid - unique id to identity this offload attemptextraMetadata - metadata to be stored with the offloaded ledger for informational
purposesdefault CompletableFuture<LedgerOffloader.OffloadHandle> streamingOffload(ManagedLedger ml, UUID uid, long beginLedger, long beginEntry, Map<String,String> driverMetadata)
CompletableFuture<org.apache.bookkeeper.client.api.ReadHandle> readOffloaded(long ledgerId, UUID uid, Map<String,String> offloadDriverMetadata)
ledgerId - the ID of the ledger to load from longterm storageuid - unique ID for previous successful offload attemptoffloadDriverMetadata - offload driver metadataCompletableFuture<Void> deleteOffloaded(long ledgerId, UUID uid, Map<String,String> offloadDriverMetadata)
ledgerId - the ID of the ledger to delete from longterm storageuid - unique ID for previous offload attemptoffloadDriverMetadata - offload driver metadatadefault CompletableFuture<org.apache.bookkeeper.client.api.ReadHandle> readOffloaded(long ledgerId, MLDataFormats.OffloadContext ledgerContext, Map<String,String> offloadDriverMetadata)
default CompletableFuture<Void> deleteOffloaded(UUID uid, Map<String,String> offloadDriverMetadata)
OffloadPolicies getOffloadPolicies()
void close()
Copyright © 2017–2021 Apache Software Foundation. All rights reserved.