Package org.apache.druid.segment.column
Interface SelectableColumn
- All Known Subinterfaces:
BaseColumn,ComplexColumn,DictionaryEncodedColumn<ActualType>,NestedCommonFormatColumn,NumericColumn
- All Known Implementing Classes:
CompressedComplexColumn,CompressedNestedDataComplexColumn,ConstantTimeColumn,DoublesColumn,FeaturelessSelectableColumn,FloatsColumn,GenericIndexedBasedComplexColumn,LongsColumn,NestedDataColumnV3,NestedDataColumnV4,NestedDataColumnV5,NestedDataComplexColumn,NestedFieldDictionaryEncodedColumn,NumericArrayFrameColumnReader.NumericArrayFrameColumn,ScalarDoubleColumn,ScalarLongColumn,SerializablePairLongDoubleComplexColumn,SerializablePairLongFloatComplexColumn,SerializablePairLongLongComplexColumn,SerializablePairLongStringComplexColumn,StringUtf8DictionaryEncodedColumn,UnknownTypeComplexColumn,VariantColumn
public interface SelectableColumn
Class returned by
ColumnHolder. Represents a physical or virtual column that can potentially be used
in specialized ways.
Currently, this class has no ability to directly make selectors, so it doesn't provide a way to unify
e.g. VirtualColumn.makeColumnValueSelector(java.lang.String, org.apache.druid.segment.ColumnSelectorFactory, org.apache.druid.segment.ColumnSelector, org.apache.druid.segment.data.ReadableOffset) and BaseColumn.makeColumnValueSelector(org.apache.druid.segment.data.ReadableOffset). This may
be added in the future, but for now it happens as part of the creation of a Cursor.-
Method Summary
-
Method Details
-
as
Request an implementation of a particular interface. Physical nested columns, and virtual columns that act as a nested column, should implement:-
NestedColumnTypeInspector, required. -
NestedColumnSelectorFactory, required. -
NestedVectorColumnSelectorFactory, required. -
NestedColumnIndexSupplier, if the column has indexes.
- Type Parameters:
T- desired interface- Parameters:
clazz- desired interface- Returns:
- instance of clazz, or null if the interface is not supported by this segment
-
-