Class IcebergUtils

java.lang.Object
io.deephaven.iceberg.base.IcebergUtils

public final class IcebergUtils extends Object
  • Constructor Details

    • IcebergUtils

      public IcebergUtils()
  • Method Details

    • locationUri

      public static URI locationUri(@NotNull @NotNull org.apache.iceberg.Table table)
    • dataFileUri

      public static URI dataFileUri(@NotNull @NotNull org.apache.iceberg.Table table, @NotNull @NotNull org.apache.iceberg.DataFile dataFile)
    • convertToDHType

      public static Type<?> convertToDHType(@NotNull @NotNull org.apache.iceberg.types.Type icebergType)
      Convert an Iceberg data type to a Deephaven type.
      Parameters:
      icebergType - The Iceberg data type to be converted.
      Returns:
      The converted Deephaven type.
    • convertToIcebergType

      public static org.apache.iceberg.types.Type convertToIcebergType(Class<?> columnType)
      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)
      Create PartitionSpec and Schema from a TableDefinition.
      Returns:
      A IcebergUtils.SpecAndSchema object containing the partition spec and schema, and null for read instructions.
    • createPartitionSpec

      public static org.apache.iceberg.PartitionSpec createPartitionSpec(@NotNull @NotNull org.apache.iceberg.Schema schema, @NotNull @NotNull Iterable<String> partitionColumnNames)
    • 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.