Class ReadOnlyParquetTableLocation
java.lang.Object
com.illumon.iris.db.v2.locations.SubscriptionAggregator<TableLocation.Listener>
com.illumon.iris.db.v2.locations.AbstractTableLocation<TableKey,com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>>
com.illumon.iris.db.v2.locations.local.ReadOnlyParquetTableLocation
- All Implemented Interfaces:
com.fishlib.base.log.LogOutputAppendable
,ParquetFormatTableLocation
,TableLocation
,TableLocationKey
,TableLocationState
,NamedImplementation
public class ReadOnlyParquetTableLocation
extends AbstractTableLocation<TableKey,com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>>
implements ParquetFormatTableLocation
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.locations.TableLocation
TableLocation.Format, TableLocation.Listener
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
TableLocationKey.ComparatorImpl, TableLocationKey.KeyedObjectKeyImpl<VALUE_TYPE>, TableLocationKey.SelfKeyedObjectKeyImpl<VALUE_TYPE extends TableLocationKey>
-
Field Summary
Fields inherited from class com.illumon.iris.db.v2.locations.AbstractTableLocation
cachedGroupings, NO_GROUPING_SENTINEL
Fields inherited from class com.illumon.iris.db.v2.locations.SubscriptionAggregator
subscriptions
Fields inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
COMPARATOR, NULL_PARTITION
Fields inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
NULL_SIZE, NULL_TIME, REMOVE_SIZE
-
Constructor Summary
ConstructorsConstructorDescriptionReadOnlyParquetTableLocation
(TableKey tableKey, TableLocationKey tableLocationKey, File parquetFile, io.deephaven.parquet.base.ParquetFileReader fileReader, ParquetInstructions instructions) -
Method Summary
Modifier and TypeMethodDescriptionio.deephaven.parquet.base.util.SeekableChannelsProvider
Get the channel provider for reading from the parquet file.getDataIndexImpl
(String... columns) Load the data index from the location implementaiton.Retrieve theGroupingColumnInfo
for all available grouping columns.Get the full path to the Parquet file for this location.Get an ordered list of columns this location is sorted by.boolean
hasDataIndexFor
(String... columns) Check if this location has a data index for the specified columns.protected com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>
makeColumnLocation
(String name) void
refresh()
Initialize or refresh state information.Methods inherited from class com.illumon.iris.db.v2.locations.AbstractTableLocation
clearColumnLocations, deliverInitialSnapshot, getColumnLocation, getColumnPartition, getDataIndex, getInternalPartition, getLastModifiedTimeMillis, getSize, getStateLock, getTableKey, getVisit, handleUpdate, handleUpdate, toString, visit
Methods inherited from class com.illumon.iris.db.v2.locations.SubscriptionAggregator
activateUnderlyingDataSource, activationFailed, activationSuccessful, checkHasSubscribers, deactivateUnderlyingDataSource, matchSubscriptionToken, postActivationHook, subscribe, supportsSubscriptions, unsubscribe
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.illumon.util.type.NamedImplementation
getImplementationName
Methods inherited from interface com.illumon.iris.db.v2.locations.ParquetFormatTableLocation
getFormat
Methods inherited from interface com.illumon.iris.db.v2.locations.TableLocation
append, as, clearColumnLocations, getColumnLocation, getColumnLocation, getDataIndex, getTableKey, getVisit, handleUpdate, subscribe, supportsSubscriptions, toGenericString, toStringDetailed, toStringHelper, unsubscribe, visit
Methods inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
getColumnPartition, getInternalPartition, writeTo
Methods inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
copyStateValuesTo, getLastModifiedTimeMillis, getSize, getSizeStr, getStateLock, writeStateValuesTo
-
Constructor Details
-
ReadOnlyParquetTableLocation
public ReadOnlyParquetTableLocation(@NotNull TableKey tableKey, @NotNull TableLocationKey tableLocationKey, @NotNull File parquetFile, @NotNull io.deephaven.parquet.base.ParquetFileReader fileReader, @NotNull ParquetInstructions instructions)
-
-
Method Details
-
getParquetFile
Description copied from interface:ParquetFormatTableLocation
Get the full path to the Parquet file for this location.- Specified by:
getParquetFile
in interfaceParquetFormatTableLocation
- Returns:
- the parquet file
-
refresh
public void refresh()Description copied from interface:TableLocation
Initialize or refresh state information.- Specified by:
refresh
in interfaceTableLocation
-
getGroupingColumns
Description copied from interface:ParquetFormatTableLocation
Retrieve theGroupingColumnInfo
for all available grouping columns.- Specified by:
getGroupingColumns
in interfaceParquetFormatTableLocation
- Returns:
- a map of column name to
GroupingColumnInfo
-
getChannelProvider
public io.deephaven.parquet.base.util.SeekableChannelsProvider getChannelProvider()Description copied from interface:ParquetFormatTableLocation
Get the channel provider for reading from the parquet file.- Specified by:
getChannelProvider
in interfaceParquetFormatTableLocation
- Returns:
- a
SeekableChannelsProvider
to read from the file
-
getSortedColumns
Description copied from interface:TableLocation
Get an ordered list of columns this location is sorted by.- Specified by:
getSortedColumns
in interfaceTableLocation
- Returns:
- a non-null ordered list of
SortPair
s
-
makeColumnLocation
@NotNull protected com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values> makeColumnLocation(@NotNull String name) - Specified by:
makeColumnLocation
in classAbstractTableLocation<TableKey,
com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>>
-
getColumnTypes
-
hasDataIndexFor
Description copied from interface:TableLocation
Check if this location has a data index for the specified columns.- Specified by:
hasDataIndexFor
in interfaceTableLocation
- Parameters:
columns
- the set of columns to check for.- Returns:
- true if the table has a Data Index for the specified columns
-
getDataIndexImpl
Description copied from class:AbstractTableLocation
Load the data index from the location implementaiton. Implementations of this method should not perform any result caching.- Specified by:
getDataIndexImpl
in classAbstractTableLocation<TableKey,
com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>> - Parameters:
columns
- the columns to load an index for.- Returns:
- the data index table, or an empty table or null if none existed.
-