Class DeltaLakeSchemaSupport
java.lang.Object
io.trino.plugin.deltalake.transactionlog.DeltaLakeSchemaSupport
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enum -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionchangeDataFeedEnabled(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) static TypedeserializeType(TypeManager typeManager, Object type, boolean usePhysicalName) static List<ColumnMetadata> extractColumnMetadata(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) static List<DeltaLakeColumnHandle> extractPartitionColumns(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) static List<DeltaLakeColumnHandle> extractPartitionColumns(List<DeltaLakeColumnMetadata> schema, List<String> originalPartitionColumns) static List<DeltaLakeColumnMetadata> extractSchema(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) generateColumnMetadata(DeltaLakeSchemaSupport.ColumnMappingMode columnMappingMode, AtomicInteger maxColumnId) getCheckConstraints(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) getColumnComments(MetadataEntry metadataEntry) getColumnIdentities(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) getColumnInvariants(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) getColumnMappingMode(MetadataEntry metadata, ProtocolEntry protocolEntry) static List<DeltaLakeColumnMetadata> getColumnMetadata(String json, TypeManager typeManager, DeltaLakeSchemaSupport.ColumnMappingMode mappingMode) getColumnProperties(MetadataEntry metadataEntry, Function<com.fasterxml.jackson.databind.JsonNode, T> extractor) getColumnsMetadata(MetadataEntry metadataEntry) getColumnsNullability(MetadataEntry metadataEntry) getColumnTypes(MetadataEntry metadataEntry) getExactColumnNames(MetadataEntry metadataEntry) getGeneratedColumnExpressions(MetadataEntry metadataEntry) getIsolationLevel(MetadataEntry metadata) static intgetMaxColumnId(MetadataEntry metadata) static booleanisAppendOnly(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) static booleanisDeletionVectorEnabled(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) static ObjectserializeColumnType(DeltaLakeSchemaSupport.ColumnMappingMode columnMappingMode, AtomicInteger maxColumnId, Type columnType) static StringserializeSchemaAsJson(DeltaLakeTable deltaTable) static StringserializeStatsAsJson(DeltaLakeFileStatistics fileStatistics) unsupportedReaderFeatures(Set<String> features) unsupportedWriterFeatures(Set<String> features) static voidvalidateType(Type type) static void
-
Field Details
-
APPEND_ONLY_CONFIGURATION_KEY
- See Also:
-
COLUMN_MAPPING_MODE_CONFIGURATION_KEY
- See Also:
-
COLUMN_MAPPING_PHYSICAL_NAME_CONFIGURATION_KEY
- See Also:
-
MAX_COLUMN_ID_CONFIGURATION_KEY
- See Also:
-
ISOLATION_LEVEL_CONFIGURATION_KEY
- See Also:
-
TIMESTAMP_NTZ_FEATURE_NAME
- See Also:
-
-
Method Details
-
isAppendOnly
-
isDeletionVectorEnabled
public static boolean isDeletionVectorEnabled(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) -
getColumnMappingMode
public static DeltaLakeSchemaSupport.ColumnMappingMode getColumnMappingMode(MetadataEntry metadata, ProtocolEntry protocolEntry) -
getIsolationLevel
-
getMaxColumnId
-
extractPartitionColumns
public static List<DeltaLakeColumnHandle> extractPartitionColumns(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) -
extractPartitionColumns
public static List<DeltaLakeColumnHandle> extractPartitionColumns(List<DeltaLakeColumnMetadata> schema, List<String> originalPartitionColumns) -
serializeSchemaAsJson
-
serializeColumnType
public static Object serializeColumnType(DeltaLakeSchemaSupport.ColumnMappingMode columnMappingMode, AtomicInteger maxColumnId, Type columnType) -
generateColumnMetadata
public static Map<String,Object> generateColumnMetadata(DeltaLakeSchemaSupport.ColumnMappingMode columnMappingMode, AtomicInteger maxColumnId) -
validateType
-
serializeStatsAsJson
public static String serializeStatsAsJson(DeltaLakeFileStatistics fileStatistics) throws com.fasterxml.jackson.core.JsonProcessingException - Throws:
com.fasterxml.jackson.core.JsonProcessingException
-
extractColumnMetadata
public static List<ColumnMetadata> extractColumnMetadata(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) -
extractSchema
public static List<DeltaLakeColumnMetadata> extractSchema(MetadataEntry metadataEntry, ProtocolEntry protocolEntry, TypeManager typeManager) -
verifySupportedColumnMapping
public static void verifySupportedColumnMapping(DeltaLakeSchemaSupport.ColumnMappingMode mappingMode) -
getColumnMetadata
public static List<DeltaLakeColumnMetadata> getColumnMetadata(String json, TypeManager typeManager, DeltaLakeSchemaSupport.ColumnMappingMode mappingMode) -
getColumnTypes
-
getColumnComments
-
getColumnsNullability
-
getColumnIdentities
public static Map<String,Boolean> getColumnIdentities(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) -
getColumnInvariants
public static Map<String,String> getColumnInvariants(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) -
getGeneratedColumnExpressions
-
getCheckConstraints
public static Map<String,String> getCheckConstraints(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) -
changeDataFeedEnabled
public static Optional<Boolean> changeDataFeedEnabled(MetadataEntry metadataEntry, ProtocolEntry protocolEntry) -
getColumnsMetadata
-
getColumnProperties
public static <T> Map<String,T> getColumnProperties(MetadataEntry metadataEntry, Function<com.fasterxml.jackson.databind.JsonNode, T> extractor) -
getExactColumnNames
- Returns:
- the case-sensitive column names
-
unsupportedReaderFeatures
-
unsupportedWriterFeatures
-
deserializeType
-