Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AirflowでDataformを制御するポイント

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

 AirflowでDataformを制御するポイント

Avatar for Tech Leverages

Tech Leverages

July 25, 2025
Tweet

More Decks by Tech Leverages

Other Decks in Technology

Transcript

  1. 3 © 2025 Leverages Co., Ltd. 自己紹介 3 機密情報・転載禁止 ©

    2023 Leverages Co., Ltd. 鈴木 直澄 レバレジーズ株式会社 テクノロジー戦略室 データエンジニアリンググループ • 2022年新卒でWebアプリのエンジニア を2年経験 • 2024年にレバレジーズにデータエンジ ニアとして入社 • データ分析基盤の構築や、最近はレコ メンドシステムの構築、MLOps周りも やってます • 毎週気合い入れてサッカー見てます
  2. 4 © 2025 Leverages Co., Ltd. Contents 自己紹介
 会社紹介
 データ活用基盤


    AirflowでDataformを制御するメリット
 AirflowでDataformを制御するポイント (基本)
 AirflowでDataformを制御するポイント (発展)
 さいごに
 01. 02. 03. 04. 05. 06. 07.
  3. 6 機密情報・転載禁止 © 2025 Leverages Co., Ltd. 会社概要 検討中 オフィス⽴地や社員数等最低限の情報

    (最新の数値に更新する) デザイン調整する 社名 従業員数 代表者 資本⾦ 所在地‧拠点 グループ会社 レバレジーズ株式会社 Leverages Co.,Ltd. 3,338名(2025年4⽉現在) 岩槻 知秀 5,000万円 本社:東京都渋⾕区渋⾕2丁⽬24番12号 渋⾕スクランブルスクエア24F‧25F 国内拠点:27拠点 海外拠点:5拠点 レバテック株式会社  レバレジーズM&Aアドバイザリー株式会社 ATLIKE株式会社 レバレジーズメディカルケア株式会社 レバレジーズオフィスサポート株式会社 レバレジーズプランニングサポート株式会社 レバレジーズスタッフィング株式会社 員点動⼒(上海)⼈⼒資源有限公司 Leverages Career Mexico S.A. de C.V. Leverages Career Vietnam Co., Ltd. Leverages U.S.Inc. 会社について
  4. 7 機密情報・転載禁止 © 2025 Leverages Co., Ltd. 10年後に ⼀兆円規模を ⽬指す

    企業の安定性と成⻑性を担保する独⾃の経営戦略のもと、 創業以来、黒字経営を継続し、 2024年度は1,428億円を達成しました。 企業理念として「顧客の創造を通じて、関係者全員の幸福を追求し、 各個⼈の成⻑を促す」を掲げ、⼈の感情と向き合いながら 次の時代を創るグローバル企業を⽬指しています。 ベンチャーを牽引する成⻑で、 次代を創る企業へ 売上推移 会社について
  5. 8 機密情報・転載禁止 © 2025 Leverages Co., Ltd. ポートフォリオ経営とは、業界やビジネスモデルなどにこだわらず、 分散投資をしていく経営形態のこと。 この経営形態のメリットは、予測困難な外部変化に会社全体で衝撃を

    吸収しやすい点にあります。例えば、コロナ禍では海外事業などは打 撃を受けた⼀⽅で、IT事業や医療‧ヘルスケア事業は追い⾵を受け、 過去最⾼の売上を更新、黒字経営を継続しました。 経営のリスク分散を⾏うことで、未曾有の状況でも安定した成⻑を実 現しています。 ポートフォリオ経営による安定した 収益基盤で創業以来、黒字経営を継続 経営体制について 会社について
  6. 9 機密情報・転載禁止 © 2025 Leverages Co., Ltd. 「⻑期的に市場の成⻑性が⾒込まれること」「社会や⼈の負を解決す ること」を市場参⼊軸とし、現在は、IT、医療‧介護‧ヘルスケア、 M&A、SaaS、海外、若年層などの領域で、約50の事業を展開中。

    今後、より収益が安定し、⼤規模な投資が可能になれば、エネルギー や⾷料、宇宙産業など、世界の課題を解決するための事業を展開して いきます。 世界を視野に、 国や業界にとらわれない事業展開 事業数の推移 事業展開 事業について
  7. 10 © 2025 Leverages Co., Ltd. • データサイエンティスト:2名 • データアナリスト:5名

    • データアーキテクト:8名 • データエンジニア:5名 • AI・MLエンジニア:3名 • 機械学習研究:2名 レバレジーズのデータ関連職種 社員数3,338人(2025年4月時点)に対して、 データ職種は2025年7月時点で業務委託含め25名 10 © 2025 Leverages Co., Ltd.
  8. 12 © 2025 Leverages Co., Ltd. • ELT:Fivetran • DWH:BigQuery

    • Transform:Dataform • BI:Tableau, Looker Studio • Metadata:Dataplex • Quality Check:Dataplex • Reverse ETL:trocco • Orchestration:Airflow データ活用基盤 - 全体概要アーキテクチャ
  9. 13 © 2025 Leverages Co., Ltd. データ活用基盤 - 個別アーキテクチャ •

    全社で40近くのサービスを展開していることもあり ブランド単位でまとめつつデータ活用基盤を分割 • データ活用基盤の数は10ほど • BigQueryを中心としつつ、事業売上や関係者数、 実装時期によって少しずつアーキテクチャが異なる • 異なるビジネスモデルや売上規模でも 設計が変わらないよう共通利用できる技術を選定
  10. 15 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • そもそも、Airflowとは?? ◦

    データパイプラインやワークフローのオーケストレーションに用いられ るオープンソースのツール ◦ PythonでDAG(Directed Acyclic Graph)を定義して制御する
  11. 16 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • 弊社での、Airflowの役割 Staging

    Lake DWH Mart Semantic Layer Cloud Run Data Source Dataform 制御! 制御! BI 制御!
  12. 17 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • Airflowがなく、スケジュール実行だと起こること ◦

    データソースから、BIまでの更新処理のスケジュール管理が必要 ELT処理が8時に始まって、 20分くらいかかるから、 30分くらいからDataform を実行しないとな〜
  13. 18 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • Airflowがなく、スケジュール実行だと起こること ◦

    データソースから、BIまでの更新処理のスケジュール管理が必要 うわっ! データ量増えてELTに40分!? 1ヶ月くらい、 前々日のデータ見てたってことか、、 実行時間修正しないとだ、、
  14. 19 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • Airflowがなく、スケジュール実行だと起こること ◦

    データソースから、BIまでの更新処理のスケジュール管理が必要 処理時間を気にしないと、 また同じことが起こりそうだな〜 スケジュール管理表みたいなの必要?
  15. 20 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するメリット • DataformをAirflowで制御すると起こること ◦

    ELTが終わってから、Dataformを実行できるので、スケジューリングの 必要がない! ◦ 処理時間に依存しないので、データ量が増えても安心 ◦ エラーハンドリングなどを、Airflowに集約することができる 統合されたワークフロー管理が可能
  16. 22 © 2025 Leverages Co., Ltd. AirflowでDataformを 制御するポイント (基本) •

    制御する手順 ◦ sqlxをコンパイルする ◦ Dataformワークフローをトリガーする ◦ ワークフローのステータスを検知する 22 © 2025 Leverages Co., Ltd.
  17. 24 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (基本) • sqlxのコンパイル

    ◦ DataformCreateCompilationResultOperator を使う ▪ Dataformのリポジトリと、gitのブランチを指定する ▪ コンパイルした結果は、Airflowのワーカーインスタンスに、 勝手に保存されているので、明示的に保存する必要はなし
  18. 25 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (基本) • Dataformワークフローをトリガーする

    ◦ DataformCreateWorkflowInvocationOperator を使う ▪ Dataformのリポジトリを指定する ▪ コンパイルした結果を参照する(お作法に則る) • {{ task_instance.xcom_pull('create_compilation_result')['name'] }} ▪ ワークフローの呼び出しIDが、Airflowのワーカーインスタンスに 勝手に保存される ▪ トリガーだけ行う、ステータスは見てない!
  19. 26 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (基本) • ワークフローのステータスを検知する

    ◦ DataformWorkflowInvocationStateSensor を使う ▪ Dataformのリポジトリを指定する ▪ ワークフローの呼び出しIDを指定する(お作法に則る) • {{ task_instance.xcom_pull('create_workflow_invocation')['name'].split('/')[-1] }} ▪ 期待するステータスを指定する (ex. SUCCEEDED)
  20. 27 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (基本) • 全体像は以下のような感じ

    DataformCreateCompilationResultOperator DataformCreateWorkflowInvocationOperator DataformWorkflowInvocatio nStateSensor Dataform ステータスを監視!
  21. 28 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (基本) • (補足)

    トリガーだけした時の挙動 Airflowは成功しているが、、 Dataformは死んでる、、
  22. 31 © 2025 Leverages Co., Ltd. AirflowでDataformを 制御するポイント (発展) •

    権限のなりすまし • 複数のDataformワークフローを制御する • Airflow × Dataformの副次効果 • Airflow(2系)のつらみ 31 © 2025 Leverages Co., Ltd.
  23. 32 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (発展) • 権限のなりすまし

    ◦ DataformCreateWorkflowInvocationOperator の impersonation_chain パラメータで、Dataformを実行するサービスアカウントを指定できる ◦ 責務の分離と、最小権限の原則から、サービスアカウントを指定した方が 良いかも
  24. 33 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (発展) • 複数のDataformワークフローの制御

    ◦ 例えば、ワークフローA、ワークフローBのどちらも終わってから、 ワークフローCを実行したい時など ◦ 特別な実装は不要で、基本の反復で実装可能
  25. 34 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (発展) • Airflow

    × Dataform の副次効果 ◦ Dataformワークフローに動的にパラメータを指定することができる ▪ 例えば、環境(dev/stg/prd)ごとの実行や、期間の指定など、より 柔軟なワークフローを実装することが可能になる ◦ タスクごとに遡って再実行できるようになる ◦ 無駄な実行を抑えられるので、スキャン量の削減になる ▪ スケジュール実行の組み合わせの場合、処理頻度をあげることで データの鮮度を保つことあるかと思うが、Airflowで制御する場合 ELTの処理頻度に合わせた最低限の実行でデータの鮮度を保つこと ができる
  26. 35 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (発展) • Airflow

    × Dataform の副次効果 ◦ (補足) タスクごとに遡って再実行できるようになる 〇〇日の〇〇時の実行 を再実行できる!!
  27. 36 © 2025 Leverages Co., Ltd. AirflowでDataformを制御するポイント (発展) • Airflow(2系)のつらみ

    ◦ 癖が強く、学習コストが高い ◦ オーケストレーションに集中させないとつらい ▪ Pythonでかけるので処理をさせることもできるが、メモリを使う ような処理をすると、落ちたりする ◦ インフラの管理コストがかかる ▪ 弊社では、Cloud ComposerというGoogleのマネージドサービス を使ってます
  28. 39 © 2025 Leverages Co., Ltd. We Are Hiring! •

    まずはカジュアル面談からどうぞ! • 3年で2倍にスケールする環境で、データを使った変革を起こしましょう! • 募集職種 ◦ データサイエンティスト ◦ データアナリスト ◦ データアーキテクト ◦ データエンジニア ◦ AI・MLエンジニア ◦ 機械学習研究員
  29. 40 機密情報・転載禁止 © 2025 Leverages Co., Ltd. ビジネス グロース DX

    営業 企画 SFA 開発 CRM/MA CJM スコア リング CS システム 構築 プロ モーション プロダクト UI/UX SEO プロト タイプ Web 広告 クリエイ ティブ TV CM 電⾞ 広告 仮説 設定 レバレジーズはマーケティングやセールスといった全ての組織がインハウスで機能しており、 データ戦略が事業運営上重要なハブとなる構造になっています。 データ戦略の役割 データ戦略

  30. 41 © 2025 Leverages Co., Ltd. レバレジーズ テックブログ https://tech.leverages.jp/ データ戦略ブログ(週1更新)

    https://analytics.leverages.jp/ 全社の情報発信媒体(melev) https://melev.leverages.jp/ 情報発信しています!
  31. 43 © 2025 Leverages Co., Ltd. 参考文献 • AirflowのOperator •

    ComposerでDataformするサンプル • 「Dataform~Tableau更新ワークフローをCloud Composerで実装してみた」