public class HoodieMetadataMergedLogRecordReader extends HoodieMergedLogRecordScanner
HoodieMergedLogRecordScanner implementation which only merged records matching providing keys. This is
useful in limiting memory usage when only a small subset of updates records are to be read.| Modifier and Type | Class and Description |
|---|---|
static class |
HoodieMetadataMergedLogRecordReader.Builder
Builder used to build
HoodieMetadataMergedLogRecordScanner. |
AbstractHoodieLogRecordReader.KeySpecrecords, timerforceFullScan, logFilePaths, readerSchema| Modifier and Type | Method and Description |
|---|---|
protected HoodieAvroRecord<?> |
createHoodieRecord(org.apache.avro.generic.IndexedRecord rec,
HoodieTableConfig hoodieTableConfig,
String payloadClassFQN,
String preCombineField,
boolean withOperationField,
Option<Pair<String,String>> simpleKeyGenFields,
Option<String> partitionName)
Create @
HoodieRecord from the @IndexedRecord. |
protected String |
getKeyField() |
List<Pair<String,Option<HoodieRecord<HoodieMetadataPayload>>>> |
getRecordByKey(String key)
Retrieve a record given its key.
|
List<HoodieRecord<HoodieMetadataPayload>> |
getRecordsByKeyPrefixes(List<String> keyPrefixes) |
List<Pair<String,Option<HoodieRecord<HoodieMetadataPayload>>>> |
getRecordsByKeys(List<String> keys) |
static HoodieMetadataMergedLogRecordReader.Builder |
newBuilder()
Returns the builder for
HoodieMetadataMergedLogRecordScanner. |
close, getNumMergedRecordsInLog, getRecords, getTotalTimeTakenToReadAndMergeBlocks, iterator, performScan, processNextDeletedRecord, processNextRecordgetPartitionName, getPayloadClassFQN, getProgress, getTotalCorruptBlocks, getTotalLogBlocks, getTotalLogFiles, getTotalLogRecords, getTotalRollbacks, isWithOperationField, scan, scan, scanInternalclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorprotected HoodieAvroRecord<?> createHoodieRecord(org.apache.avro.generic.IndexedRecord rec, HoodieTableConfig hoodieTableConfig, String payloadClassFQN, String preCombineField, boolean withOperationField, Option<Pair<String,String>> simpleKeyGenFields, Option<String> partitionName)
AbstractHoodieLogRecordReaderHoodieRecord from the @IndexedRecord.createHoodieRecord in class AbstractHoodieLogRecordReaderrec - - IndexedRecord to create the HoodieRecord fromhoodieTableConfig - - Table configpayloadClassFQN - - Payload class fully qualified namepreCombineField - - PreCombine fieldwithOperationField - - Whether operation field is enabledsimpleKeyGenFields - - Key generator fields when populate meta fields is tuened offpartitionName - - Partition namepublic static HoodieMetadataMergedLogRecordReader.Builder newBuilder()
HoodieMetadataMergedLogRecordScanner.public List<Pair<String,Option<HoodieRecord<HoodieMetadataPayload>>>> getRecordByKey(String key)
key - Key of the record to retrieveHoodieRecord if key was found else Option.empty()public List<HoodieRecord<HoodieMetadataPayload>> getRecordsByKeyPrefixes(List<String> keyPrefixes)
public List<Pair<String,Option<HoodieRecord<HoodieMetadataPayload>>>> getRecordsByKeys(List<String> keys)
protected String getKeyField()
getKeyField in class AbstractHoodieLogRecordReaderCopyright © 2022 The Apache Software Foundation. All rights reserved.