Package io.deephaven.iceberg.base
Class IcebergUtils
java.lang.Object
io.deephaven.iceberg.base.IcebergUtils
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Type<?>
convertToDHType
(@NotNull org.apache.iceberg.types.Type icebergType) Convert an Iceberg data type to a Deephaven type.static org.apache.iceberg.types.Type
convertToIcebergType
(Class<?> columnType) Convert a Deephaven type to an Iceberg type.static boolean
createNamespaceIfNotExists
(@NotNull org.apache.iceberg.catalog.Catalog catalog, @NotNull org.apache.iceberg.catalog.Namespace namespace) static org.apache.iceberg.PartitionSpec
createPartitionSpec
(@NotNull org.apache.iceberg.Schema schema, @NotNull Iterable<String> partitionColumnNames) static IcebergUtils.SpecAndSchema
createSpecAndSchema
(@NotNull TableDefinition tableDefinition) static URI
dataFileUri
(@NotNull org.apache.iceberg.Table table, @NotNull org.apache.iceberg.DataFile dataFile) static boolean
dropNamespaceIfExists
(@NotNull org.apache.iceberg.catalog.Catalog catalog, @NotNull org.apache.iceberg.catalog.Namespace namespace) static URI
locationUri
(@NotNull org.apache.iceberg.Table table) static void
verifyPartitioningColumns
(org.apache.iceberg.PartitionSpec tablePartitionSpec, TableDefinition tableDefinition) Check that all the partitioning columns from the partition spec are present in the Table Definition.static void
verifyRequiredFields
(org.apache.iceberg.Schema tableSchema, TableDefinition tableDefinition) Check that all required fields are present in the table definition
-
Constructor Details
-
IcebergUtils
public IcebergUtils()
-
-
Method Details
-
locationUri
-
dataFileUri
public static URI dataFileUri(@NotNull @NotNull org.apache.iceberg.Table table, @NotNull @NotNull org.apache.iceberg.DataFile dataFile) -
convertToDHType
Convert an Iceberg data type to a Deephaven type.- Parameters:
icebergType
- The Iceberg data type to be converted.- Returns:
- The converted Deephaven type.
-
convertToIcebergType
Convert a Deephaven type to an Iceberg type.- Parameters:
columnType
- The Deephaven type to be converted.- Returns:
- The converted Iceberg type.
-
createSpecAndSchema
public static IcebergUtils.SpecAndSchema createSpecAndSchema(@NotNull @NotNull TableDefinition tableDefinition) - Returns:
- A
IcebergUtils.SpecAndSchema
object containing the partition spec and schema, andnull
for read instructions.
-
createPartitionSpec
-
createNamespaceIfNotExists
public static boolean createNamespaceIfNotExists(@NotNull @NotNull org.apache.iceberg.catalog.Catalog catalog, @NotNull @NotNull org.apache.iceberg.catalog.Namespace namespace) -
dropNamespaceIfExists
public static boolean dropNamespaceIfExists(@NotNull @NotNull org.apache.iceberg.catalog.Catalog catalog, @NotNull @NotNull org.apache.iceberg.catalog.Namespace namespace) -
verifyRequiredFields
public static void verifyRequiredFields(org.apache.iceberg.Schema tableSchema, TableDefinition tableDefinition) Check that all required fields are present in the table definition -
verifyPartitioningColumns
public static void verifyPartitioningColumns(org.apache.iceberg.PartitionSpec tablePartitionSpec, TableDefinition tableDefinition) Check that all the partitioning columns from the partition spec are present in the Table Definition.
-