将
重要
此功能目前以公共预览版提供。
Lakeflow Spark 声明性管道(SDP)在特定于 SDP 的源代码中定义管道。 可以在 SQL 或 Python 中编辑管道源,例如,在 Lakeflow 管道编辑器中。
Azure Databricks 还提供一个名为 Databricks SQL 的 SQL 环境。 可以使用不依赖 SDP 的管道功能通过 Databricks SQL 创建物化视图和流表(请参阅 在 Databricks SQL 中使用管道)。 通常,Databricks SQL 不与 Lakeflow Spark 声明性管道一起使用。
但是,可以使用 ALTER Databricks SQL 中的 SQL 语句修改使用 SDP 或 Databricks SQL 创建的数据集的属性。 无论是修改 SDP 数据集还是 Databricks SQL 管道数据集,都可从任何 Databricks SQL 环境中使用这些 SQL 语句。
- 流式处理表 - ALTER STREAMING TABLE
- 具体化视图 - ALTER MATERIALIZED VIEW
注释
不能使用 ALTER 语句修改在 SDP 中定义的数据集的计划或触发器。
限制:使用ALTER进行的管道更新和更改
在某些情况下, ALTER 语句与管道创建的数据集的定义冲突。 定义管道中的表或视图的 SQL 会在每次更新时重新运行。 这可以撤消使用 ALTER 语句所做的更改。
例如,如果你有一个定义具体化视图的 SQL 语句,如下所示:
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;
然后,尝试使用ssn语句从ALTER列中删除掩码,如下所示:
ALTER MATERIALIZED VIEW masked_view ALTER COLUMN ssn DROP MASK;
删除掩码,但下次更新具体化视图时,SQL 定义会将其添加回去。
若要安全删除掩码,必须编辑 SQL 定义以删除掩码,然后将命令运行 ALTER 到 DROP 掩码。
注释
若要编辑 SDP 中定义的管道的定义,请使用 管道编辑器编辑管道源。 若要编辑 Databricks SQL 中定义的管道的定义,请在任何 Databricks SQL 环境中运行修改后的 SQL 语句。