2024-01-01から1年間の記事一覧

アドホックに作ったdbtのモデルのライフサイクルを管理する

dbt

背景: アドホックなモデルをいつまでも残したくない dbtを使う場合、ある程度規則に沿ったレイヤリングの元に運用されることが多いと思う(例: staging / raw vault / fact & dim / martなど)。品質が必要な場合はこのレイヤリングに沿ってモデルを作ることに…

最近の外部発表 / 登壇 / 寄稿などの紹介

外部登壇は半年に一回くらいが丁度いいと思ってる人間ですが、最近は色々重なって怒涛のアウトプット月間になってしまったので、やったことをまとめてみます。 Dataplexとdbt-osmosisを活用した「がんばらない」データカタログとメタデータ管理の運用@Data E…

iTermをやめてVSCodeのターミナルに寄せる

背景 担保したいこと 1: ホットキーで一撃で呼び出せる 2: ウィンドウを透過させてターミナルと他のウィンドウを同時に眺められること 調査したこと & 解決方法 ホットキーで呼び出せるか => hammerspoonで割り当てで対応 ターミナルの透過 => 無理そうなの…

個人的なdbtの推しポイントを書いてみる

dbt

dbtや同じ系統のDataformなど、ELTの特にTransform部分に強みを持つツールを使い始めて大体3年になる。主観だけど、それなりに使い倒している部類だと思う。 開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog dbtを触ってみた感…

dbtのnot_nullテストはオプションによって実行されるSQLが異なる

dbt

dbtを使っていなら、not_nullテストは何度も書くことになると思う。このテストを書いていて「手元では通るが、CIでは通らない」という一見謎現象に思えることにブチ当たったのでメモ。 起きた現象 手元からnot_nullテストを書いた。コンパイル済みのSQLは以…

dbtで見やすいER図を生成する

背景: dbtを使っていてもER図は欲しい! どうやってER図を生成するか どうやってER図を見やすくするか まとめ 背景: dbtを使っていてもER図は欲しい! dbtはモデル間のリネージなど可視化が得意なツールではありますが、万能なわけではありません。モデルの生…

DWH改善に生かす! 入門elementary

前提: これは何? dbtを使ったデータプロダクトを作っている社内のチームメンバー向けに書いた勉強会用のドキュメントです 社外に公開できるように少し抽象化して書いてます DWHに限らずdbtを使ったデータプロダクトで生かせる話ですが、分かりやすさのために…

elementaryを使ってデータの正確性に関わるデータ品質の実装状況を可視化する

背景: データ品質を可視化したい 実装: elementaryを使って、正確性のデータ指標を可視化する 実例: ダミーデータを使った可視化 まとめ 背景: データ品質を可視化したい 運用しているDWHでデータ品質にまつわる問題で苦労したことがない人は少ないと思いま…

dbtのモデルとLooker Studioのレポートの依存関係をexposureで表現して、データ管理を効率的に行なおう

シリーズの第三弾です。読者の宿題にしてたけど、誰も書いてくれなさそうだったので結局自分で書きました。 背景 Looker StudioはGoogle Workspaceを使っていれば基本的に無料で使えますし*1、権限管理にGoogle Groupとも連携できるので、人気のBIの一つだと…

dbtのモデルとConnected Sheetsの依存関係をexposureで表現して、データ管理を効率的に行なおう

以下のConnected Sheets版です。これはかなり便利なものができたと、自画自賛してます。 背景 Connected Sheetsをdbtのexposureとして取り込む 見所 Connected Sheetsからのクエリか判断する BigQuery Scripting経由で発行されたクエリでもreferenced_tables…

Terraform経由でBigQueryのデータセットを管理する際に必要なメタデータが入力されていることをConftestで担保する

背景 ConftestによるTerraformのポリシーテスト 例: ConftestでBigQueryのデータセットのlabelにownerが設定されていることをテストする 実際の業務への取り込み方 背景 権限管理を含め、BigQueryのデータセットの管理をTerraformで行なっている人は多いと思…