dbtとは?
dbt(data build tool:ディービーティー)とは、データウェアハウス上でSQLを使ってデータ変換を行うオープンソースツールです。ELT(Extract, Load, Transform)プロセスの「T(Transform:変換)」を担当し、データの抽出(E)や格納(L)は他のツール(Fivetran、Airbyte等)に任せます。
dbtの最大の特徴は、SQLのSELECT文を書くだけでテーブルやビューが自動生成される点です。複雑なデータ変換をソフトウェア開発の手法(バージョン管理、テスト、CI/CD)で管理できるため、「データ変換のソフトウェアエンジニアリング」と呼ばれています(FLYWHEEL)。
dbtが解決する課題
| 従来の課題 | dbtによる解決 |
|---|---|
| SQL変換ロジックが散在・属人化 | Gitで一元管理、コードレビューが可能 |
| 変換結果の品質が保証されない | 自動テスト(NOT NULL、一意性、参照整合性) |
| 変換の依存関係が不明 | DAG(有向非巡回グラフ)で依存関係を自動可視化 |
| ドキュメントが更新されない | コードからドキュメントを自動生成 |
dbtの仕組み
モデル(Model)
dbtの中核概念です。1つのモデル=1つのSQLファイル(SELECT文)で、実行するとDWH上にテーブルまたはビューが生成されます。
Jinja+SQLテンプレート
SQLにJinja(テンプレートエンジン)を組み合わせ、条件分岐、ループ、マクロ(再利用可能な関数)を記述できます。これにより複雑な変換ロジックをDRY(Don't Repeat Yourself)に保てます。
テスト
各モデルに対して自動テストを定義できます。「このカラムはNULLを含まない」「このカラムの値は一意」「この外部キーは参照先に存在する」などのテストをYAMLで宣言するだけで自動実行されます。
ドキュメント自動生成
dbt docs generateコマンドで、全モデルの説明、カラム定義、依存関係グラフ(DAG)を含むWebドキュメントが自動生成されます(primeNumber)。
dbt Coreとdbt Cloudの違い
| 比較項目 | dbt Core | dbt Cloud |
|---|---|---|
| 提供形態 | OSS(無料) | SaaS(有料) |
| 実行環境 | CLI(ローカル/CI環境) | Web IDE+スケジューラ |
| 料金 | 無料 | 月額$100〜/開発者 |
| スケジューリング | 自前で構築(cron、Airflow等) | 組み込みスケジューラ |
| 適した組織 | エンジニアリソースがある組織 | マネージドで運用したい組織 |
dbtが対応するDWH
- BigQuery(Google Cloud)
- Snowflake
- Amazon Redshift
- Databricks
- PostgreSQL
- DuckDB(ローカル開発用)
モダンデータスタックにおけるdbtの位置づけ
モダンデータスタック(MDS)とは、クラウドネイティブなデータ基盤の構成要素を組み合わせたアーキテクチャです。dbtはMDSの変換レイヤーとして中核的な役割を担います。
- 抽出・格納(E/L):Fivetran、Airbyte
- 変換(T):dbt
- DWH:BigQuery、Snowflake、Redshift
- BI・可視化:Looker、Tableau、Metabase
- オーケストレーション:Airflow、Dagster(NTTデータ)
よくある質問(FAQ)
Q. dbtを使うのにプログラミングスキルは必要ですか?
SQLが書ければ基本的な利用が可能です。Jinjaテンプレートやマクロの作成にはやや高度な知識が必要ですが、多くのデータアナリストがSQLスキルだけでdbtを活用しています。
Q. dbtの学習はどこから始めるべきですか?
公式の「dbt Learn」コース(courses.getdbt.com)が無料で提供されています。BigQueryやSnowflakeの無料枠と組み合わせて、実際にモデルを作成してみるのがおすすめです(DevelopersIO)。
Q. dbtとAirflowの違いは?
dbtはSQL変換に特化したツール、Airflowはワークフロー全体(抽出→変換→格納→通知)のオーケストレーションツールです。dbtをAirflowから呼び出す構成が一般的です。
まとめ
dbt(data build tool)は、SQLベースでデータ変換を管理するモダンデータスタックの中核ツールです。バージョン管理、自動テスト、ドキュメント自動生成により、「データ変換のソフトウェアエンジニアリング」を実現します。2026年はdbt+クラウドDWHの組み合わせがデータ基盤の標準構成となっています。
renueでは、dbt・BigQuery・Snowflakeを活用したモダンデータ基盤の構築を支援しています。データ基盤のご相談はお問い合わせください。
