既存のdbtプロジェクトの情報の表示と管理

このトピックでは、既存のdbtプロジェクトオブジェクトの構造とメタデータを探索する方法について説明します。これには、プロジェクトの DAG の表示、モデルとソースの詳細の検査、dbtプロジェクトの実行が含まれます。

プロジェクトの DAG を閲覧してモデルのリネージと依存関係を確認する

有向非巡回グラフ(DAG)はdbtモデルが互いにどのように依存しているかを示すものであり、データリネージの可視化により次のことを可能にします。

  • モデルがどこに構築されているか(データベーススキーマ)、どのように実体化しているか、どのような上流と下流の依存関係があるかを確認します。

  • 非効率なモデル設計を見つけて改善することで、より優れたパフォーマンスとスケーラビリティをサポートします。

Snowsight でプロジェクトDAGを閲覧するには、 Databases » データベース » スキーマ » dbt Projects にナビゲートしてプロジェクトを選択します。プロジェクトの詳細ページにはモデルの Graph とその関係とともにプロジェクトの Descriptiondbt Project definition および Privileges が表示されます。

Graph で、モデルノードをクリックして、モデル、ソース、またはテストの詳細(コンパイル済みのSQLおよび構成)をDAGから直接調査します。

Tip

ワークスペースで作業している場合は、ワークスペースエディターから Connect » View project を選択して、プロジェクト詳細ページにアクセスすることもできます。詳細については、 Workspaces for dbt Projects on Snowflake をご参照ください。

DAGからのモデルの詳細の確認

DAGでモデルノードを選択すると、モデル詳細ビューが開き、次が表示されます。

  • モデルの型、ファイルパス、ターゲットオブジェクト、行数、列数。

  • モデルの説明(dbtプロジェクトで定義されている場合)。

  • 上流と下流の依存関係をリストし、それらの間をナビゲートするためのリンクを含むモデル系列。

  • モデルのソースとコンパイル済みのSQL。

DAGからモデルを実行する

モデルノードの ... メニューを選択して、dbtプロジェクトのサブセットをDAGから直接実行できます。。次の実行オプションを使用できます。

メニューオプション

実行内容

同等の --select フラグ

Execute model

選択したモデルのみ

--select model_name

Execute model+

モデルおよびすべての下流の依存関係

--select model_name+

Execute +model

モデルおよびすべての上流の親

--select +model_name

Execute +model+

モデル、その親、その子

--select +model_name+

任意のオプションを選択すると、 Additional flags フィールドに対応する --select 値が事前入力された Execute dbt project ダイアログが開きます。ダイアログから、次を実行できます。

  • RunTest 、または Build などの操作を選択する。

  • プロファイルターゲットを選択する(例えば dev または prod )。

  • 選択範囲を絞りたい場合は、実行する前にフラグを編集してください。

SQLとSnowflake CLIでは、 + グラフ演算子を備えた同じ --select 構文を使用できます。

EXECUTE DBT PROJECT my_dbt_project
  ARGS = 'build --select +stg_customers+ --target dev';

サポートされているdbtコマンドとフラグの詳細については、 サポートされているdbtコマンドとフラグ をご参照ください。

dbtプロジェクトオブジェクトのプロパティを表示する

dbtプロジェクトオブジェクトについてSnowflakeが保存するメタデータを表示して、そのオブジェクトの名前、所有者、デフォルトのバージョン、およびそのファイルが存在するSnowflakeの内部 snow://dbt/... ステージを確認します。

特定のdbtプロジェクトのプロパティ(名前、所有者、コメントなど)を表示するには、次の例に示すように DESCRIBE DBT PROJECT コマンドを使用します。

DESCRIBE DBT PROJECT my_dbt_project;

出力には、オブジェクトの名前、所有者、コメント、バージョン管理の詳細、外部アクセス統合が表示されます。詳細については、 DESCRIBE DBT PROJECT をご参照ください。

すべてのdbtプロジェクトを表示する

アクセス可能なすべてのdbtプロジェクトオブジェクトと主要なメタデータを表示したい場合は、SHOW DBT PROJECTS を使用します。

SHOW DBT PROJECTS IN DATABASE mydb;

出力には、各オブジェクトのデータベース、スキーマ、所有者、コメント、作成日と最終更新日、バージョン管理の詳細、外部アクセス統合が表示されます。詳細については、 SHOW DBT PROJECTS をご参照ください。

または、 snow dbt リスト コマンドを使用することもできます。詳細については、 使用可能なすべてのdbtプロジェクトオブジェクトのリスト をご参照ください。