🛠️

dbt の基本コマンド

に公開

1. dbt init:プロジェクト初期化

まずはプロジェクト作成。

dbt init my_project
フォルダ構成(models/, dbt_project.yml など)が自動生成されます。

2. dbt debug:接続確認

設定がうまくいってるか確認したいときに。

dbt debug

GCPやSnowflakeの認証エラーで詰まりがちな人は、まずこれ。

3. dbt run:モデルの実行

modelsディレクトリ内のSQLファイルを実行して、実際にデータを作成。

dbt run

よくあるミス:Jinja2構文エラーや依存関係の記述ミス。

4. dbt build:run+test+docsの全部入り

dbt build

run: モデルを実行

test: テストを実行

docs generate: ドキュメント生成

snapshot: スナップショット適用

5.キャッシュが古い場合

dbt clean

6. dbt deps:パッケージの依存関係取得

パッケージ(例:dbt-utilsなど)を使うときに。

dbt deps

packages.yml に記載した依存ライブラリをインストールします。

7. dbt test:データ品質テストの実行

例えば、nullが入ってはいけない列などにテストを設定可能。

dbt test

schema.ymlで設定したテスト(not_null, unique, relationshipsなど)を実行。

8. dbt docs generate & dbt docs serve

ドキュメントをHTMLで生成&ローカルで表示。

dbt docs generate
dbt docs serve

ブラウザで依存関係やモデルの説明が確認できます。

9. Jinjaテンプレート:{{ ref('model_name') }} は必須

SQL内で他のモデルを参照するときは ref() を使うのがdbt流。


select * from {{ ref('my_model') }}

依存関係グラフを構築する上で、これが超重要。

10. よく使う構成ファイル

dbt_project.yml:プロジェクトのルート設定
profiles.yml:接続情報(GCP, Snowflakeなど)

Discussion