public class LongDimensionIndexer extends Object implements DimensionIndexer<Long,Long,Long>
ARRAY, LIST
Constructor and Description |
---|
LongDimensionIndexer() |
Modifier and Type | Method and Description |
---|---|
boolean |
checkUnsortedEncodedKeyComponentsEqual(Long lhs,
Long rhs)
Check if two row value arrays from TimeAndDims keys are equal.
|
int |
compareUnsortedEncodedKeyComponents(Long lhs,
Long rhs)
Compares the row values for this DimensionIndexer's dimension from a TimeAndDims key.
|
Object |
convertUnsortedEncodedKeyComponentToActualArrayOrList(Long key,
boolean asList)
Given a row value array from a TimeAndDims key, as described in the documentation for
compareUnsortedEncodedKeyComponents(), convert the unsorted encoded values to a list or array of actual values.
|
Long |
convertUnsortedEncodedKeyComponentToSortedEncodedKeyComponent(Long key)
Given a row value array from a TimeAndDims key, as described in the documentation for
compareUnsortedEncodedKeyComponents(), convert the unsorted encoded values to an array of sorted encoded values
(i.e., sorted by their corresponding actual values)
|
void |
fillBitmapsFromUnsortedEncodedKeyComponent(Long key,
int rowNum,
MutableBitmap[] bitmapIndexes,
BitmapFactory factory)
Helper function for building bitmap indexes for integer-encoded dimensions.
|
int |
getCardinality()
Get the cardinality of this dimension's values.
|
Long |
getMaxValue()
Get the maximum dimension value seen by this indexer.
|
Long |
getMinValue()
Get the minimum dimension value seen by this indexer.
|
Indexed<Long> |
getSortedIndexedValues()
Returns an indexed structure of this dimension's sorted actual values.
|
int |
getUnsortedEncodedKeyComponentHashCode(Long key)
Given a row value array from a TimeAndDims key, generate a hashcode.
|
Long |
getUnsortedEncodedValueFromSorted(Long sortedIntermediateValue)
Given an encoded value that was ordered by associated actual value, return the equivalent
encoded value ordered by time of ingestion.
|
ColumnValueSelector<?> |
makeColumnValueSelector(TimeAndDimsHolder currEntry,
IncrementalIndex.DimensionDesc desc)
Return an object used to read values from this indexer's column.
|
DimensionSelector |
makeDimensionSelector(DimensionSpec spec,
TimeAndDimsHolder currEntry,
IncrementalIndex.DimensionDesc desc)
Return an object used to read values from this indexer's column as Strings.
|
Long |
processRowValsToUnsortedEncodedKeyComponent(Object dimValues,
boolean reportParseExceptions)
Given a single row value or list of row values (for multi-valued dimensions), update any internal data structures
with the ingested values and return the row values as an array to be used within a TimeAndDims key.
|
public Long processRowValsToUnsortedEncodedKeyComponent(Object dimValues, boolean reportParseExceptions)
DimensionIndexer
processRowValsToUnsortedEncodedKeyComponent
in interface DimensionIndexer<Long,Long,Long>
dimValues
- Single row val to processpublic Long getUnsortedEncodedValueFromSorted(Long sortedIntermediateValue)
DimensionIndexer
getUnsortedEncodedValueFromSorted
in interface DimensionIndexer<Long,Long,Long>
sortedIntermediateValue
- value to convertpublic Indexed<Long> getSortedIndexedValues()
DimensionIndexer
getSortedIndexedValues
in interface DimensionIndexer<Long,Long,Long>
public Long getMinValue()
DimensionIndexer
getMinValue
in interface DimensionIndexer<Long,Long,Long>
public Long getMaxValue()
DimensionIndexer
getMaxValue
in interface DimensionIndexer<Long,Long,Long>
public int getCardinality()
DimensionIndexer
getCardinality
in interface DimensionIndexer<Long,Long,Long>
public DimensionSelector makeDimensionSelector(DimensionSpec spec, TimeAndDimsHolder currEntry, IncrementalIndex.DimensionDesc desc)
DimensionIndexer
makeDimensionSelector
in interface DimensionIndexer<Long,Long,Long>
spec
- Specifies the output name of a dimension and any extraction functions to be applied.currEntry
- Provides access to the current TimeAndDims object in the Cursordesc
- Descriptor object for this dimension within an IncrementalIndexpublic ColumnValueSelector<?> makeColumnValueSelector(TimeAndDimsHolder currEntry, IncrementalIndex.DimensionDesc desc)
DimensionIndexer
makeColumnValueSelector
in interface DimensionIndexer<Long,Long,Long>
currEntry
- Provides access to the current TimeAndDims object in the Cursordesc
- Descriptor object for this dimension within an IncrementalIndexpublic int compareUnsortedEncodedKeyComponents(@Nullable Long lhs, @Nullable Long rhs)
DimensionIndexer
compareUnsortedEncodedKeyComponents
in interface DimensionIndexer<Long,Long,Long>
lhs
- dimension value array from a TimeAndDims keyrhs
- dimension value array from a TimeAndDims keypublic boolean checkUnsortedEncodedKeyComponentsEqual(@Nullable Long lhs, @Nullable Long rhs)
DimensionIndexer
checkUnsortedEncodedKeyComponentsEqual
in interface DimensionIndexer<Long,Long,Long>
lhs
- dimension value array from a TimeAndDims keyrhs
- dimension value array from a TimeAndDims keypublic int getUnsortedEncodedKeyComponentHashCode(@Nullable Long key)
DimensionIndexer
getUnsortedEncodedKeyComponentHashCode
in interface DimensionIndexer<Long,Long,Long>
key
- dimension value array from a TimeAndDims keypublic Object convertUnsortedEncodedKeyComponentToActualArrayOrList(Long key, boolean asList)
DimensionIndexer
convertUnsortedEncodedKeyComponentToActualArrayOrList
in interface DimensionIndexer<Long,Long,Long>
key
- dimension value array from a TimeAndDims keyasList
- if true, return an array; if false, return a listpublic Long convertUnsortedEncodedKeyComponentToSortedEncodedKeyComponent(Long key)
DimensionIndexer
convertUnsortedEncodedKeyComponentToSortedEncodedKeyComponent
in interface DimensionIndexer<Long,Long,Long>
key
- dimension value array from a TimeAndDims keypublic void fillBitmapsFromUnsortedEncodedKeyComponent(Long key, int rowNum, MutableBitmap[] bitmapIndexes, BitmapFactory factory)
DimensionIndexer
fillBitmapsFromUnsortedEncodedKeyComponent
in interface DimensionIndexer<Long,Long,Long>
key
- dimension value array from a TimeAndDims keyrowNum
- current row numberbitmapIndexes
- array of bitmaps, indexed by integer dimension valuefactory
- bitmap factoryCopyright © 2011–2018. All rights reserved.