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
TIPSTAR におけるデータ分析基盤信頼性向上の取り組み
Search
yhamano
October 31, 2023
Technology
2.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TIPSTAR におけるデータ分析基盤信頼性向上の取り組み
yhamano
October 31, 2023
More Decks by yhamano
See All by yhamano
MIXI での HCP Terraform 活用事例 / Use Case of HCP Terraform at MIXI
yhamano
2
1.2k
Self-Service Implementation of AWS IAM Identity Center Permissions
yhamano
1
1.1k
複数プロダクトを管理する AWS Organizations における AWS IAM Identity Center を GitHub x Terraform でいい感じに運用したい
yhamano
1
2.4k
Opsしかやってこなかった私が DevOpsが根付いたチームにJoinした話
yhamano
2
2k
CI/CD環境のTerraform versionを最新に保つと幸せになれる
yhamano
9
2.3k
IAMの地味なUpdateをご紹介_掲載用.pdf
yhamano
0
890
lightning-talk-toyosu_hamano_20190925_open.pdf
yhamano
0
900
Other Decks in Technology
See All in Technology
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
140
白金鉱業Meetup_Vol.24_「AIエージェントは分けるほど良い」は本当か? / Is it true that “the more you divide AI agents, the better”?
brainpadpr
1
330
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
890
Agentic Web
dynamis
1
210
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
220
Kubernetesにおける学習基盤とLLMOpsの概要
ry
1
260
AIの性能が向上しても未解決な組織の重大問題は何か?/An Unsolved Organizational Problem in the Age of AI
moriyuya
4
630
【Cyber-sec+】経営層を"動かす"ための考え方
hssh2_bin
0
150
LLMにもCAP定理があるという話
harukasakihara
0
310
Chainlitで作るお手軽チャットUI
ynt0485
0
210
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
200
脆弱性対応、どこで線を引くか
rymiyamoto
1
380
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The browser strikes back
jonoalderson
0
1.2k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
220
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Done Done
chrislema
186
16k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
310
First, design no harm
axbom
PRO
2
1.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
Site-Speed That Sticks
csswizardry
13
1.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Transcript
データ分析基盤信頼性向上の取り組み MIXI SRE秋祭り 〜 MIXIのもうひとつのSRE 〜
自己紹介 • 濱野 悠介 / @yhamano0312 • 開発本部 CTO 室
SRE G • Embedded, Platform SREs • Google Cloud, AWS • Go, Terraform
アジェンダ • TIPSTAR とは • データ分析基盤活用 • データ分析基盤における信頼性 • データ分析基盤信頼性向上のために取り組んだこと
• まとめ
TIPSTARとは
TIPSTARとは TIPSTAR TIPSTARとは、365日配信されるレース映像と、 競輪・PIST6・オートレースのネット投票を、 基本無料で楽しむことができるサービスです。
データ分析基盤活用
データ分析基盤 • スマートフォンやIoTの普及/クラウドサービスの台頭に伴い、あらゆるものや場面において さまざまなデータの収集が可能となり、企業が保有するデータ量が膨大となっている • それら膨大なデータの蓄積→加工→分析を一貫して行う技術的な基盤として データ分析基盤が必要
データ分析基盤活用 • TIPSTAR では主に以下の用途でデータ分析基盤が使われている ◦ KPI 確認 ◦ 経理処理 ◦
既存機能の改修/新機能の立案 ◦ イベント施策立案 ◦ マーケティング戦略立案 ◦ 各種効果検証 ※画像は機能リリース案内及び過去実施した施策の一例
Data Source データ分析基盤構成 Cloud Spanner Cloud Logging Dataflow Google スプレッドシート
BigQuery DWH BigQuery Data Mart Looker エンジニア ビジネス マーケティング Vertex AI Workflows AppsFlyer dbt
基盤開発/運用体制 • 専任のエンジニアはおらず、TIPSTAR プロダクト開発や他プロジェクトと兼任しているメン バー数名で担当している • 極力 Google Cloud のマネージドサービスを活用して、開発/運用工数を削減している
データ分析基盤における 信頼性
データ品質モデル ISO/IEC 25012 • 正確性(Accuracy) • 完全性(Completeness) • 一貫性(Consistency) •
信憑性(Credibility) • 最新性(Currentness) • アクセシビリティ(Accessibility) • 標準適合性(Compliance) • 機密性(Confidentiality) データ品質を測る項目が定義されている • 効率性(Efficiency) • 精度(Precision) • 追跡可能性(Traceability) • 理解性(Understandability) • 可用性(Availability) • 移植性(Portability) • 回復性(Recoverability) https://cio.go.jp/sites/default/files/uploads/documents/data_hinshitu_guide_beta.pdf
データ品質モデル ISO/IEC 25012 • 正確性(Accuracy) • 完全性(Completeness) • 一貫性(Consistency) •
信憑性(Credibility) • 最新性(Currentness) • アクセシビリティ(Accessibility) • 標準適合性(Compliance) • 機密性(Confidentiality) データ品質を測る項目が定義されている • 効率性(Efficiency) • 精度(Precision) • 追跡可能性(Traceability) • 理解性(Understandability) • 可用性(Availability) • 移植性(Portability) • 回復性(Recoverability) これらデータ品質を保った品質の高いデータによる分析を行えることが望まれる
Data Reliability Engineering(DRE) • データ(基盤を含む)の信頼性を管理する取り組み • Site Reliability Engineering(SRE)との違いは注目する対象(サイトなのか データなのか)が違うくらいで対処する課題や課題に対するアプローチは酷似している
◦ SLI/SLO ドリブンな運用 ◦ ソフトウェアツールを用いたシステム管理/運用タスクの自動化
データ分析基盤信頼性向上 のために取り組んだこと
データ分析基盤の信頼性に関する課題 1. Spanner to BigQuery 処理部分のコストが嵩む & 処理が失敗した場合の retry がしづらい
2. 重要指標は当日分も確認したいが、品質の高いデータが前日分までしか取り込まれていな い
BigQuery 今だから知りたい BigQuery 再入門 https://www.slideshare.net/GoogleCloudPlatformJP/bigquery-google-cloud-inside-games-apps-online
Cloud Spanner CLOUD ONAIR Database OnAir https://services.google.com/fh/files/events/dbonair-session3.pdf#page=4
Cloud Dataflow Google Cloud スタートアップ向けテクニカル ガイド Buildシリーズ Dataflow によるストリーム処理パイプライン https://www.youtube.com/watch?v=6JpYdbuOd3g
データ分析基盤の信頼性に関する課題 1. Spanner to BigQuery 処理部分のコストが嵩む & 処理が失敗した場合の retry がしづらい
2. 重要指標は当日分も確認したいが、品質の高いデータが前日分までしか取り込まれていな い
Data Source データ分析基盤構成(再掲) Cloud Spanner Cloud Logging Dataflow Google スプレッドシート
BigQuery DWH BigQuery Data Mart Looker エンジニア ビジネス マーケティング Vertex AI Workflows AppsFlyer dbt
Spanner to BigQuery の流れ • 日次で Dataflow Job を起動させ、Spanner のデータを
BigQuery に 取り込んでいる ◦ なお、Dataflow の処理には mercari 社が OSS として提供している template を利用するこ とでデータ処理に関する実装/運用コストを削減している • 取り込み元の Spanner Instance はバックアップからリストアしたものを利用 ◦ ユーザのワークロードに影響を与えないため https://github.com/mercari/DataflowTemplate ユーザー Google Kubernetes Engine Cloud Spanner バックアップ Cloud Spanner リストア Dataflow BigQuery
• データ取り込み用の Spanner Instance の利用料が痛い • バックアップからデータ取り込みまでの一連の処理を CircleCI の
Schedule Job を組み合わせて実行させているので、どこかのプロセスで たまたま時間がかかったりすると後続の Job が失敗してそれぞれの Job を 手動で retry する必要がある ◦ Job の retry が遅れてデータ分析に必要なデータが揃わず分析業務が滞ることも データ取り込み用 Spanner Instance を利用する場合の課題
• 2023/06/23 GA • 既存のワークロードへの影響をほぼゼロに、分析クエリとデータエクスポートを実行でき るフルマネージドサービス Spanner Data Boost 登場
https://cloud.google.com/spanner/docs/databoost/databoost-overview?hl=ja
• データ取り込み処理に Spanner Data Boost を用いることで、 データ取り込み用 Spanner Instance が必要なくなる
◦ データ取り込みクエリ実行中のみ処理量に応じて Spanner Data Boost の Compute が立 ち上がってその分課金となるので、データ取り込み用の Spanner Instance を用意する場合 と比べて十分の一程度に利用料を削減できそう ◦ バックアップ/リストアといった前段処理が必要無くなるため、一連のデータ パイプラインがシンプルになり、retry もしやすくなった Spanner Data Boost を用いたデータ取り込み処理の最適化 ユーザー Google Kubernetes Engine Cloud Spanner Dataflow BigQuery Spanner Data Boost
データ分析基盤の信頼性に関する課題 1. Spanner to BigQuery 処理部分のコストが嵩む & 処理が失敗した場合の retry がしづらい
2. 重要指標は当日分も確認したいが、品質の高いデータが前日分までしか取り込まれていな い
重要指標のこれまでのデータ分析運用 • 基本的な要件であれば前日分までのデータを用いた分析で問題無し • 一部の重要指標(決済関連等)に関しては当日分のデータも分析したい要件がある • 当初は重要指標として利用するデータをログに出力し、Cloud Logging の sink
設定でニ アリアルタイムに BigQuery に取り込んでいた • ログの場合は少なからず欠損や多重書き込みがあり、品質の低いデータによる 分析となっていた • 重要指標の当日分に関しても品質の高いデータで分析したい
品質の高いデータを用いた重要指標のニアリアルタイム分析 • BigQuery の Spanner Federated Query を利用する ◦ BigQuery
に Spanner を外部データソースとして設定することで、BigQuery から Spanner に 直接クエリを投げることができる • BigQuery の Scheduled Query に Spanner Federated Query を用いて Spanner のデー タを数分間隔で BigQuery 側のテーブルに同期 ◦ Looker からのクエリを都度 Federated Query で叩いてしまうとユーザワークロードに影響 が出る可能性があるため ◦ Spanner Data Boost を利用することも可能だがコストとのトレードオフ Cloud Spanner BigQuery Looker BigQuery Federated Query
今後の課題 • SLO ドリブンな開発体制までは整えられていないため、データ品質の 計測から行っていきたい • Data Source から Data
Mart 生成/更新までの全体的なデータパイプラインを改善 • Data Mart の拡充/改修 • Looker の啓蒙と習熟度向上活動
まとめ
まとめ • TIPSTAR においてもデータ分析基盤を利用した様々な分析業務を行っている • データ信頼性に関しても SRE と同じプラクティスが適用可能 • 専任エンジニアがいない中で、マネージドサービスや
OSS を活用してデータ分析基盤 の信頼性向上に取り組んでいる
参考資料
参考資料 • データの価値を失わないためのData Reliability ◦ https://speakerdeck.com/tanakarian/detafalsejia-zhi-woshi-wanaitamefalsedata-reliability • データ収集基盤とデータ整備のこれまでとこれから ◦ https://www.youtube.com/watch?v=eEhwBImCKKc
• CNDF2023前夜祭 - 玄界灘のクラウドネイティブなデータ基盤運用の実践 ◦ https://speakerdeck.com/pyama86/cndf2023qian-ye-ji-xuan-jie-tan-nokuraudoneiteibunadetaji-pan-yun -yong-noshi-jian • 社内データパイプラインツールを Mercari Dataflow Template としてOSS化しました ◦ https://engineering.mercari.com/blog/entry/mercari-dataflow-template/ • What is Data Reliability Engineering? ◦ https://www.acceldata.io/article/what-is-data-reliability-engineering • データ品質管理ガイドブック ◦ https://cio.go.jp/sites/default/files/uploads/documents/data_hinshitu_guide_beta.pdf