Skip to content

Unity Catalog Helpers

create_catalog

create_catalog(spark: SparkSession, catalog: str) -> None

Execute SQL to create the given Unity Catalog catalog if missing.

Source code in src/spark_fuse/catalogs/unity.py
27
28
29
def create_catalog(spark: SparkSession, catalog: str) -> None:
    """Execute SQL to create the given Unity Catalog catalog if missing."""
    spark.sql(create_catalog_sql(catalog))

create_catalog_sql

create_catalog_sql(catalog: str) -> str

Return SQL to create a Unity Catalog catalog if it does not exist.

Source code in src/spark_fuse/catalogs/unity.py
11
12
13
def create_catalog_sql(catalog: str) -> str:
    """Return SQL to create a Unity Catalog catalog if it does not exist."""
    return f"CREATE CATALOG IF NOT EXISTS {_q(catalog)}"

create_schema

create_schema(spark: SparkSession, catalog: str, schema: str) -> None

Create the catalog (if needed) and schema in Unity Catalog.

Source code in src/spark_fuse/catalogs/unity.py
32
33
34
35
def create_schema(spark: SparkSession, catalog: str, schema: str) -> None:
    """Create the catalog (if needed) and schema in Unity Catalog."""
    create_catalog(spark, catalog)
    spark.sql(create_schema_sql(catalog, schema))

create_schema_sql

create_schema_sql(catalog: str, schema: str) -> str

Return SQL to create a schema within a Unity Catalog catalog.

Source code in src/spark_fuse/catalogs/unity.py
16
17
18
def create_schema_sql(catalog: str, schema: str) -> str:
    """Return SQL to create a schema within a Unity Catalog catalog."""
    return f"CREATE SCHEMA IF NOT EXISTS {_q(catalog)}.{_q(schema)}"

register_external_delta_table

register_external_delta_table(spark: SparkSession, *, catalog: str, schema: str, table: str, location: str) -> None

Register an external Delta table with Unity Catalog.

Source code in src/spark_fuse/catalogs/unity.py
38
39
40
41
42
def register_external_delta_table(
    spark: SparkSession, *, catalog: str, schema: str, table: str, location: str
) -> None:
    """Register an external Delta table with Unity Catalog."""
    spark.sql(register_external_delta_table_sql(catalog, schema, table, location))

register_external_delta_table_sql

register_external_delta_table_sql(catalog: str, schema: str, table: str, location: str) -> str

Return SQL to register an external Delta table in Unity Catalog.

Source code in src/spark_fuse/catalogs/unity.py
21
22
23
24
def register_external_delta_table_sql(catalog: str, schema: str, table: str, location: str) -> str:
    """Return SQL to register an external Delta table in Unity Catalog."""
    fq = f"{_q(catalog)}.{_q(schema)}.{_q(table)}"
    return f"CREATE TABLE IF NOT EXISTS {fq} USING DELTA LOCATION '{location}'"