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

パイプライン データセットで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を使用して所有者を変更することもできます。

SET OWNER TO グループを所有者に設定できません。グループをマテリアライズドビューまたはストリーミングテーブルの所有者にするには、ワークスペース UI を使用します。See Set the run-as identity to a グループ.

注記

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パイプラインを編集するには、パイプラインエディターでそのソースを編集します。スタンドアロンパイプラインの定義を編集するには、任意のDatabricks SQL環境で変更したSQLステートメントを実行します。

追加のリソース​