タグ

dbtに関するclavierのブックマーク (39)

  • Snowflake × dbt で構築する ELT アーキテクチャ

    こんにちは!シンプルフォームの山岸です。 当社では現在、Snowflake をベースとするデータ基盤への移行に向けて、機能・非機能それぞれについて検証・構築を進めています。今回は、機能要件の中でも特に重要な要素である ELT アーキテクチャについて、具体的な実装とともにご紹介できればと思います。 アーキテクチャ 早速題ですが、移行後のデータ基盤として以下のような ELT アーキテクチャを構築しました。 プロダクト環境として product1, product2 ... のような複数の AWS アカウントが存在しているようなケースを想定します。各環境のプロダクト用 Aurora データベースを、Snowflake 環境上のスキーマとして再現します。 Snowflake 環境にデータを取り込んだ後のモデリングは dbt で行います。Staging 層から実際に利用されるテーブルを再現する部分

    Snowflake × dbt で構築する ELT アーキテクチャ
  • アジリティの高いデータ基盤を目指して

    大規模データの負債解消への道のり Lunch LT での登壇資料 https://findy.connpass.com/event/325973/

    アジリティの高いデータ基盤を目指して
  • アドホックに作ったdbtのモデルのライフサイクルを管理する - yasuhisa's blog

    背景: アドホックなモデルをいつまでも残したくない dbtを使う場合、ある程度規則に沿ったレイヤリングの元に運用されることが多いと思う(例: staging / raw vault / fact & dim / martなど)。品質が必要な場合はこのレイヤリングに沿ってモデルを作ることになるが、急なビジネス要求によってこのレイヤリングに沿わないアドホックなモデルを作らなければならない場面は現実的にそれなりにあると思う(例)。こういった要求を受け入れつつ、アドホックなモデルをいつまでも運用しない形にしたい。 アドホックなモデルがいつから運用されているか機械的に把握する ひとまずアドホックなモデルがいつから運用されているかを簡単に知りたい。アドホックなモデルの数が多い場合、それらを手動で洗い出すのは面倒なので、機械的に出したい。テーブルが洗い替えされる場合、INFORMATION_SCHEMA

    アドホックに作ったdbtのモデルのライフサイクルを管理する - yasuhisa's blog
    clavier
    clavier 2024/06/21
  • [2024年6月6日号]個人的に気になったModern Data Stack情報まとめ | DevelopersIO

    さがらです。 Modern Data Stack関連のコンサルタントをしている私ですが、Modern Data Stack界隈は日々多くの情報が発信されております。 そんな多くの情報が発信されている中、この2週間ほどの間で私が気になったModern Data Stack関連の情報を記事でまとめてみます。 ※注意事項:記述している製品のすべての最新情報を網羅しているわけではありません。私の独断と偏見で気になった情報のみ記載しております。 Data Extract/Load Fivetran 「Fivetran Managed Data Lake Service」を発表 Fivetranが新機能として、「Fivetran Managed Data Lake Service」を発表しました。 基的には、宛先にS3、Azure Data Lake Storage、Microsoft OneLa

    [2024年6月6日号]個人的に気になったModern Data Stack情報まとめ | DevelopersIO
  • dbt Semantic LayerとSteepで実現するデータ民主化 - Gaudiy Tech Blog

    はじめまして、Gaudiyでアナリティクスエンジニア副業)をしているkuwakenです。 Gaudiyでは現在、データの民主化を進めていますが、その過程でSQLを書く手間や負担、新しいBizメンバーのオンボーディングなどの面で、課題が生じていました。 今回は、その課題を解決するために導入した、dbt Semantic LayerとSteepという2つのデータ系プロダクトに関するお話をします。 1. dbt Semantic Layerの導入背景 2. Steep導入の決定理由 3. dbt Semantic Layerに関するナレッジ 3-1. ディレクトリ構造 3-2. dbt Cloud CLI 3-3. 時間のdimensionはdatetime型で揃える(BigQueryユーザーのみ) 3-4. entitiesを理解する 4. 今後やりたいこと 5. さいごに 1. dbt S

    dbt Semantic LayerとSteepで実現するデータ民主化 - Gaudiy Tech Blog
  • Terraformとdbtを活用してデータ基盤整備の生産性が向上した話

    はじめに 私が所属しているライフイズテックのデータ基盤グループで、ここ2年ほどでdbtterraformを活用してDataOpsを進め、データ基盤の整備の生産性が向上した話をまとめます。 導入前の状況と課題 弊社のデータ基盤ではデータ基盤が綺麗に整備されていることよりも、プロダクトや事業に貢献できているかを重要と考え、まずデータを使える状態にすることを目指したサービスの導入や基盤構築を行いました。 考え方としてはこちらの DWHにおけるデータモデリングで大事にしている考え方に書かれている内容に近い考え方になります。 そのため、データモデリングの前にRedashCRM AnalyticsというBIツール向けにデータレイクからデータマートを先に構築していました。 terraformdbt導入前は、図のような流れで SQLでSnowflake上にDBやスキーマなどを作成 ELTサービスとし

    Terraformとdbtを活用してデータ基盤整備の生産性が向上した話
  • 最近のデータカタログの各種機能の有無を確認してみた(2024年4月時点) | DevelopersIO

    さがらです。 ここ1~2年は新しい製品のリリースが落ち着いてきた印象ですが、Modern Data Stack界隈ではたくさんのデータカタログ製品が存在しています。 私も2年くらい前に色々触って調査したものの、この2年間での各製品のアップデートが凄まじく「どの製品がどの機能を持っているんだっけ…?」と知識が怪しくなってきてしまっている状況です。 そこで、今回改めて各製品の公式ドキュメントをベースに、最近のデータカタログの各種機能の有無を確認してみたので、記事でまとめてみます。 ※注意事項:各製品のアップデートのスピードは当に早いため、半年も経てば現時点で出来ていなかったことが出来ているようになっている可能性が高いです。最新の情報はご自身で確認の上、記事は参考程度にご利用ください。 比較対象のデータカタログ 比較対象としては、以下のデータカタログを比較します。 SaaS Atlan S

    最近のデータカタログの各種機能の有無を確認してみた(2024年4月時点) | DevelopersIO
  • ストアドプロシージャからdbtへの移行手順 #dbt | DevelopersIO

    アライアンス事業部 エンジニアグループ モダンデータスタック(MDS)チームのしんやです。 以前執筆、公開した下記のエントリは、dbtでSELECT文以外のDML/DDLを扱う時に「こういう風にSELECT文に置き換えると良いですよ」という案内、紹介をするものでした。 この中で「ストアドプロシージャの移行」に関するトピックもあったのですが、このエントリ内では情報源の紹介のみに留まる形としており、詳細な内容の紹介はしていませんでした。 ですのでその部分の紹介を当エントリで進めていこうと思います。 目次 なぜストアド・プロシージャの代わりにdbtモデルを使うのか ストアドプロシージャの問題点とは 代替案としてdbtを検討する理由 ストアドプロシージャからdbtへの移行手法 ステップ0: dbtの仕組みを少し理解する ステップ1: dbtとストアドプロシージャの違いを理解する ステップ2: スト

    ストアドプロシージャからdbtへの移行手順 #dbt | DevelopersIO
    clavier
    clavier 2024/04/11
  • 個人的なdbtの推しポイントを書いてみる - yasuhisa's blog

    dbtや同じ系統のDataformなど、ELTの特にTransform部分に強みを持つツールを使い始めて大体3年になる。主観だけど、それなりに使い倒している部類だと思う。 開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog dbtを触ってみた感想 - yasuhisa's blog dbt カテゴリーの記事一覧 - yasuhisa's blog これらのツールで巷でよく言われる データリネージの可視化ができる データに対するテストが簡単に書ける エンジニア以外の人ともコラボレーションしやすい あたりの話は耳にタコができるくらい聞いていると思うので、ニッチではあるもののそれ以外のdbtの個人的に推しなポイントをダラダラと書いてみたいと思う。データエンジニアやデータガバナンスを推進する人には共感してもらえる内容かもしれない。 推しポイント:

    個人的なdbtの推しポイントを書いてみる - yasuhisa's blog
  • dbt導入によるデータマート整備 - ZOZO TECH BLOG

    はじめに こんにちは、ML・データ部推薦基盤ブロックの栁澤(@i_125)です。私はZOZOのデータ基盤におけるデータガバナンス強化を実現するために、Analytics Engineerとして複数の部門を跨ぐプロジェクトチームに参加しています。記事ではZOZOにおけるデータガバナンス上の課題と、その課題の解決策の1つとしてdbtを導入した話をご紹介します。 目次 はじめに 目次 背景 課題 データマートの乱立 集計定義のばらつき 依存関係の洗い出しが困難 データモデリングツールの比較検討 データ変換に関する要件 データモデリングツールの選定 レイヤリングによる責務の分離 実装方針 今後の展望 dbtモデルを開発する上で工夫したこと 環境の分離 背景 工夫したこと ダミーデータセットの生成 背景 工夫したこと SQLFluffを使ったフォーマット統一 依存モデルを含むテスト dbt Doc

    dbt導入によるデータマート整備 - ZOZO TECH BLOG
  • dbtのDWHをRedshift(serverless)からSnowflakeに切り替えたときのおはなし|あきよん

    フリーランスでアナリティクスエンジニア的なお仕事をしています。 最近(2023年10月 ~ 12月頃)、データウェアハウスをRedshift (serverless)からSnowflakeに切り替える作業の一旦を担いました。 備忘録を兼ねて、私が担当したdbtに関連する切り替え作業の中で、印象に残った部分をいくつかご紹介したいと思います。 カラム名が小文字(Redshift)から大文字へ(Snowflake) Redshiftはカラム名が小文字、snowflakeはカラム名が大文字です。Snowflakeに移行する上で、これが一番苦労する要因になった違いでした。 ドキュメント(yamlファイル)を作成する際に、dbt-osmosisを使用しています。 ここではdbt-osmosisの詳細は述べませんが、DWHの内容から自動でドキュメントを作成してくれます。 新規で作成したものはドキュメント

    dbtのDWHをRedshift(serverless)からSnowflakeに切り替えたときのおはなし|あきよん
  • dbtで見やすいER図を生成する - yasuhisa's blog

    背景: dbtを使っていてもER図は欲しい! どうやってER図を生成するか どうやってER図を見やすくするか まとめ 背景: dbtを使っていてもER図は欲しい! dbtはモデル間のリネージなど可視化が得意なツールではありますが、万能なわけではありません。モデルの生成過程などはリネージで担保できますが、分析時に「どれとどのモデルがJOINできて、JOINする際のキーはこれを使って」というER図で扱うような可視化はディフォルトではできません。 DWHを作っている側からすると「このテーブルはあの辺のテーブルと一緒に使うと便利で、いつもあのキーでJOINして」というのが頭の中に入っていることが多いため、ER図がなくてもどうにかなることも多いでしょう。しかし、分析に慣れていない人や分析に慣れている人であっても、普段と異なるドメインのテーブルを触るときはER図が提供してくれる情報は有用です。ちなみに

    dbtで見やすいER図を生成する - yasuhisa's blog
  • dbt docs generateをDB接続なしで実行してみた | DevelopersIO

    はじめに データアナリティクス事業部のおざわです。 今回はdbt docs generateでデータベースに接続せずにドキュメントを出力してみた結果を共有します。 今回使用したdbtのバージョンです。 ❯ dbt debug 02:00:02 Running with dbt=1.7.3 02:00:02 dbt version: 1.7.3 ...略... 02:00:03 adapter type: redshift 02:00:03 adapter version: 1.7.0 記事ではRedshiftを使っていますが、他のDBでもドキュメントの生成自体は問題ないかと思います。 実行したコマンド データベース接続できない環境でも以下のコマンドでドキュメントを生成することができます。 dbt parse dbt docs generate --no-compile --empty-

    dbt docs generateをDB接続なしで実行してみた | DevelopersIO
  • ディメンショナルモデリングに入門しよう!Snowflakeとdbt Cloudで「Building a Kimball dimensional model with dbt」をやってみた | DevelopersIO

    ディメンショナルモデリングに入門しよう!Snowflakeとdbt Cloudで「Building a Kimball dimensional model with dbt」をやってみた さがらです。 ここ2年ほどの間にdbtが日でも急速に拡大し、様々な情報が日語の記事でも見かけられるようになってきました。 dbtを採用してある程度活用を進めていくと、「より効率よくガバナンスを持ってデータを管理するにはどうすればいいんだろうか」といったデータの管理方法に悩む場面が出てくると思います。 そんなときに色々調べていくと、データを効率よく管理する手法として「データモデリング」が必要だとわかり、ディメンショナルモデリングやData Vaultなどの手法に行き着くのではないでしょうか。 そしてこれらのデータモデリングの手法の内、ディメンショナルモデリングについてdbtを用いて実践された記事がありま

    ディメンショナルモデリングに入門しよう!Snowflakeとdbt Cloudで「Building a Kimball dimensional model with dbt」をやってみた | DevelopersIO
  • 全社横断データ基盤へdbt導入を進めている話 - Sansan Tech Blog

    こんにちは。研究開発部 Architectグループの中村です。 記事は Sansan Advent Calendar 2023 の16日目の記事です。 今回は、私達のチームで開発&運用している全社横断データ分析基盤のデータレイヤの再設計、及びdbtの導入を進めているという事例について紹介します。 既存のデータ基盤に対して、dbtの導入を検討されている方の参考になれば幸いです。 (稿ではdbtとはについては触れませんので、ご了承ください) TL;DR 歴史的経緯 全社横断データ基盤が生まれる前 全社横断データ基盤 立ち上げ期 課題 立ち上げ期に作られたデータマートがカオスに・・・ 課題の解決に向けて データレイヤの再設計 Transformツールの選定 dbtへの移行戦略 その他dbt移行におけるTips チームでの開発の標準化 Cosmosの導入検証 データカタログのホスティング まと

    全社横断データ基盤へdbt導入を進めている話 - Sansan Tech Blog
  • dbtでCIを実現するために、Github ActionsでAWSのVPC越えしたい。 - KAYAC Engineers' Blog

    この記事はTech KAYAC Advent Calendar 2023の8日目の記事です。 こんにちわ。その他事業部SREチームの@mashiikeです。 最近、風変わりな記事を連投しているのですが、今回も風変わりです。 ひとことで要約すると、 私は!Github Actionsから!Redshiftにアクセスしたいんだ!!! です。 TL;DR dbtのCIを実現したい。ローカルのunit-testはできてるんだが、Github ActionsからRedshiftへのアクセスに難がある。 Github ActionsからRedshiftにアクセスするために頑張ってみた。 kayac/ecspressoで踏み台となるECS Taskを立ち上げる。 fujiwara/ecstaでportforwardingする。 mashiike/redshift-credentials で一時認証情報を

    dbtでCIを実現するために、Github ActionsでAWSのVPC越えしたい。 - KAYAC Engineers' Blog
  • dbtのテンプレートSQLをJinja2テンプレートで大量生成する話 〜クラシコム様での事例〜 - KAYAC Engineers' Blog

    この記事はdbt Advent Calendar 2023の5日目です。 こんにちは、その他事業部SREチーム所属の@mashiikeです。 カヤックは様々な事業・プロジェクトを展開しておりますが、その一つとして『北欧、暮らしの道具店』を運営する株式会社クラシコムとの協業プロジェクトがあります。 www.kayac.com こちらのプロジェクトでは2019年より継続して、クラシコム様のデータ基盤の構築・運用のサポートの一部を行っております。 その中で、troccoのdbt連携機能を用いて、データの変換を実装しております。1 今回の記事は、同プロジェクトの中で行われた一風変わったdbtの活用例の紹介になります。 内容の関係上、予めLookerの用語と概念を知っていると読みやすいと思います。 cloud.google.com 背景 クラシコム様のデータ分析基盤では、ビジネスインテリジェンスにL

    dbtのテンプレートSQLをJinja2テンプレートで大量生成する話 〜クラシコム様での事例〜 - KAYAC Engineers' Blog
  • dbtのカレンダー | Advent Calendar 2023 - Qiita

    dbt(data build tool)に関するアドベントカレンダーです。 dbtの導入事例や、テストやモデリングに関すること、ドキュメントやデータカタログやdbtと連携するツール等、dbtを中心とした話題であればなんでもOKです。 ぜひお気軽に投稿してください! edit_calendarHow to join the calendarYou can join the calendar by selecting an available date and registering the URL of the article you wish to link to. If a slot is available, you can go back to a past date to join!

    dbtのカレンダー | Advent Calendar 2023 - Qiita
  • BigQueryにおけるdbtの増分更新についてまとめてみた - Timee Product Team Blog

    はじめに ※Timeeのカレンダー | Advent Calendar 2023 - Qiitaの12月8日分の記事です。 okodooooooonです BigQueryの料金爆発。怖いですよね。 dbtでの開発が進んでたくさんのモデルを作るようになると、デイリーのビルドだけでも凄まじいお金が消えていったりします(僕はもう現職で数え切れないくらいやらかしてます)。 コストの対策として「パーティショニング」「クラスタリング」などが挙げられますが、今回は「増分更新」の観点で話せたらと思います。 「dbtのmaterialized=’incremental’って増分更新できておしゃれでかっこよくてコストもなんとなく軽くなりそう!」くらいの認識でさまざまな失敗を経てきた僕が、BigQueryにおけるincrementalの挙動を説明した上で、タイミーデータ基盤における増分更新の使い方についてまとめ

    BigQueryにおけるdbtの増分更新についてまとめてみた - Timee Product Team Blog
  • Snowflakeの力を引き出すためのdbtを活用したデータ基盤開発の全貌 - CARTA TECH BLOG

    当記事は、dbtのカレンダー | Advent Calendar 2023 - Qiita の23日目の記事です。 こんにちは、株式会社CARTA MARKETING FIRMのデータエンジニア、@pei0804です。データエンジニアリングのほか、組織運営やデータエンジニア育成にも携わっています。 記事では、Snowflakeを中心とした当社のデータ基盤「Vision」と、その中核であるdbtの利用について深掘りします。dbtを活用することで、SQLのみでデータパイプラインを効率的に構築し、作業の効率化を図っています。 dbt導入の詳しい導入背景は以下のスライドでご覧いただけます:広告レポーティング基盤に、dbtを導入したら別物になった話 / tokyo-dbt-meetup-4 - Speaker Deck。 私たちのチームでは、ビジネスに直接価値を提供しているdbtモデルの開発はプロ

    Snowflakeの力を引き出すためのdbtを活用したデータ基盤開発の全貌 - CARTA TECH BLOG