メインコンテンツまでスキップ

パイプライン データセットでALTERステートメントを使用する

LakeFlow Pipelinesは、SQLまたはPythonで作成する専用のソースコード、例えばLakeflow Pipelines Editorで定義されます。

LakeFlow Connect 、データを取り込むパイプラインを作成し、取り込みストリーミング テーブルを作成します。

Databricksは、Databricks SQL と呼ばれるSQL環境も提供しています。Databricks SQLを使用して、LakeFlowの外部のパイプライン機能でマテリアライズドビューとストリーミングテーブルを作成できます(スタンドアロンパイプラインを参照してください)。通常、Databricks SQLはLakeFlow Pipelinesの更新作成には使用されません。

ただし、LakeFlow Pipelines、Databricks SQL、またはLakeflow Connect のいずれかで作成されたデータセットのプロパティを変更するには、Databricks SQL で ALTER SQL ステートメントを使用できます。Lakeflow パイプラインデータセット、スタンドアロンパイプラインデータセット、またはLakeflow Connect データセットのいずれを修正する場合でも、これらの SQL ステートメントを任意の Databricks SQL 環境から使用できます。

Databricks SQLで作成されたスタンドアロンのパイプラインによってサポートされるデータセットの場合、SET OWNER TOを使用して所有者を変更することもできます。

注記

LakeFlow Pipelinesで定義されているデータセットのスケジュールまたはTriggerをALTERステートメントで変更することはできません。

制限事項: パイプラインの更新と変更は ALTER

ALTERステートメントがパイプラインで作成されたデータセットの定義と競合する場合があります。パイプライン内のテーブルまたはビューを定義する SQL は、更新ごとに再実行されます。これにより、 ALTERステートメントで行った変更を元に戻すことができます。

たとえば、次のようなマテリアライズドビューを定義するSQLステートメントがあるとします。

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;

次に、次のように、 ALTERステートメントを使用してssn列からマスクを削除してみます。

SQL
ALTER MATERIALIZED VIEW masked_view ALTER COLUMN ssn DROP MASK;

マスクは削除されますが、次回マテリアライズドビューが更新されるときに、 SQL定義によってマスクが再び追加されます。

マスクを安全に削除するには、SQL 定義を編集してマスクを削除し、 ALTERコマンドを実行してマスクをDROPする必要があります。

注記

LakeFlow Pipelinesで定義されているパイプラインの定義を編集するには、パイプラインエディターを使用してパイプラインソースを編集します。スタンドアロンパイプラインの定義を編集するには、任意の Databricks SQL 環境で変更された SQL ステートメントを実行します。

追加のリソース