public class LongDimensionMergerV9 extends Object implements DimensionMergerV9<Long>
| Modifier and Type | Field and Description | 
|---|---|
protected String | 
dimensionName  | 
protected IndexSpec | 
indexSpec  | 
protected LongColumnSerializer | 
serializer  | 
| Modifier and Type | Method and Description | 
|---|---|
boolean | 
canSkip()
Return true if this dimension's data does not need to be written to the segment. 
 | 
Long | 
convertSegmentRowValuesToMergedRowValues(Long segmentRow,
                                        int segmentIndexNumber)
Convert a row's key component with per-segment encoding to its equivalent representation
 in the merged set of rows. 
 | 
ColumnDescriptor | 
makeColumnDescriptor()
Return a ColumnDescriptor containing ColumnPartSerde objects appropriate for
 this DimensionMerger's value metadata, sequence of row values, and index structures. 
 | 
void | 
processMergedRow(Long rowValues)
Process a key component from the merged sequence of rows and update the DimensionMerger's internal state. 
 | 
protected void | 
setupEncodedValueWriter(SegmentWriteOutMedium segmentWriteOutMedium)  | 
void | 
writeIndexes(List<IntBuffer> segmentRowNumConversions)
Internally construct any index structures relevant to this DimensionMerger. 
 | 
void | 
writeMergedValueMetadata(List<IndexableAdapter> adapters)
Given a list of segment adapters:
 - Read any value metadata (e.g., dictionary encoding information) from the adapters
 - Merge this value metadata and update the internal state of the implementing class. 
 | 
protected String dimensionName
protected final IndexSpec indexSpec
protected LongColumnSerializer serializer
protected void setupEncodedValueWriter(SegmentWriteOutMedium segmentWriteOutMedium) throws IOException
IOExceptionpublic void writeMergedValueMetadata(List<IndexableAdapter> adapters) throws IOException
DimensionMergerwriteMergedValueMetadata in interface DimensionMerger<Long>adapters - List of adapters to be merged.IOExceptionpublic Long convertSegmentRowValuesToMergedRowValues(Long segmentRow, int segmentIndexNumber)
DimensionMergerconvertSegmentRowValuesToMergedRowValues in interface DimensionMerger<Long>segmentRow - A row's key component for this dimension. The encoding of the key component's
                   values will be converted from per-segment encodings to the combined encodings from
                   the merged sequence of rows.segmentIndexNumber - Integer indicating which segment the row originated from.public void processMergedRow(Long rowValues) throws IOException
DimensionMergerprocessMergedRow in interface DimensionMerger<Long>rowValues - The row values to be added.IOExceptionpublic void writeIndexes(List<IntBuffer> segmentRowNumConversions) throws IOException
DimensionMergerwriteIndexes in interface DimensionMerger<Long>segmentRowNumConversions - A list of row number conversion IntBuffer objects.IOExceptionpublic boolean canSkip()
DimensionMergercanSkip in interface DimensionMerger<Long>public ColumnDescriptor makeColumnDescriptor() throws IOException
DimensionMergerV9makeColumnDescriptor in interface DimensionMergerV9<Long>IOExceptionCopyright © 2011–2018. All rights reserved.