I - Type of inputs for deprecated APIsO - Type of outputs for deprecated APIs@PublicAPIClass(maturity=EVOLVING) public abstract class HoodieIndex<I,O> extends Object implements Serializable
| Modifier and Type | Class and Description |
|---|---|
static class |
HoodieIndex.BucketIndexEngineType |
static class |
HoodieIndex.IndexType |
| Modifier and Type | Field and Description |
|---|---|
protected HoodieWriteConfig |
config |
| Modifier | Constructor and Description |
|---|---|
protected |
HoodieIndex(HoodieWriteConfig config) |
| Modifier and Type | Method and Description |
|---|---|
abstract boolean |
canIndexLogFiles()
This is used by storage to determine, if it is safe to send inserts, straight to the log, i.e.
|
void |
close()
Each index type should implement its own logic to release any resources acquired during the process.
|
abstract boolean |
isGlobal()
An index is `global` if
HoodieKey to fileID mapping, does not depend on the `partitionPath`. |
abstract boolean |
isImplicitWithStorage()
An index is "implicit" with respect to storage, if just writing new data to a file slice, updates the index as
well.
|
boolean |
requiresTagging(WriteOperationType operationType)
To indicate if an operation type requires location tagging before writing
|
abstract boolean |
rollbackCommit(String instantTime)
Rollback the effects of the commit made at instantTime.
|
abstract <R> HoodieData<HoodieRecord<R>> |
tagLocation(HoodieData<HoodieRecord<R>> records,
HoodieEngineContext context,
HoodieTable hoodieTable)
Looks up the index and tags each incoming record with a location of a file that contains
the row (if it is actually present).
|
I |
tagLocation(I records,
HoodieEngineContext context,
HoodieTable hoodieTable)
Deprecated.
|
abstract HoodieData<WriteStatus> |
updateLocation(HoodieData<WriteStatus> writeStatuses,
HoodieEngineContext context,
HoodieTable hoodieTable)
Extracts the location of written records, and updates the index.
|
HoodieData<WriteStatus> |
updateLocation(HoodieData<WriteStatus> writeStatuses,
HoodieEngineContext context,
HoodieTable hoodieTable,
String instant)
Extracts the location of written records, and updates the index.
|
O |
updateLocation(O writeStatuses,
HoodieEngineContext context,
HoodieTable hoodieTable)
Deprecated.
|
protected final HoodieWriteConfig config
protected HoodieIndex(HoodieWriteConfig config)
@Deprecated @PublicAPIMethod(maturity=DEPRECATED) public I tagLocation(I records, HoodieEngineContext context, HoodieTable hoodieTable) throws HoodieIndexException
HoodieIndexException@Deprecated @PublicAPIMethod(maturity=DEPRECATED) public O updateLocation(O writeStatuses, HoodieEngineContext context, HoodieTable hoodieTable) throws HoodieIndexException
HoodieIndexException@PublicAPIMethod(maturity=EVOLVING) public abstract <R> HoodieData<HoodieRecord<R>> tagLocation(HoodieData<HoodieRecord<R>> records, HoodieEngineContext context, HoodieTable hoodieTable) throws HoodieIndexException
HoodieIndexException@PublicAPIMethod(maturity=EVOLVING) public abstract HoodieData<WriteStatus> updateLocation(HoodieData<WriteStatus> writeStatuses, HoodieEngineContext context, HoodieTable hoodieTable) throws HoodieIndexException
HoodieIndexException@PublicAPIMethod(maturity=EVOLVING) public HoodieData<WriteStatus> updateLocation(HoodieData<WriteStatus> writeStatuses, HoodieEngineContext context, HoodieTable hoodieTable, String instant) throws HoodieIndexException
HoodieIndexException@PublicAPIMethod(maturity=STABLE) public abstract boolean rollbackCommit(String instantTime)
@PublicAPIMethod(maturity=STABLE) public abstract boolean isGlobal()
HoodieKey to fileID mapping, does not depend on the `partitionPath`. Such an
implementation is able to obtain the same mapping, for two hoodie keys with same `recordKey` but different
`partitionPath`@PublicAPIMethod(maturity=EVOLVING) public abstract boolean canIndexLogFiles()
FileSlice, with no data file.@PublicAPIMethod(maturity=STABLE) public abstract boolean isImplicitWithStorage()
@PublicAPIMethod(maturity=EVOLVING) public boolean requiresTagging(WriteOperationType operationType)
public void close()
Copyright © 2024 The Apache Software Foundation. All rights reserved.