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

Looker Studioの魅力と便利な使い方を紹介します

初めて使ったBIツールはLooker Studioのid:syou6162です。これまでTableau / Looker(≠ Looker Studio) / Metabase / Redash / Connected Sheetsなど色々なBIツールを触ってきましたが、不満は色々ありつつも個人的に一番しっくりきて愛着があるのはLooker St…

BigQueryにexportしたGA4のシャーディングテーブルのスキーマに関するハマリ所

前提: GA4とシャーディングテーブル GA4のイベントデータを仕事で取り扱う人は多いと思う。BigQueryにexportする場合、GA4のイベントデータは[PREFIX]_YYYYMMDDのシャーディングテーブルになっており、さらにその中でevents_YYYYMMDDとevents_intraday_YYYYM…

dbt-project-evaluatorで独自のレイヤリングの制約をCI上で表現する

dbt

背景: 組織独自のレイヤリング構造の制約をCI上で表現したい 課題: CI時にレイヤリングの情報をどう取得するか 解決方法: dbt-project-evaluatorが内部で構築するテーブルを利用する 補足: その他の設定 背景: 組織独自のレイヤリング構造の制約をCI上で表現…

Google Cloud Champion Innovatorに選ばれました

先日のdbtのCommunity spotlightに引き続き、めでたいことが続いてありがたい限りですね。Google Cloud Champion Innovatorに選ばれました。 https://cloud.google.com/innovators/champions/directory?hl=ja&text=yasuhisa より 「そもそもChampion Innovat…

BigQueryを補完する技術: DuckDBとDataflowでのデータ処理入門

背景 & Disclaimer DuckDB 概念や代表的なユースケース 使ってみる 1週間〜一ヶ月などある程度の期間、分析で使いたい場合 便利なCLIツールとして使う 所感 参考 Dataflow 代表的なユースケース 具体例 参考 背景 & Disclaimer BigQueryは非常に便利で、BigQ…

dbtのCommunity spotlightに選ばれました

dbt

Twitterではもう言ってましたが、めでたいやつです。 dbtのLinkedInの投稿 そもそも「Community spotlightとは何ぞや?」という話ですが The dbt Community is where analytics engineering lives and grows, and you're a part of it! Every quarter we'll b…

dbtのrun-operationの出力情報を制御する

dbt

背景: dbt run-operationは便利 dbtのサブコマンドであるrun-operationは結構便利で、標準のコマンドでサポートされていないようなオペレーションを簡単に実行することができる。例えば、以下のようなものは日常的に自分は利用している。 課題: 出力形式がち…

複数の企業でデータエンジニアとして求められたスキル

最近「ああ、これ前職でも前々職でもやったことあるなぁ」という仕事があった。データエンジニア(やその関連職種)として働き始めて約5年、3社でフルタイムとして働いてきて「このスキルは業界や組織規模が変わってもデータエンジニアとしてスキルを求められ…

アドホックに作った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で行なっている人は多いと思…