Package org.apache.druid.segment.column
@EverythingIsNonnullByDefault
package org.apache.druid.segment.column
-
ClassDescriptionSpecialized holder for
BaseColumn(physical column).BaseTypeSignature<Type extends TypeDescriptor>Legacy fallback column format used by columns which do not directly implementColumnFormat.This interface is used to expose information about columns that is interesting to know for all matters dealing with reading from columns, including query planning and optimization, creating readers to merge segments at ingestion time, and probably nearly anything else you can imagine.This interface defines the shape of a mechanism to allow for bespoke coercion ofColumnCapabilities.Capable.UNKNOWNintoColumnCapabilities.Capable.TRUEorColumnCapabilities.Capable.FALSEfor eachColumnCapabilities.Capableof aColumnCapabilities, as is appropriate for the situation of the caller.Abstraction for the physical storage components of a column, allowing us to decouple a columns logical type from how it is actually stored in a segment.Sort of likeColumnCapabilities, except for indexes supplied byColumnIndexSelector, provides information for how query processing may use indexes.Provides indexes and information about them (ColumnIndexCapabilities) for a column.Native Druid types.This interface represents a complex column and can be implemented by druid extension writer of a custom column with arbitrary serialization instead of a custom column that serializes rows of objects serialized usingGenericIndexedclass which is default implementation of "writeToXXX" methods inComplexColumnSerializer.DictionaryEncodedColumn<ActualType extends Comparable<? super ActualType>>Implementation ofComplexColumnto be used when complex column serialization is done by usingGenericIndexedby using default implementations of "writeToXXX" methods inComplexColumnSerializerWrapper ofTypeStrategyfor nullable types, which storesTypeStrategies.IS_NULL_BYTEorTypeStrategies.IS_NOT_NULL_BYTEin the leading byte of any value, as appropriate.Default implementation ofTypeStrategyfor allComplexMetricSerdeimplementations that just wraps theObjectStrategythey are required to implement.Type signature for a row in a Druid datasource or query result.Class returned byColumnHolder.Adapter to convertIndexed<ByteBuffer>with utf8 encoded bytes intoIndexed<String>to be friendly to consumers.DictionaryEncodedColumn<String>for a column which has aByteBufferbased UTF-8 dictionary.Base type for aVectorObjectSelectorfor a dictionary encodedColumnType.STRINGbuilt around aColumnarMultiInts.Base type for aMultiValueDimensionVectorSelectorfor a dictionary encodedColumnType.STRINGbuilt around aColumnarMultiInts.Base type for aSingleValueDimensionVectorSelectorfor a dictionary encodedColumnType.STRINGbuilt around aColumnarInts.Base type for aVectorObjectSelectorfor a dictionary encodedColumnType.STRINGbuilt around aColumnarInts.CreateTypeSignatureof aTypeDescriptor.TypeSignature<Type extends TypeDescriptor>This interface serves as a common foundation for Druids native type system, and provides common methods for reasoning about and handling type matters.Read and write a non-null ARRAY which is permitted to have null elements (all elements are always read and written with aNullableTypeStrategywrapper on theTypeStrategyof theTypeSignature.getElementType().Read and write non-null DOUBLE values.Read and write non-null FLOAT values.Read and write non-null LONG values.Read and write non-null UTF8 encoded String values.TypeStrategy<T>TypeStrategy provides value comparison and binary serialization for Druid types.This enumeration defines the high level classification of the Druid type system, used byColumnTypeto indicate the type of data stored in columns and produced by expressions and aggregations, used to allow query processing engine algorithms to compute results, used to compute query result row signatures, and all other type needs.