Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20240903_セマンティックレイヤー導入に向けたABEMAのツール選定.pdf
Search
calderarie
September 03, 2024
0
99
20240903_セマンティックレイヤー導入に向けたABEMAのツール選定.pdf
calderarie
September 03, 2024
Tweet
Share
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Producing Creativity
orderedlist
PRO
341
39k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Docker and Python
trallard
42
3.1k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Optimizing for Happiness
mojombo
376
70k
Transcript
AbemaTV, Inc. All Rights Reserved AbemaTV, Inc. All Rights Reserved
1 セマンティックレイヤー導入に向けた ABEMAのツール選定 2024/09/03 エンタメ業界のデータマネジメント最前線 #データマネジメント 株式会社AbemaTV Kazuya Ozawa
AbemaTV, Inc. All Rights Reserved 株式会社AbemaTV 開発本部 Data div. DataManagement
Team • 経歴 ◦ 2016年 データ分析コンサル企業に新卒入社 ◦ 2020年 AbemaTVに中途入社 ◦ 2023年 アナリスト→アナリティクスエンジニア • スキ ◦ ❤ 早見沙織さん ◦ 📕 漫画 / 🍽 ドカ食い / 🐧 ペンギン ◦ 💰 投資 / 🏋 筋トレ / 😇 サウナ Kazuya Ozawa 2 Profile
AbemaTV, Inc. All Rights Reserved 話さないこと 話すこと 本日のテーマ 3 •
弊社がセマンティックレイヤー導入 に至った経緯 • ツール導入に対する検討内容 • 今後の導入や運用に関する展望 • ツール間の俯瞰的な比較 • 各ツールの細かな違い ◦ 詳細仕様や実装方法, etc. • 導入や運用の詳細 ABEMAでセマンティックレイヤーツールを導入する際に、 自社とツールの特徴を照らし合わせて検討した内容を紹介します。
AbemaTV, Inc. All Rights Reserved 4 1. ABEMAの紹介 2. ABEMAのデータ利用とセマンティックレイヤー
3. 導入ツールの選定 4. まとめ アジェンダ
AbemaTV, Inc. All Rights Reserved ABEMAの紹介 5
AbemaTV, Inc. All Rights Reserved
AbemaTV, Inc. All Rights Reserved
AbemaTV, Inc. All Rights Reserved
AbemaTV, Inc. All Rights Reserved ABEMAのデータ利用と セマンティックレイヤー 9
AbemaTV, Inc. All Rights Reserved ABEMAでは事業部ごとで分析者が分析を推進している。 各分掌にBIレポートが整備され、利用は最適化される一方で、 それぞれの集計定義等のナレッジは属人化が進行してしまう。 ABEMAのデータ利用と現状の課題 (1/2)
🤝 サブスク 事業責任者 分析者 施策担当者 BIレポート BIレポート BIレポート 🔍 🤝 広告 事業責任者 分析者 施策担当者 BIレポート BIレポート BIレポート 🔍 … ❓ ❓
AbemaTV, Inc. All Rights Reserved 担当者の交代や事業の変化に併せた度重なる改修で、 レポート内の仕様は、誰も仕様が分からない秘伝のタレに。 徐々に、分析のQCDが低下していってしまう。 ABEMAのデータ利用と現状の課題 (2/2)
• 信頼性の低下 ◦ 過去に行った類似の分析と異なる結果に • 再利用性の低下 ◦ 頻出定義の集計に費用がかかる • 即時性の低下 ◦ 集計を得るのに調査等でタイムラグが発生 Quality Cost Delivery
AbemaTV, Inc. All Rights Reserved セマンティックレイヤーの役割 DWH 3. 結果 セマンティック
レイヤー 2. SQL実行 1. クエリ ディメンション 受注月, 顧客ID メジャー 売上 3. 結果 DWH上のデータと集計定義の間を翻訳する存在。 ユーザは、ツールで慣れ親しんだ概念を選択するだけで、 SQL等を使った複雑なデータ処理を意識せずに、任意の集計が可能になる。 DWH 2. 結果 1. SQLによるクエリ 月別の各顧客の 売上を集計するに は・・??
AbemaTV, Inc. All Rights Reserved セマンティックレイヤーによる構成の変化 BIレポート DWH … 集計定義
BI レポート DWH … セマンティック レイヤー 集計定義 BI レポート BI レポート BIレポート BIレポート 集計定義 集計定義 集計定義 集計定義 … 現状 セマンティックレイヤー導入
AbemaTV, Inc. All Rights Reserved セマンティックレイヤーによる分析 QCDの改善 分析QCDの改善するため、集計定義を一箇所に集中管理し、 信頼できる定義を即座に再利用できる仕組みを構築するのに、 セマンティックレイヤーの導入を進めています。
• 信頼性の改善 ◦ 一貫性のある定義で再現性のある結果 • 再利用性の改善 ◦ 頻出定義の集計が低費用で実現できる • 即時性の改善 ◦ 即座に集計が行える Quality Cost Delivery
AbemaTV, Inc. All Rights Reserved 導入ツールの選定 16
AbemaTV, Inc. All Rights Reserved セマンティックレイヤーの構成要素 引用: https://github.com/cube-js/cube • セマンティックモデル
◦ 接続したテーブルから集計定義をコードで定義 • API ◦ DWHへの接続 ◦ アプリへの統合 • キャッシュ ◦ クエリの高速化・効率化 ◦ DWHのコスト削減 • アクセス制御 ◦ ユーザ毎に行・列レベルの制御 DWH上のデータと集計定義を繋ぐセマンティックモデル以外にも、 いくつかの機能を実現するための構成要素が存在する。
AbemaTV, Inc. All Rights Reserved ABEMAのセマンティックレイヤー導入にあたっての要件 • セマンティックモデル ◦ 現状のBIレポートで扱っている集計定義を表現できる
• API ◦ DWHとしてBigQuery、BIとしてTableauへの統合機能が利用できる • キャッシュ ◦ 導入により、クエリパフォーマンスに大きな影響がない ▪ 事前の見積もりが困難なので、 PoC時に確認 • アクセス制御 ◦ 必須ではない (DWH側やBI側でも制御) • その他 ◦ バージョン管理や開発時の環境切り分けが可能 ◦ ツール自体の管理コストが低い (インフラ管理不要なSaaSが望ましい) ◦ 費用が年間 xxx 以内に収まる 各機能について以下のような点に注目し、候補ツールを絞り込んでいった。
AbemaTV, Inc. All Rights Reserved (appx.) 現状の主流なツールと分類 セマンティックレイヤーツールとして、現状以下のようなものが存在する。 注) 各区分の命名は発表者によるもので一般的な用語ではありません
DWH セマンティック レイヤー アプリケーション DWH統合型 汎用型 Snowflake データパイプライン統合型 dbt BI統合型 Looker AtScale Cube
AbemaTV, Inc. All Rights Reserved (appx.) API要件を満たす候補ツールの簡易比較表 ※24年7月調査 モデル周りは後述 分類
/ 提供形態 キャッシュ アクセス制御 その他 BI統合型SaaS ※他BIへの統合も提供 ⚪ 内部キャッシュと ユーザによる事前集計 ⚪ ・対称集計 ・データテスト ・詳細な監査ログ 汎用型SaaS ※OSS版(Cube Core)も ⚪ 内部キャッシュと ユーザによる事前集計 ⚪ ・対応ツールが豊富 汎用型SaaS ◎ 集約テーブルを システム側で自動構築 ⚪ ・集約テーブル管理に 独自の強み パイプライン統合型 SaaS ※OSS(dbt Core)は BI統合が不可 △ 集約テーブル管理のみ × 今後の対応予定あり ・半加法や表計算の メジャー定義に対応 Looker Cube Cloud AtScale dbt Cloud
AbemaTV, Inc. All Rights Reserved 候補ツールの洗い出し カタログスペック上で容易に比較できるAPI等の要件を満たすツールから、 Lookerとdbt Cloudを有力候補とした。 重要なセマンティックモデルの仕様について、更に比較する。
• Looker ◦ BI統合型ツールだが、Tableauや他ツールへの統合機能も提供 ◦ 基本機能が揃っている上、Looker独自の機能も ▪ データテストや充実した監査ログなど • dbt Cloud ◦ dbt Semantic Layer(セマンティックレイヤー機能)を提供 ◦ 弊社でdbt導入を進行中であったため、 DWH層とセマンティック層を1ツールで管理できるメリット ◦ 他ツール比較で機能不足は否めないが、今後の機能拡充に期待
AbemaTV, Inc. All Rights Reserved Lookerとdbt Cloudの扱うセマンティックモデル 22 • 参照テーブルはdbtモデルのみ
• 結合に制約あり ◦ 事前定義のEntityから自動結合 ◦ Fan-out joinに未対応 ◦ 結合回数の制限(Multi-hop joins) dbt Cloud (dbt Semantic Layer) Looker • 参照テーブルの自由度が高い ◦ 接続DBのテーブル ◦ DBのクエリ結果(派生テーブル) • 結合の自由度も高い ◦ 結合テーブルを柔軟な条件で指定 Lookerとdbt Cloudは、モデルの定義にあたって、 参照可能なテーブルと結合に関して、大きな違いがある。
AbemaTV, Inc. All Rights Reserved dbt Semantic Layerの結合周りの仕様 モデル内のEntity(キー制約)定義から自動的に結合が定義される。 しかし、結合が許可されるEntity関係が定められており(右下の図)、
一度に利用可能なテーブルに制約がある(multi-hop joins / 結合は2回まで)。 引用: https://docs.getdbt.com/docs/build/join-logic ⭕ country_name別のpurchase_priceの集計は可能 ❌ region_name別のpurchase_priceの集計は不可 (salesからrefion_dimまでに3回結合が必要でfan-out joinsを含む)
AbemaTV, Inc. All Rights Reserved セマンティックモデル特性の業務への影響 • 自由度の高いセマンティックモデル (LookerやCube) ◦
事前の綿密なデータモデリングは必須ではない ◦ セマンティック層の自由度が高いことで、属人化の恐れ → 導入の敷居は低いが、柔軟な故に属人化を回避するための運用が必須 • 自由度の低いセマンティックモデル (dbt CloudやAtScale) ◦ 参照テーブルが事前にモデリングされた前提 ◦ 前提条件があることで、ツール内のモデル管理がブレにくい → 事前のモデリングが必要で敷居は上がるが、堅牢な運用が可能 セマンティックモデル構築の自由度の違いは、業務へ大きな影響を及ぼす。 モデル特性を踏まえて、ツール選定を行うべき。
AbemaTV, Inc. All Rights Reserved ABEMAにおけるモデリング業務の特徴 (1/2) ABEMAが扱うデータモデルは、複雑性が高い。 • 視聴モデルの難易度の高さ
◦ 1つの視聴イベントの中に、多くの要素 ▪ ユーザステータス, コンテンツ, 視聴形態, プレイヤー状態, etc. ◦ 更に、視聴中の連続的な状態変化をどうモデル化するか? ◦ そもそも、いつからいつまでが視聴のイベントなのか? • 様々なモデリング対象 ◦ 視聴以外にも、「コンテンツ」「サブスク」「広告」等 ◦ それぞれ独立ではなく、相互に掛け合わせた分析
AbemaTV, Inc. All Rights Reserved ABEMAにおけるモデリング業務の特徴 (2/2) 事業は絶えず変化し、併せてデータ仕様やビジネス指標も変化する。 特に新機能リリース後は、事業影響を即座に把握するため、 ABEMAの変化と共に、追従してモデル側も変化する必要がある。
今年は新たな提携プランを公開し、 併せてサブスクのデータモデルも変更 他にも、新機能リリースは随時行われ、 新規イベントログが増え続けている
AbemaTV, Inc. All Rights Reserved ABEMAの特性からセマンティックモデルの選択 扱うモデルの複雑性や社内の分析ニーズを鑑みて、 自由度の高いセマンティックモデルであるべきだと判断。 機能も揃っているLookerを最有力候補として検討中。 自由度の高い
セマンティックモデル モデル定義変更時にデータモデリングが必須でなく、 セマンティックモデル側である程度吸収して対応可能。 継続的に価値を発揮できる。 自由度の低い セマンティックモデル 変更時点でデータモデリングが必要で、 場合によっては変更までに時間がかかる。 一時的に価値を発揮できない時期が発生しうる。
AbemaTV, Inc. All Rights Reserved ABEMAでのセマンティックレイヤーの持続的な価値提供 4. 各層のアップデート 1. 新規モデルの構築
2. 分析PDCAを通して修正 3. 利用数や利用用途の確認 セマンティックレイヤー DWH アプリケーション 事業変化に適応できるセマンティックレイヤーとして、Looker を導入予定。 一方で、想定されるセマンティックモデル上での属人化を回避するため、 持続的にセマンティックレイヤーを維持するライフサイクル構築を行う。
AbemaTV, Inc. All Rights Reserved まとめ • ABEMAの抱える課題とセマンティックレイヤー導入への展望を紹介 • セマンティックレイヤーツール導入時の検討ポイントについて紹介
◦ 利用しているDWHやBIとの統合性などの自社の制約要件を満たすか ◦ ツールで扱うセマンティックモデルが自社の特性と合うか • ABEMAでは今後Lookerの長期的に持続可能な運用を目指す
AbemaTV, Inc. All Rights Reserved 『ABEMA』では 一緒に挑戦する仲間を募集中です! ✔オンラインでカジュアル面談実施中 ✔今す 転職を考えていな
てもOK! 応募はこちら👉 カジュアル面談は こちらから👉
AbemaTV, Inc. All Rights Reserved