EncodedType
- class of a single encoded valueEncodedKeyComponentType
- A row key contains a component for each dimension, this param specifies the
class of this dimension's key component. A column type that supports multivalue rows
should use an array type (Strings would use int[]). Column types without multivalue
row support should use single objects (e.g., Long, Float).ActualType
- class of a single actual valuepublic interface DimensionHandler<EncodedType extends Comparable<EncodedType>,EncodedKeyComponentType,ActualType extends Comparable<ActualType>>
Modifier and Type | Method and Description |
---|---|
int |
compareSortedEncodedKeyComponents(EncodedKeyComponentType lhs,
EncodedKeyComponentType rhs)
Given two key components representing sorted encoded row value(s), return the result of their comparison.
|
String |
getDimensionName()
Get the name of the column associated with this handler.
|
EncodedKeyComponentType |
getEncodedKeyComponentFromColumn(Closeable column,
int currRow)
Given a subcolumn from getSubColumn, and the index of the current row, retrieve a dimension's values
from a row as an EncodedKeyComponentType.
|
int |
getLengthOfEncodedKeyComponent(EncodedKeyComponentType dimVals)
Given an key component representing a single set of row value(s) for this dimension as an Object,
return the length of the key component after appropriate type-casting.
|
Closeable |
getSubColumn(Column column)
Given a Column, return a type-specific object that can be used to retrieve row values.
|
DimensionIndexer<EncodedType,EncodedKeyComponentType,ActualType> |
makeIndexer()
Creates a new DimensionIndexer, a per-dimension object responsible for processing ingested rows in-memory, used
by the IncrementalIndex.
|
DimensionMergerLegacy<EncodedKeyComponentType> |
makeLegacyMerger(IndexSpec indexSpec,
File outDir,
IOPeon ioPeon,
ColumnCapabilities capabilities,
ProgressIndicator progress)
Creates a new DimensionMergerLegacy, a per-dimension object responsible for merging indexes/row data across
segments and building the on-disk representation of a dimension.
|
DimensionMergerV9<EncodedKeyComponentType> |
makeMerger(IndexSpec indexSpec,
File outDir,
IOPeon ioPeon,
ColumnCapabilities capabilities,
ProgressIndicator progress)
Creates a new DimensionMergerV9, a per-dimension object responsible for merging indexes/row data across segments
and building the on-disk representation of a dimension.
|
void |
validateSortedEncodedKeyComponents(EncodedKeyComponentType lhs,
EncodedKeyComponentType rhs,
Indexed<ActualType> lhsEncodings,
Indexed<ActualType> rhsEncodings)
Given two key components representing sorted encoded row value(s), check that the two key components
have the same encoded values, or if the encoded values differ, that they translate into the same actual values,
using the mappings provided by lhsEncodings and rhsEncodings (if applicable).
|
String getDimensionName()
DimensionIndexer<EncodedType,EncodedKeyComponentType,ActualType> makeIndexer()
DimensionIndexer
interface for more information.DimensionMergerV9<EncodedKeyComponentType> makeMerger(IndexSpec indexSpec, File outDir, IOPeon ioPeon, ColumnCapabilities capabilities, ProgressIndicator progress) throws IOException
DimensionMergerV9
interface for more information.indexSpec
- Specification object for the index mergeoutDir
- Location to store files generated by the merging processioPeon
- ioPeon object passed in by IndexMerger, manages files created by the merging processcapabilities
- The ColumnCapabilities of the dimension represented by this DimensionHandlerprogress
- ProgressIndicator used by the merging processIOException
DimensionMergerLegacy<EncodedKeyComponentType> makeLegacyMerger(IndexSpec indexSpec, File outDir, IOPeon ioPeon, ColumnCapabilities capabilities, ProgressIndicator progress) throws IOException
DimensionMergerLegacy
interface for more information.indexSpec
- Specification object for the index mergeoutDir
- Location to store files generated by the merging processioPeon
- ioPeon object passed in by IndexMerger, manages files created by the merging processcapabilities
- The ColumnCapabilities of the dimension represented by this DimensionHandlerprogress
- ProgressIndicator used by the merging processIOException
int getLengthOfEncodedKeyComponent(EncodedKeyComponentType dimVals)
dimVals
- Values for this dimension from a rowint compareSortedEncodedKeyComponents(EncodedKeyComponentType lhs, EncodedKeyComponentType rhs)
lhs
- key component from a rowrhs
- key component from a rowvoid validateSortedEncodedKeyComponents(EncodedKeyComponentType lhs, EncodedKeyComponentType rhs, Indexed<ActualType> lhsEncodings, Indexed<ActualType> rhsEncodings) throws SegmentValidationException
lhs
- key component from a rowrhs
- key component from a rowlhsEncodings
- encoding lookup from lhs's segment, null if not applicable for this dimension's typerhsEncodings
- encoding lookup from rhs's segment, null if not applicable for this dimension's typeSegmentValidationException
Closeable getSubColumn(Column column)
column
- Column for this dimension from a QueryableIndexEncodedKeyComponentType getEncodedKeyComponentFromColumn(Closeable column, int currRow)
column
- Column for this dimension from a QueryableIndexcurrRow
- The index of the row to retrieveCopyright © 2011–2017. All rights reserved.