Módulo `utils`
set_spark
Configura una sesión Spark global para uso interno del módulo.
| Parámetro | Tipo | Descripción |
|---|---|---|
| spark | SparkSession | Sesión Spark a registrar globalmente. |
from pyspark.sql import SparkSession
from gss_bi_udfs import utils
spark = SparkSession.builder.getOrCreate()
utils.set_spark(spark)
get_spark
Obtiene Spark en este orden: parámetro explícito, sesión configurada por set_spark, builtins.spark (Databricks), o builder.getOrCreate().
| Parámetro | Tipo | Descripción |
|---|---|---|
| spark | SparkSession | None | Sesión opcional explícita. |
get_env
Lee el entorno de ejecución desde la variable ENV.
| Parámetro | Tipo | Descripción |
|---|---|---|
| default | str | Valor por defecto si ENV no existe. |
get_env_catalog
Ajusta el catálogo según ambiente. Si ENV=pro devuelve el catálogo base; en otros casos agrega sufijo.
| Parámetro | Tipo | Descripción |
|---|---|---|
| catalog | str | Nombre base del catálogo. |
get_env_table_path
Compone el identificador final de tabla: catálogo ajustado + ruta de tabla.
| Parámetro | Tipo | Descripción |
|---|---|---|
| catalog | str | Catálogo base. |
| table_path | str | Ruta esquema.tabla. |
get_schema_root_location
Consulta DESCRIBE SCHEMA EXTENDED y extrae RootLocation.
| Parámetro | Tipo | Descripción |
|---|---|---|
| spark | SparkSession | None | Sesión opcional. |
| catalog | str | Catálogo base. |
| schema | str | Esquema dentro del catálogo. |
get_table_info
Resuelve información integral de tabla (nombre, path, existencia y metadatos de provider/type).
| Parámetro | Tipo | Descripción |
|---|---|---|
| spark | SparkSession | None | Sesión opcional. |
| full_table_name | str | None | Formato catalog.schema.table. |
| catalog/schema/table | str | None | Alternativa al parámetro anterior. |
catalog, schema, table, full_table_name, path, exists, provider, table_type.info = utils.get_table_info(full_table_name="fi_comunes.silver.dim_cliente")
print(info["full_table_name"], info["path"], info["exists"])
get_default_value_by_type
Devuelve un valor default de Spark (Column) según tipo de dato.
| Parámetro | Tipo | Descripción |
|---|---|---|
| dtype | pyspark.sql.types.DataType | Tipo de dato del campo. |