Lakeflow 宣言型パイプラインの制限事項
以下は、パイプラインを開発する際に知っておく必要があるLakeflow宣言型パイプラインの制限事項です。
-
Databricksワークスペースの 1 つのブリッジ ラインの更新は 200 に制限されています。 1 つのパイプラインに含めることができるデータセットの数は、パイプラインの構成とワークロードの複雑さによって決まります。
-
Lakeflow 宣言型パイプライン データセットは一度だけ定義できます。 このため、これらのデータセットは、すべてのLakeflow宣言型パイプラインで 1 つの操作のターゲットにしかなれません。 例外は、追加フロー処理を備えたストリーミングテーブルで、これにより、複数のストリーミング ソースからストリーミングテーブルに書き込むことができます。 複数のフローを使用して 1 つのターゲットに書き込むを参照してください。
-
ID 列には次の制限があります。Delta テーブルの ID 列の詳細については、 「Delta Lake で ID 列を使用する」を参照してください。
- AUTO CDC処理の対象となるテーブルでは、ID 列はサポートされません。
- ID 列は、マテリアライズドビューの更新中に再計算される場合があります。 このため、 Databricks では、 Lakeflow 宣言型パイプラインの ID 列をストリーミングテーブルでのみ使用することをお勧めします。
-
Lakeflow宣言型パイプラインから公開されたマテリアライズドビュー とストリーミングテーブル (Databricks SQLによって作成されたものを含む) には、Databricksクライアントとアプリケーションのみがアクセスできます。ただし、マテリアライズドビューとストリーミングテーブルに外部からアクセスできるようにするには、 Lakeflow 宣言型パイプライン
sink
API を使用して、外部 Delta インスタンス内のテーブルに書き込むことができます。 「 シンクを使用してレコードを外部サービスにストリームする Lakeflow 宣言型パイプラインを使用する」を参照してください。 -
Unity Catalogパイプラインの実行とクエリに必要な Databricksコンピュートには制限があります。Unity Catalog に発行するパイプラインの 要件 を参照してください。
-
Delta Lake タイムトラベル クエリはストリーミングテーブルでのみサポートされ、マテリアライズドビュー で はサポートされていません。 Delta Lake テーブル履歴の操作を参照してください。
-
Lakeflow宣言型パイプラインによって作成されたマテリアライズドビューとストリーミングテーブルでIceberg読み取りを有効にすることはできません。
-
pivot()
機能はサポートされていません。Spark のpivot
操作では、入力データを出力スキーマのコンピュートに一括して読み込む必要があります。この機能は、宣言型パイプラインではサポートされていません Lakeflow 。