Class BaseMetadata
java.lang.Object
org.apache.drill.metastore.metadata.BaseMetadata
- All Implemented Interfaces:
Metadata
- Direct Known Subclasses:
BaseTableMetadata,FileMetadata,PartitionMetadata,RowGroupMetadata,SegmentMetadata
Common provider of tuple schema, column metadata, and statistics for table, partition, file or row group.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Map<SchemaPath, ColumnStatistics<?>> protected final longprotected final MetadataInfoprotected final Map<String, StatisticsHolder<?>> protected final TupleMetadataprotected final TableInfostatic final long -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedBaseMetadata(BaseMetadata.BaseMetadataBuilder<T> builder) -
Method Summary
Modifier and TypeMethodDescriptionbooleancontainsExactStatistics(StatisticsKind<?> statisticsKind) Checks whether specified statistics kind is set in this non-column statistics and it corresponds to the exact statistics value.booleangetColumn(SchemaPath name) Returns metadata description for the specified columnReturns statistics stored in current metadata represented as Map of columnSchemaPaths and correspondingColumnStatistics.getColumnStatistics(SchemaPath columnName) Returns statistics for specified column stored in current metadata.longAllows to check the time, when any files were modified.Returns schema stored in current metadata represented asTupleMetadata.<V> VgetStatistic(StatisticsKind<V> statisticsKind) Returns value of non-column statistics which corresponds to specifiedStatisticsKind.<V> VgetStatisticsForColumn(SchemaPath columnName, StatisticsKind<V> statisticsKind) Returns value of column statistics which corresponds to specifiedStatisticsKindfor column with specifiedcolumnName.inthashCode()protected abstract BaseMetadata.BaseMetadataBuilder<?> ConvertsMetadataimplementation intoTableMetadataUnitinstance which will be used to write data into Drill Metastore Tables.protected abstract void
-
Field Details
-
UNDEFINED_TIME
public static final long UNDEFINED_TIME- See Also:
-
tableInfo
-
metadataInfo
-
schema
-
columnsStatistics
-
metadataStatistics
-
lastModifiedTime
protected final long lastModifiedTime
-
-
Constructor Details
-
BaseMetadata
-
-
Method Details
-
getColumnsStatistics
Description copied from interface:MetadataReturns statistics stored in current metadata represented as Map of columnSchemaPaths and correspondingColumnStatistics.- Specified by:
getColumnsStatisticsin interfaceMetadata- Returns:
- statistics stored in current metadata
-
getColumnStatistics
Description copied from interface:MetadataReturns statistics for specified column stored in current metadata.- Specified by:
getColumnStatisticsin interfaceMetadata- Parameters:
columnName- column whose statistics should be returned- Returns:
- statistics for specified column
-
getSchema
Description copied from interface:MetadataReturns schema stored in current metadata represented asTupleMetadata. -
getStatistic
Description copied from interface:MetadataReturns value of non-column statistics which corresponds to specifiedStatisticsKind.- Specified by:
getStatisticin interfaceMetadata- Parameters:
statisticsKind- statistics kind whose value should be returned- Returns:
- value of non-column statistics
-
containsExactStatistics
Description copied from interface:MetadataChecks whether specified statistics kind is set in this non-column statistics and it corresponds to the exact statistics value.- Specified by:
containsExactStatisticsin interfaceMetadata- Parameters:
statisticsKind- statistics kind to check- Returns:
- true if value which corresponds to the specified statistics kind is exact
-
getStatisticsForColumn
Description copied from interface:MetadataReturns value of column statistics which corresponds to specifiedStatisticsKindfor column with specifiedcolumnName.- Specified by:
getStatisticsForColumnin interfaceMetadata- Parameters:
columnName- name of the columnstatisticsKind- statistics kind whose value should be returned- Returns:
- value of column statistics
-
getColumn
Description copied from interface:MetadataReturns metadata description for the specified column- Specified by:
getColumnin interfaceMetadata- Parameters:
name- column name, whose metadata type info should be returned- Returns:
ColumnMetadataschema description of the column
-
getTableInfo
- Specified by:
getTableInfoin interfaceMetadata
-
getMetadataInfo
- Specified by:
getMetadataInfoin interfaceMetadata
-
getLastModifiedTime
public long getLastModifiedTime()Allows to check the time, when any files were modified. It is in Unix Timestamp, unit of measurement is millisecond. Undefined time value will be indicated usingUNDEFINED_TIMEvalue.- Returns:
- last modified time of files
-
equals
-
hashCode
public int hashCode() -
toMetadataUnit
Description copied from interface:MetadataConvertsMetadataimplementation intoTableMetadataUnitinstance which will be used to write data into Drill Metastore Tables.- Specified by:
toMetadataUnitin interfaceMetadata- Returns:
- metadata unit instance
-
toMetadataUnitBuilder
-
toBuilder
-