Utilice instrucciones ALTER con conjuntos de datos de pipeline

Las canalizaciones de Lakeflow se definen en código fuente dedicado que crea en SQL o Python, por ejemplo, en el Editor de canalizaciones de Lakeflow.

Lakeflow Connect crea pipelines que ingieren datos y generan tablas de streaming de ingesta.

Azure Databricks también proporciona un entorno SQL denominado Databricks SQL. Puede crear vistas materializadas y tablas de streaming con Databricks SQL mediante la funcionalidad de canalización fuera de Lakeflow (consulte Canalizaciones independientes). Normalmente, Databricks SQL no se utiliza para crear pipelines de actualización de Lakeflow.

Sin embargo, puede usar ALTER instrucciones SQL en Databricks SQL para modificar las propiedades de un conjunto de datos creado con canalizaciones de Lakeflow, Databricks SQL o Lakeflow Connect. Use estas instrucciones SQL desde cualquier entorno de SQL de Databricks, independientemente de si va a modificar conjuntos de datos de canalización de Lakeflow, conjuntos de datos de canalización independientes o conjuntos de datos de Lakeflow Connect.

En el caso de los conjuntos de datos respaldados por un pipeline independiente creado en Databricks SQL, también puede cambiar el propietario con SET OWNER TO.

Nota:

No se puede modificar la programación ni el activador de un conjunto de datos definido en las canalizaciones de Lakeflow mediante una instrucción ALTER.

Limitación: Actualizaciones y cambios en el pipeline realizados con ALTER

Hay casos en los que las instrucciones ALTER entran en conflicto con la definición de los conjuntos de datos creados por el pipeline. El SQL que define una tabla o vista en la canalización se ejecuta nuevamente en cada actualización. Esto puede deshacer los cambios que realice con una ALTER declaración.

Por ejemplo, si tiene una instrucción SQL que define una vista materializada, como la siguiente:

CREATE OR REPLACE MATERIALIZED VIEW masked_view (
    id int,
    name string,
    region string,
    ssn string MASK catalog.schema.ssn_mask_fn
  )
  WITH ROW FILTER catalog.schema.us_filter_fn ON (region)
  AS SELECT id, name, region, ssn
       FROM employees;

En ese caso, se intenta eliminar la máscara de la columna ssn mediante una instrucción ALTER, de la siguiente manera:

ALTER MATERIALIZED VIEW masked_view ALTER COLUMN ssn DROP MASK;

La máscara se quita, pero la próxima vez que se actualice la vista materializada, la definición de SQL la agrega de nuevo.

Para eliminar la máscara de forma segura, debe editar la definición SQL para eliminar la máscara y, a continuación, ejecutar el comando ALTER para DROP la máscara.

Nota:

Para editar la definición de una canalización definida en canalizaciones de Lakeflow, edite el origen de la canalización mediante el editor de canalizaciones. Para editar la definición de una canalización independiente, ejecute la instrucción SQL modificada en cualquier entorno de SQL de Databricks.

Recursos adicionales