データマネジメントの学校
← コースに戻る

未ログインのため、この講座の進捗は記録されません。ログインすると記録が残るようになります。

dbtプロジェクトの構造

dbtプロジェクトは、いくつかの決まったディレクトリとYAML設定ファイルで構成される。

  • dbt_project.yml: プロジェクト全体の設定ファイル。プロジェクト名やmaterializationのデフォルト設定などを記述する
  • models/: モデル(SELECT文の.sqlファイル)を置くディレクトリ。dbtプロジェクトの中心
  • seeds/: CSVファイルを置くディレクトリ。dbt seedコマンドでウェアハウスにテーブルとして読み込まれる
  • snapshots/: 変更を追跡したいテーブルのスナップショット定義を置くディレクトリ
  • macros/: Jinjaマクロ(再利用可能なSQLの部品)を置くディレクトリ
  • tests/: singular test(個別のカスタムSQLテスト)を置くディレクトリ

このうちmodels/が最も中心的なディレクトリで、実務ではさらにstaging/(生データに近い薄い変換)やmarts/(分析用に整えた最終形)のようなサブディレクトリに分けて管理することが多い。