Class ParquetColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR extends Attributes.Values>
java.lang.Object
com.illumon.iris.db.v2.sources.regioned.RegionedPageStore.Static<ATTR,ATTR,ColumnRegionObject<DATA_TYPE,ATTR>>
com.illumon.iris.db.v2.sources.regioned.ParquetColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR>
- All Implemented Interfaces:
LongSizedDataStructure
,ChunkSource<ATTR>
,DefaultChunkSource<ATTR>
,DefaultChunkSource.SupportsContiguousGet<ATTR>
,FillContextMaker
,GetContextMaker
,Page<ATTR>
,PageStore<ATTR,
,ATTR, ColumnRegionObject<DATA_TYPE, ATTR>> PagingChunkSource<ATTR>
,ColumnRegion<ATTR>
,ColumnRegionObject<DATA_TYPE,
,ATTR> RegionedPageStore<ATTR,
,ATTR, ColumnRegionObject<DATA_TYPE, ATTR>> Releasable
- Enclosing class:
- ParquetColumnRegionObject<T,
ATTR extends Attributes.Values>
public static final class ParquetColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR extends Attributes.Values>
extends RegionedPageStore.Static<ATTR,ATTR,ColumnRegionObject<DATA_TYPE,ATTR>>
implements ColumnRegionObject<DATA_TYPE,ATTR>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
ChunkSource.FillContext, ChunkSource.GetContext, ChunkSource.WithPrev<ATTR extends Attributes.Any>
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionObject
ColumnRegionObject.DictionaryKeysWrapper, ColumnRegionObject.IntDictionaryKeysWrapper, ColumnRegionObject.Null<T,
ATTR extends Attributes.Any> Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource
DefaultChunkSource.SupportsContiguousGet<ATTR extends Attributes.Any>, DefaultChunkSource.WithPrev<ATTR extends Attributes.Any>
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page
Page.WithDefaults<ATTR extends Attributes.Any>, Page.WithDefaultsForRepeatingValues<ATTR extends Attributes.Any>
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedPageStore
RegionedPageStore.Helper, RegionedPageStore.Static<ATTR extends Attributes.Values,
INNER_ATTR extends ATTR, REGION_TYPE extends ColumnRegion<INNER_ATTR>> -
Field Summary
Fields inherited from class com.illumon.iris.db.v2.sources.regioned.RegionedPageStore.Static
regions
Fields inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
DEFAULT_FILL_INSTANCE, ZERO_LENGTH_CHUNK_SOURCE_ARRAY
Fields inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegion
REGION_MASK
Fields inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedPageStore
REGION_MASK, REGION_MASK_NUM_BITS
-
Constructor Summary
ConstructorsConstructorDescriptionStaticPageStore
(ColumnRegionObject<DATA_TYPE, ATTR>[] regions, ParquetFormatColumnLocation<ATTR> location) -
Method Summary
Modifier and TypeMethodDescriptionboolean
gatherDictionaryValuesRowSet
(ReadOnlyIndex.SearchIterator keysToVisit, ReadOnlyIndex.Iterator knownKeys, Index.SequentialBuilder sequentialBuilder) Optional method that should only be used on regions returned byColumnRegionObject.getDictionaryValuesRegion()
.Get a view of this region as long dictionary keys.Get a view of this region as dictionary values.Class<?>
getObject
(long elementIndex) Get a single object from this region.getObject
(ChunkSource.FillContext context, long elementIndex) Get a single object from this region.supportsDictionaryFormat
(ReadOnlyIndex.SearchIterator keysToVisit) Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values covering all of its row keys inkeysToVisit
.Methods inherited from class com.illumon.iris.db.v2.sources.regioned.RegionedPageStore.Static
binSearchMatch, chunkMatch, couldInclude, findRegionIndex, getLocation, getRegion, getRegionCount, length, lookupRegion, mask
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
getChunkType
Methods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegion
binSearchMatch, chunkMatch, couldInclude, firstRowOffset, getLocation, mask, specialMatch, supportsSpecialMatching
Methods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionObject
getDictionaryKeysRegionInt, skipCache
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource
getChunkByFilling, makeGetContext
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.FillContextMaker
makeFillContext
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.GetContextMaker
makeGetContext
Methods inherited from interface com.illumon.iris.db.util.LongSizedDataStructure
intSize, intSize
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page
advanceToNextPage, advanceToNextPage, advanceToNextPageAndGetPositionDistance, firstRow, getRowOffset, lastRow, length
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PageStore
doFillChunkAppend, fillChunk, fillChunkAppend, getChunk, getChunk
Methods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PagingChunkSource
maxRow
Methods inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedPageStore
getPageContaining, makeFillContext, size
Methods inherited from interface com.illumon.iris.db.v2.sources.Releasable
releaseCachedResources
-
Constructor Details
-
StaticPageStore
public StaticPageStore(@NotNull ColumnRegionObject<DATA_TYPE, ATTR>[] regions, @NotNull ParquetFormatColumnLocation<ATTR> location)
-
-
Method Details
-
getObject
Description copied from interface:ColumnRegionObject
Get a single object from this region.- Specified by:
getObject
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Parameters:
elementIndex
- Element (object) index in the table's address space- Returns:
- The object value at the specified element (object) index
-
getObject
Description copied from interface:ColumnRegionObject
Get a single object from this region.- Specified by:
getObject
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Parameters:
context
- AColumnRegionFillContext
to enable resource caching where suitable, with current region index pointing to this regionelementIndex
- Element (object) index in the table's address space- Returns:
- The object value at the specified element (object) index
-
supportsDictionaryFormat
public RegionVisitResult supportsDictionaryFormat(@NotNull ReadOnlyIndex.SearchIterator keysToVisit) Description copied from interface:ColumnRegionObject
Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values covering all of its row keys inkeysToVisit
.Both alternate regions must use the same or smaller row key space as this one. Indices fetched from the keys region must represent valid element indices in the values region. Values regions must support
ColumnRegionObject.gatherDictionaryValuesRowSet(Index.SearchIterator, Index.Iterator, Index.SequentialBuilder)
.Use
ColumnRegionObject.getDictionaryKeysRegion()
to access the region of keys andColumnRegionObject.getDictionaryValuesRegion()
to access the region of values.- Specified by:
supportsDictionaryFormat
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Parameters:
keysToVisit
- Iterator positioned at the first relevant row key belonging to this region. Will be advanced to after this region iftrue
is returned. No guarantee is made iffalse
is returned.- Returns:
- A
RegionVisitResult
specifyingFAILED
if this region cannot supply a dictionary,CONTINUE
if it can andkeysToVisit
is not exhausted, andCOMPLETE
if it can andkeysToVisit
is exhausted
-
gatherDictionaryValuesRowSet
public boolean gatherDictionaryValuesRowSet(@NotNull ReadOnlyIndex.SearchIterator keysToVisit, @NotNull ReadOnlyIndex.Iterator knownKeys, @NotNull Index.SequentialBuilder sequentialBuilder) Description copied from interface:ColumnRegionObject
Optional method that should only be used on regions returned byColumnRegionObject.getDictionaryValuesRegion()
. Gathers- Specified by:
gatherDictionaryValuesRowSet
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Parameters:
keysToVisit
- A search iterator over the enclosing table address space (which must have the same regions at the same masks), positioned at a row key in this region. Used to identify regions to visit. Should be advanced to after this region as a side-effect.knownKeys
- An iterator over the previously-known row keys, positioned at the first known key in this region, or after the region's maximum key if no keys are known. Should be advanced to after this region as a side effect.sequentialBuilder
- Output builder; implementations should append ranges for row keys not found inknownKeys
- Returns:
- Whether
keysToVisit
has been exhausted
-
getDictionaryRegionType
- Specified by:
getDictionaryRegionType
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values>
-
getDictionaryKeysRegion
Description copied from interface:ColumnRegionObject
Get a view of this region as long dictionary keys.- Specified by:
getDictionaryKeysRegion
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Returns:
- A dictionary keys region as specified by
ColumnRegionObject.supportsDictionaryFormat(Index.SearchIterator)
-
getDictionaryValuesRegion
Description copied from interface:ColumnRegionObject
Get a view of this region as dictionary values.- Specified by:
getDictionaryValuesRegion
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values> - Returns:
- A dictionary values region as specified by
ColumnRegionObject.supportsDictionaryFormat(Index.SearchIterator)
-
getNativeType
- Specified by:
getNativeType
in interfaceChunkSource<DATA_TYPE>
- Specified by:
getNativeType
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Attributes.Values>
-