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.ListenerNested 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_SENTINELFields inherited from class com.illumon.iris.db.v2.locations.SubscriptionAggregator
subscriptionsFields inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
COMPARATOR, NULL_PARTITIONFields inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
NULL_SIZE, NULL_TIME, REMOVE_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionReadOnlyParquetTableLocation(@NotNull TableKey tableKey, @NotNull TableLocationKey tableLocationKey, @NotNull File parquetFile, @NotNull ParquetFileReader fileReader, @NotNull ParquetInstructions instructions) -
Method Summary
Modifier and TypeMethodDescriptionGet the channel provider for reading from the parquet file.@Nullable TablegetDataIndexImpl(@NotNull String... columns) Load the data index from the location implementaiton.Retrieve theGroupingColumnInfofor all available grouping columns.@NotNull FileGet the full path to the Parquet file for this location.Get an ordered list of columns this location is sorted by.booleanhasDataIndexFor(@NotNull String... columns) Check if this location has a data index for the specified columns.protected @NotNull com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>makeColumnLocation(@NotNull String name) voidrefresh()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, visitMethods inherited from class com.illumon.iris.db.v2.locations.SubscriptionAggregator
activateUnderlyingDataSource, activationFailed, activationSuccessful, checkHasSubscribers, deactivateUnderlyingDataSource, matchSubscriptionToken, postActivationHook, subscribe, supportsSubscriptions, unsubscribeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.illumon.util.type.NamedImplementation
getImplementationNameMethods inherited from interface com.illumon.iris.db.v2.locations.ParquetFormatTableLocation
getFormatMethods 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, visitMethods inherited from interface com.illumon.iris.db.v2.locations.TableLocationKey
getColumnPartition, getInternalPartition, writeToMethods inherited from interface com.illumon.iris.db.v2.locations.TableLocationState
copyStateValuesTo, getLastModifiedTimeMillis, getSize, getSizeStr, getStateLock, writeStateValuesTo
-
Constructor Details
-
ReadOnlyParquetTableLocation
public ReadOnlyParquetTableLocation(@NotNull @NotNull TableKey tableKey, @NotNull @NotNull TableLocationKey tableLocationKey, @NotNull @NotNull File parquetFile, @NotNull @NotNull ParquetFileReader fileReader, @NotNull @NotNull ParquetInstructions instructions)
-
-
Method Details
-
getParquetFile
Description copied from interface:ParquetFormatTableLocationGet the full path to the Parquet file for this location.- Specified by:
getParquetFilein interfaceParquetFormatTableLocation- Returns:
- the parquet file
-
refresh
public void refresh()Description copied from interface:TableLocationInitialize or refresh state information.- Specified by:
refreshin interfaceTableLocation
-
getGroupingColumns
Description copied from interface:ParquetFormatTableLocationRetrieve theGroupingColumnInfofor all available grouping columns.- Specified by:
getGroupingColumnsin interfaceParquetFormatTableLocation- Returns:
- a map of column name to
GroupingColumnInfo
-
getChannelProvider
Description copied from interface:ParquetFormatTableLocationGet the channel provider for reading from the parquet file.- Specified by:
getChannelProviderin interfaceParquetFormatTableLocation- Returns:
- a
SeekableChannelsProviderto read from the file
-
getSortedColumns
Description copied from interface:TableLocationGet an ordered list of columns this location is sorted by.- Specified by:
getSortedColumnsin interfaceTableLocation- Returns:
- a non-null ordered list of
SortPairs
-
makeColumnLocation
@NotNull protected @NotNull com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values> makeColumnLocation(@NotNull @NotNull String name) - Specified by:
makeColumnLocationin classAbstractTableLocation<TableKey,com.illumon.iris.db.v2.locations.local.ParquetColumnLocation<Attributes.Values>>
-
getColumnTypes
-
hasDataIndexFor
Description copied from interface:TableLocationCheck if this location has a data index for the specified columns.- Specified by:
hasDataIndexForin 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:AbstractTableLocationLoad the data index from the location implementaiton. Implementations of this method should not perform any result caching.- Specified by:
getDataIndexImplin 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.
-