dbt Projects on Snowflake の制限、要件、および考慮事項

dbt Projects on Snowflake を使用する前に、このトピックの要件、考慮事項、および制限を精査します。

dbtプロジェクト構成の制限、要件、および考慮事項

次の要件、考慮事項、および制限は、dbt Projects on Snowflake でサポートされているdbtプロジェクト構成に適用されます。

  • dbt Coreプロジェクトのみがサポートされています。dbt Cloudプロジェクトはサポートされていません。dbt Projects on Snowflake はdbt-coreバージョン1.9.4とdbt-snowflakeバージョン1.9.2を実行します。既存のdbtプロジェクトをSnowflakeに移行する場合は、dbtバージョンをSnowflakeバージョンと合わせる必要はありません。

  • Snowflakeワークスペースの各dbtプロジェクトフォルダーには、Snowflakeの プロジェクトのためのターゲットとなる warehousedatabaseschema および role を指定する profiles.yml ファイルが含まれている必要があります。その typesnowflake. に設定する必要があります。dbtには account および user が必要ですが、dbtプロジェクトは現在のアカウントとユーザーコンテキストをもとにSnowflakeで実行されるため、これらは空または任意の文字列のままにすることができます。

  • ワークスペース内のdbtプロジェクトでは、フォルダー構造に20,000個を超えるファイルを含めることはできません。この制限には、target/dbt_packages/logs ディレクトリを含むdbtプロジェクトディレクトリとサブディレクトリ内のすべてのファイルが含まれます。ワークスペース内からdbtプロジェクトが実行されると、そこにログファイルが保存されます。

ストアドプロシージャの制限、要件、および考慮事項

ストアドプロシージャを使用して EXECUTEDBTPROJECT を呼び出す場合、呼び出し元権限ストアドプロシージャを使用します。詳細については、 CREATE PROCEDURE および ストアドプロシージャの作成 をご参照ください。

テレメトリー、ログ、トレースの制限、要件、および考慮事項

次の要件、考慮事項、および制限は、Snowflake上のdbtのテレメトリ、ログ、およびトレースに適用されます。

  • dbt Projects on Snowflake のワークスペースは標準出力(stdout)が動的にストリームされず、標準出力はコマンド完了時にのみ表示可能です。

  • ログとトレースを表示するには、dbtプロジェクトオブジェクトの LOG_LEVEL および TRACE_LEVEL を設定する必要があります。詳細については、 Snowflakeでのdbtプロジェクトのアクセス制御 および Snowflakeでdbtプロジェクトを監視する をご参照ください。

  • デフォルトでは、Snowflakeはデフォルトの SNOWFLAKE.TELEMETRY.EVENTS テーブルでテレメトリーを収集します。アカウントのイベントテーブルとしてカスタムイベントテーブルが設定されている場合、テレメトリーデータはそこに収集されます。Enterprise Editionアカウントを使用する場合、イベントテーブルを作成してテレメトリーデータを収集し、dbtプロジェクトオブジェクトがデプロイされたデータベースに関連付けることができます。詳細については、 イベントテーブルの概要 をご参照ください。