public class NumericIndexStrategyWrapper extends Object implements NumericIndexStrategy
| Modifier | Constructor and Description |
|---|---|
protected |
NumericIndexStrategyWrapper() |
|
NumericIndexStrategyWrapper(String id,
NumericIndexStrategy indexStrategy) |
| Modifier and Type | Method and Description |
|---|---|
List<IndexMetaData> |
createMetaData() |
void |
fromBinary(byte[] bytes)
Convert a stream of binary bytes to fields and data within an object.
|
MultiDimensionalCoordinateRanges[] |
getCoordinateRangesPerDimension(MultiDimensionalNumericData dataRange,
IndexMetaData... hints)
Return an integer coordinate range in each dimension for the given data range plus a bin ID if
that dimension is continuous
|
MultiDimensionalCoordinates |
getCoordinatesPerDimension(byte[] partitionKey,
byte[] sortKey)
Return an integer coordinate in each dimension for the given partition and sort key plus a bin
ID if that dimension is continuous.
|
double[] |
getHighestPrecisionIdRangePerDimension()
* Get the range/size of a single insertion ID for each dimension at the highest precision
supported by this index strategy
|
String |
getId() |
InsertionIds |
getInsertionIds(MultiDimensionalNumericData indexedData)
Returns a list of id's for insertion.
|
InsertionIds |
getInsertionIds(MultiDimensionalNumericData indexedData,
int maxDuplicateInsertionIds)
Returns a list of id's for insertion.
|
byte[][] |
getInsertionPartitionKeys(MultiDimensionalNumericData insertionData) |
NumericDimensionDefinition[] |
getOrderedDimensionDefinitions()
Returns an array of dimension definitions that defines this index strategy, the array is in the
order that is expected within multidimensional numeric data that is passed to this index
strategy
|
int |
getPartitionKeyLength()
* Get the offset in bytes before the dimensional index.
|
byte[][] |
getPredefinedSplits() |
byte[][] |
getQueryPartitionKeys(MultiDimensionalNumericData queryData,
IndexMetaData... hints) |
QueryRanges |
getQueryRanges(MultiDimensionalNumericData indexedRange,
IndexMetaData... hints)
Returns a list of query ranges for an specified numeric range.
|
QueryRanges |
getQueryRanges(MultiDimensionalNumericData indexedRange,
int maxRangeDecomposition,
IndexMetaData... hints)
Returns a list of query ranges for an specified numeric range.
|
MultiDimensionalNumericData |
getRangeForId(byte[] partitionKey,
byte[] sortKey)
Returns the range that the given ID represents
|
byte[] |
toBinary()
Convert fields and data within an object to binary form for transmission or storage.
|
protected NumericIndexStrategyWrapper()
public NumericIndexStrategyWrapper(String id, NumericIndexStrategy indexStrategy)
public String getId()
getId in interface IndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>public byte[] toBinary()
PersistabletoBinary in interface Persistablepublic void fromBinary(byte[] bytes)
PersistablefromBinary in interface Persistablepublic QueryRanges getQueryRanges(MultiDimensionalNumericData indexedRange, IndexMetaData... hints)
SortedIndexStrategygetQueryRanges in interface SortedIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>indexedRange - defines the numeric range for the querypublic QueryRanges getQueryRanges(MultiDimensionalNumericData indexedRange, int maxRangeDecomposition, IndexMetaData... hints)
SortedIndexStrategygetQueryRanges in interface SortedIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>indexedRange - defines the numeric range for the querymaxRangeDecomposition - the maximum number of ranges provided by a single query
decomposition, this is a best attempt and not a guaranteepublic InsertionIds getInsertionIds(MultiDimensionalNumericData indexedData)
SortedIndexStrategygetInsertionIds in interface SortedIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>indexedData - defines the numeric data to be indexedpublic MultiDimensionalNumericData getRangeForId(byte[] partitionKey, byte[] sortKey)
SortedIndexStrategygetRangeForId in interface SortedIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>partitionKey - the partition key part of the insertion ID to determine a range forsortKey - the sort key part of the insertion ID to determine a range forpublic MultiDimensionalCoordinates getCoordinatesPerDimension(byte[] partitionKey, byte[] sortKey)
NumericIndexStrategygetCoordinatesPerDimension in interface NumericIndexStrategypartitionKey - the partition key to determine the coordinates forsortKey - the sort key to determine the coordinates forpublic NumericDimensionDefinition[] getOrderedDimensionDefinitions()
NumericIndexStrategygetOrderedDimensionDefinitions in interface NumericIndexStrategypublic double[] getHighestPrecisionIdRangePerDimension()
NumericIndexStrategygetHighestPrecisionIdRangePerDimension in interface NumericIndexStrategypublic InsertionIds getInsertionIds(MultiDimensionalNumericData indexedData, int maxDuplicateInsertionIds)
SortedIndexStrategygetInsertionIds in interface SortedIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>indexedData - defines the numeric data to be indexedmaxDuplicateInsertionIds - the maximum number of insertion IDs that can be used, this is a
best attempt and not a guaranteepublic int getPartitionKeyLength()
NumericIndexStrategygetPartitionKeyLength in interface NumericIndexStrategygetPartitionKeyLength in interface PartitionIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>public List<IndexMetaData> createMetaData()
createMetaData in interface IndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>public MultiDimensionalCoordinateRanges[] getCoordinateRangesPerDimension(MultiDimensionalNumericData dataRange, IndexMetaData... hints)
NumericIndexStrategygetCoordinateRangesPerDimension in interface NumericIndexStrategydataRange - the range to determine the coordinates forhints - index hintspublic byte[][] getInsertionPartitionKeys(MultiDimensionalNumericData insertionData)
getInsertionPartitionKeys in interface PartitionIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>public byte[][] getQueryPartitionKeys(MultiDimensionalNumericData queryData, IndexMetaData... hints)
getQueryPartitionKeys in interface PartitionIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>public byte[][] getPredefinedSplits()
getPredefinedSplits in interface PartitionIndexStrategy<MultiDimensionalNumericData,MultiDimensionalNumericData>Copyright © 2013–2022. All rights reserved.