public class DoubleDimensionMergerV9 extends Object implements DimensionMergerV9<Double>
| Modifier and Type | Field and Description |
|---|---|
protected String |
dimensionName |
protected IndexSpec |
indexSpec |
| Constructor and Description |
|---|
DoubleDimensionMergerV9(String dimensionName,
IndexSpec indexSpec,
SegmentWriteOutMedium segmentWriteOutMedium) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canSkip()
Return true if this dimension's data does not need to be written to the segment.
|
Double |
convertSegmentRowValuesToMergedRowValues(Double 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(Double rowValues)
Process a key component from the merged sequence of rows and update the DimensionMerger's internal state.
|
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
public DoubleDimensionMergerV9(String dimensionName, IndexSpec indexSpec, SegmentWriteOutMedium segmentWriteOutMedium)
public void writeMergedValueMetadata(List<IndexableAdapter> adapters) throws IOException
DimensionMergerwriteMergedValueMetadata in interface DimensionMerger<Double>adapters - List of adapters to be merged.IOExceptionpublic Double convertSegmentRowValuesToMergedRowValues(Double segmentRow, int segmentIndexNumber)
DimensionMergerconvertSegmentRowValuesToMergedRowValues in interface DimensionMerger<Double>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(Double rowValues) throws IOException
DimensionMergerprocessMergedRow in interface DimensionMerger<Double>rowValues - The row values to be added.IOExceptionpublic void writeIndexes(List<IntBuffer> segmentRowNumConversions) throws IOException
DimensionMergerwriteIndexes in interface DimensionMerger<Double>segmentRowNumConversions - A list of row number conversion IntBuffer objects.IOExceptionpublic boolean canSkip()
DimensionMergercanSkip in interface DimensionMerger<Double>public ColumnDescriptor makeColumnDescriptor() throws IOException
DimensionMergerV9makeColumnDescriptor in interface DimensionMergerV9<Double>IOExceptionCopyright © 2011–2018. All rights reserved.