😊

【dbt Docs】Guides - Managing environments

2022/03/24に公開

Managing environments (環境の管理)

Managing environments

ソフトウェアの開発では、開発環境、ステージング環境、本番環境など、開発がエンドユーザに影響を与えないように、開発・テストを行うような開発体制になっていることがほとんどかと思います。

大抵の場合

  • prod:本番 ユーザに提供する
  • dev: 開発 エンジニアがコードを開発・テストしたりする環境
    になっていて、不具合がないことが確認できたら、本番にデプロイする流れになると思います。

How do I maintain different environments with dbt?

(dbtで様々な環境を用意するにはどうしたらよいか)

dbtでは、プロファイル内のtargetを使うことで使うとそれぞれの環境を用意することがとても簡単にできる。ローカルで開発する場合は、target=devになり、そのプロファイルでdev環境にデプロイされる。
で、テストが通って、問題がないようならtarget=prodで、本番環境にデプロイする。

ターゲットごとに、ウェアハウスの環境(例えば、スキーマ名)を分けることが一番手っ取り早い。

開発時に、複数のdbtユーザがコードを書くとすると、開発時のスキーマ名をdbt_<username>にしたりするのが良さそう。
それでよければ、レビューを通って、本番にマージして、Prodにデプロイ

Discussion