0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

dbtチュートリアルメモ

Posted at

はじめに

dbt下記のチュートリアルをやってみた際のメモ(Chapter 05まで)
非常にわかりやすく、どういった機能があるのかを知ることができるのでおすすめです。

dbt Cloudのセットアップ

  • Bigqueryの管理者アカウントのJSON形式の鍵をアップロードすることで簡単に連携できる。
  • Githubと連携することで後に実装するモデル開発ファイルやテストファイルを管理しやすくなる
    • 特にdbt cloud上からブランチ作成やpush可能なのが便利

チュートリアル:モデル開発の基本

  • dbtでは、SQLで書かれたデータの抽出を行いテーブルのデータになる処理のまとまりを「モデル」と呼ぶ。
  • 左サイドメニューの「initialize your project」を押すことで必要なフォルダ・ファイルが作成される。
    • 2023/01/29時点ではデフォルトでdataフォルダがなく、seedsフォルダがある。
    • models配下にexampleのフォルダがありサンプルが既に存在している。dbt runを行うとこのexample配下も実行されてしまうので注意。
  • seedsフォルダ配下にcsvファイルを格納してdbt seedを実行することでBigQueryにcsvデータが格納されたテーブルが作成される。1つのcsvファイルにつき1テーブル。
  • モデルをデプロイするときはdbt run。実行するとBigQuery上に作成したモデル(sql)が反映される。
  • {{ ref(モデル名) }}とすることで別モデルの結果を参照できる。
  • Lineageタブでデータリネージ(モデル間の構造)が確認可能。

チュートリアル:テストとドキュメント

  • models/schama.ymlを作成して、内部にテストケースを記載することでスキーマテストできる。
  • テスト例としては、対象カラムがuniqueかnot_nullか等を確認できる。また、対象カラムが許容している値かどうかや指定したカラムと結合しているかどうかのテストができる。
  • テストは拡張することも可能。dbt-utils packageのような外部のパッケージされているものも使用可能。
  • models/schama.ymldescription要素を書き足すことでドキュメント化可能。dbt docs generateで生成して左サイドメニューの本マーク(view docs)で確認できる。

チュートリアル:デプロイの設定

  • Enviromentを作成して、そのEnviromentに対してジョブが設定できる。
  • ジョブはdbt testdbt runなどdbtコマンドが指定できる。
  • スケジュールの設定も可能。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?