Compartir a través de


Uso de canalizaciones declarativas de Spark de Lakeflow con el metastore heredado de Hive

En este artículo se detallan las configuraciones y consideraciones específicas de las canalizaciones declarativas de Lakeflow Spark configuradas para publicar datos en el metastore de Hive heredado. Databricks recomienda usar el catálogo de Unity para todas las canalizaciones nuevas. Consulte Uso del catálogo de Unity con canalizaciones.

Nota:

En este artículo se describe la funcionalidad del modo de publicación predeterminado actual para las canalizaciones. Las canalizaciones creadas antes del 5 de febrero de 2025 pueden usar el modo de publicación antiguo y el esquema virtual LIVE. Consulte el esquema LIVE (heredado).

Consulta de tablas de streaming y vistas materializadas en el metastore de Hive heredado

Una vez completada una actualización, puede ver el esquema y las tablas, consultar los datos o usar los datos en aplicaciones de bajada.

Una vez publicadas, las tablas de Lakeflow Spark Declarative Pipelines se pueden consultar desde cualquier entorno que tenga acceso al esquema de destino. Esto incluye Databricks SQL, notebooks y otras canalizaciones declarativas de Lakeflow Spark.

Importante

Al crear una configuración target, solo se publican tablas y metadatos asociados. No se publican vistas en el metastore.

Configurar una canalización para publicar en el metastore de Hive

Para publicar en el metastore heredado de Hive, elija Usar Metastore de Hive en Opciones avanzadas al crear una nueva tubería de datos (es posible que deba seleccionar Ver más para ver la opción). Debe especificar un esquema de destino predeterminado al publicar en metastore de Hive. Consulte Configuración de canalizaciones.

Especificar una ubicación de almacenamiento

Puede especificar una ubicación de almacenamiento para una canalización que se publica en el metastore de Hive. La motivación principal para especificar una ubicación es controlar la ubicación de almacenamiento de objetos para los datos escritos por la canalización. Databricks recomienda especificar siempre una ubicación de almacenamiento para evitar escribir en la raíz de DBFS.

Dado que todas las tablas, los datos, los puntos de control y los metadatos de las canalizaciones declarativas de Spark de Lakeflow se administran completamente mediante canalizaciones declarativas de Spark de Lakeflow, la mayoría de las interacciones con los conjuntos de datos de canalizaciones declarativas de Spark de Lakeflow se producen a través de tablas registradas en el metastore de Hive o en el catálogo de Unity.

Configuración de almacenamiento en la nube

Para acceder Azure Storage, debe configurar los parámetros necesarios, incluidos los tokens de acceso, mediante la configuración spark.conf en las configuraciones del clúster. Para obtener un ejemplo de configuración del acceso a una cuenta de almacenamiento de Azure Data Lake Storage (ADLS), consulte Acceso seguro a las credenciales de almacenamiento con secretos en una canalización.

Uso del registro de eventos para canalizaciones de metastore de Hive

Si la canalización publica tablas en el metastore de Hive, el registro de eventos se almacenará en /system/events, bajo la ubicación de storage. Por ejemplo, si ha configurado el valor storage de la canalización como /Users/username/data, el registro de eventos se almacena en la ruta de acceso /Users/username/data/system/events en DBFS.

Si no ha configurado el valor storage, la ubicación predeterminada del registro de eventos es /pipelines/<pipeline-id>/system/events en DBFS. Por ejemplo, si el identificador de la canalización es 91de5e48-35ed-11ec-8d3d-0242ac130003, la ubicación de almacenamiento es /pipelines/91de5e48-35ed-11ec-8d3d-0242ac130003/system/events.

Puede crear una vista para simplificar la consulta del registro de eventos. En el ejemplo siguiente, se crea una vista temporal llamada event_log_raw. Esta vista se usa en las consultas de registro de eventos de ejemplo incluidas en este artículo:

CREATE OR REPLACE TEMP VIEW event_log_raw
AS SELECT * FROM delta.`<event-log-path>`;

Reemplace <event-log-path> por la ubicación del registro de eventos.

Cada instancia de una ejecución de canalización se denomina actualización. A menudo, querrá extraer información de la actualización más reciente. Ejecute las consultas siguientes para buscar el identificador de la actualización más reciente y guardarlo en la vista temporal latest_update_id. Esta vista se usa en las consultas de registro de eventos de ejemplo incluidas en este artículo:

CREATE OR REPLACE TEMP VIEW latest_update AS
SELECT origin.update_id AS id
FROM event_log_raw
WHERE event_type = 'create_update'
ORDER BY timestamp DESC
LIMIT 1;

Puede consultar el registro de eventos en un cuaderno de Azure Databricks o en el editor de SQL. Use un cuaderno o el editor de SQL para ejecutar las consultas de registro de eventos de ejemplo.

Cuadernos de código fuente de canalización de ejemplo para áreas de trabajo sin catálogo de Unity

Puede importar los siguientes notebooks en un área de trabajo de Azure Databricks sin habilitar Unity Catalog y usarlos para implementar canalizaciones declarativas de Lakeflow Spark. Importe el cuaderno del idioma elegido y especifique la ruta de acceso en el campo Código fuente al configurar una canalización con la opción de almacenamiento de metastore de Hive. Consulte Configuración de canalizaciones.

Empiece con

Obtener el cuaderno

Empiece con

Obtener el cuaderno