Compartir a través de


Uso de Auto Loader con Unity Catalog

Auto Loader puede ingerir datos de manera segura desde ubicaciones externas que están configuradas con Unity Catalog. Para más información sobre cómo conectar de forma segura el almacenamiento con el catálogo de Unity, consulte Conexión al almacenamiento de objetos en la nube mediante el catálogo de Unity. Auto Loader se basa en Structured Streaming para el procesamiento incremental; para obtener recomendaciones y limitaciones, consulte Uso de Unity Catalog con Structured Streaming.

Nota:

En Databricks Runtime 11.3 LTS y versiones posteriores, puede usar Auto Loader con modos de acceso estándar o dedicados (anteriormente modos de acceso compartido y de usuario único).

El modo de lista de directorios es compatible de manera predeterminada. El modo de notificación de archivos solo se admite en entornos de computación con el modo de acceso dedicado.

Ingesta de datos desde ubicaciones externas que administra Unity Catalog con Auto Loader

Puede usar Auto Loader para ingerir datos desde cualquier ubicación externa que administre Unity Catalog. Debe tener permisos READ FILES en la ubicación externa.

Nota:

Azure Data Lake Storage es el único tipo de almacenamiento de Azure compatible con Unity Catalog.

Especificación de ubicaciones para recursos de Auto Loader para Unity Catalog

El modelo de seguridad de Unity Catalog supone que todas las ubicaciones de almacenamiento a las que se hace referencia en una carga de trabajo se administrarán mediante Unity Catalog. Databricks recomienda almacenar siempre la información de evolución de puntos de control y esquemas en ubicaciones de almacenamiento que administra Unity Catalog. Unity Catalog no permite anidar los archivos de inferencia y evolución de los puntos de control o esquema en el directorio de la tabla.

Ejemplos

En los ejemplos siguientes se supone que el usuario en ejecución tiene privilegios de propietario en las tablas de destino y las siguientes configuraciones y concesiones:

Ubicación de almacenamiento Conceder
abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data LEER ARCHIVOS
abfss://dev-bucket@<storage-account>.dfs.core.windows.net LEER Y ESCRIBIR ARCHIVOS, CREATE TABLE

Uso de Auto Loader para cargar en una tabla administrada de Unity Catalog

checkpoint_path = "abfss://dev-bucket@<storage-account>.dfs.core.windows.net/_checkpoint/dev_table"

(spark.readStream
  .format("cloudFiles")
  .option("cloudFiles.format", "json")
  .option("cloudFiles.schemaLocation", checkpoint_path)
  .load("abfss://autoloader-source@<storage-account>.dfs.core.windows.net/json-data")
  .writeStream
  .option("checkpointLocation", checkpoint_path)
  .trigger(availableNow=True)
  .toTable("dev_catalog.dev_database.dev_table"))