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
データの価値を失わないためのData Reliability
Search
Sotaro Tanaka
February 06, 2020
Technology
7
11k
データの価値を失わないためのData Reliability
Sotaro Tanaka
February 06, 2020
Tweet
Share
More Decks by Sotaro Tanaka
See All by Sotaro Tanaka
ABEMAはなぜセマンティックレイヤーに挑戦しているのか?
tanakarian
0
670
データ基盤の○層構造を独り歩きさせない データモデリング設計 Data Ops Night #1
tanakarian
3
4.4k
dbtを活用したデータ基盤の 論理・物理設計の現在地と振り返り / data warehouse logic design by using dbt
tanakarian
8
15k
データ分析基盤の障害を未然に防ぐためのチェックリスト / checklist for preventing incidents of data management system
tanakarian
1
13k
building-evolutionary-data-warehouse
tanakarian
2
10k
Other Decks in Technology
See All in Technology
マルチアカウント管理で必須!AWS Organizationsの機能とユースケース解説
nrinetcom
PRO
1
100
Amazon GuardDuty Malware Protection for Amazon S3を使おう
ryder472
2
110
アプリケーション固有の「ロジックの脆弱性」を防ぐ開発者のためのセキュリティ観点
flatt_security
34
13k
Go の analysis パッケージで自作するリファクタリングツール
kworkdev
PRO
1
430
LINE Notify互換のボットを作った話
kenichirokimura
0
180
AWS CDK コントリビュート はじめの一歩
yendoooo
1
120
サーバシステムを無理なくコンテナ移行する際に伝えたい4つのポイント/Container_Happy_Migration_Method
ozawa
1
110
PostgreSQL Unconference #52 pg_tde
nori_shinoda
1
230
Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善
yadayuki
9
1.3k
SSH公開鍵認証による接続 / Connecting with SSH Public Key Authentication
kaityo256
PRO
2
230
どっちの API SHOW?SharePoint 開発における SharePoint REST API Microsoft Graph API の違い / Which API show? Differences between Microsoft Graph API and SharePoint REST API
karamem0
0
110
Go製のマイグレーションツールの git-schemalex の紹介と運用方法
shinnosuke_kishida
1
420
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
6
320
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Mobile First: as difficult as doing things right
swwweet
223
9.5k
Statistics for Hackers
jakevdp
798
220k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
177
52k
We Have a Design System, Now What?
morganepeng
51
7.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
118
51k
Practical Orchestrator
shlominoach
186
10k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
500
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
28
1.6k
How GitHub (no longer) Works
holman
314
140k
Transcript
1 データの価値を失わないための Data Reliability Engineering 前向きデータ整備人 #2 / 2020-02-06
2 • 自己紹介 / 会社紹介 • Data Reliability Engineeringとは何か •
Data Reliability Engineeringのはじめかた • eurekaでのData Reliability Engineeringの取り組み 今日話すこと
3 Sotaro Tanaka @__sotaron__ Data Engineer @ SRE Team, eureka
Inc. • データ基盤の設計 / 構築 / 運用 • SRE • Data Reliability Engineering • 好き: BigQuery / Docker / k8s / Go / Python • 趣味: アニメ / ゲーム 自己紹介
4 Key Takeaways(先出し) • データの価値を失わないためには、データの整備だけでなく、品質やReliabilityに ついても目を向ける必要がある • データのReliabilityは、エンジニアだけで考えるものではない • Data
Reliability Engineeringは、理論も実践もこれからな分野。仲間求ム。
5 Data Reliability Engineering とは何か?
6 前提 • 「Data Reliability Engineering」には、 どこかの機関が定めている定義はありません (たぶん) • eurekaが実務上課題にぶち当たり、必要にかられて発生したムーブです
• ある程度一般化することで、他の人に資するのでは?と思い、話をします
7 Why ? Data Reliability Engineering
8 [Why?] Data Reliability Engineering ソフトウェアに品質があるように、データにも品質がある ※ DMBOK本の「データ品質」のセクションおすすめ
9 case1: A/Bテストとデータ欠損 • ある施策で、セグメントを2つに分けて、新機能のA/Bテストを実施した • 新機能の実装において、特定条件でログが発火しないバグがあった → 新機能に対して否定的なアクションのログが欠損していたら? →
間違った意思決定をする可能性は高い
10 データの完全性、一貫性の問題 • ある施策で、セグメントを2つに分けて、新機能のA/Bテストを実施した • 新機能の実装において、特定条件でログが発火しないバグがあった → 新機能に対して否定的なアクションのログが欠損していたら? → 間違った意思決定をする可能性は高い
11 case2: 「これ、本当に最新のデータ?」 • 毎朝8:00に更新されるKPIレポート、 PMはみんな朝このレポートを見て、サービスのヘルスチェックをしている • ある施策のリリース後、関連バッチタスクのリソース圧迫により、ログが遅延してい た →
アクション率の計算が不当に低くなり、切り戻し判断をしてしまうかも → 遅延が常態化すれば、PMにとって意思決定に使えないデータになる
12 データの適時性 Timelinessの問題 • 毎朝8:00に更新されるKPIレポート、 PMはみんな朝このレポートを見て、サービスのヘルスチェックをしている • ある施策のリリース後、関連バッチタスクのリソース圧迫により、ログが遅延してい た →
アクション率の計算が不当に低くなり、切り戻し判断をしてしまうかも → 遅延が常態化すれば、PMにとって意思決定に使えないデータになる
13 case3: データ基盤 AM3:00 インフラエンジニア AM3:00「なんかバッチタスクこけてる!急いで直さなきゃ!」 AM5:00「ふう…なんとか直った。寝よう。明日起きれるかな…」 アナリスト 翌朝「あー、そのタスクたまに失敗するやつだからほっといていいよ」
14 サービスレベルがない問題 つらい
15 DREはデータの価値を失わないためにある 以下のような指標を監視することで、高品質なデータを提供し続ける • データがどれくらい欠損しているか => Integrity • あるデータが他のデータと一貫しているか =>
Consistency • レポートは見る人にとって適切な新鮮さで更新されているか? => Timeliness • etc...
16 What ? Data Reliability Engineering
17 [What?] Data Reliability Engineering What is データ信頼性エンジニアリング = Data
Reliability Engineering(DRE) ??
18 DRE = SRE, DBRE ? 似ているが、全く同じものではない
19 DRE impl Reliability Engineering Reliability Engineering 信頼性エンジニアリング Data Reliability Engineering
Reliability Engineeringの具象としてのSRE, DBRE, DRE
20 DRE impl Reliability Engineering w/ DevOps Reliability Engineering 信頼性エンジニアリング Data
Reliability Engineering
21 ソフトウェアの不確実性やリスクと向き合い続ける営み Reliability Engineering
22 価値のデリバリーに関わる各チームの協力体制とそれを可能にするメソッド • CI/CD、自動化 • Dev ⇄ Opsのフィードバック • etc..
DevOps, DataOps, etc...
23 Who ? Data Reliability Engineering
24 [Who?] Data Reliability Engineering ベースは、GoogleのSREチームの簡潔な定義をそのまま引用できそう My explanation is simple:
SRE is what happens when you ask a software engineer to design an operations team. ( 『Site Reliability Engineering』より)
25 AnalyzeとOps, DataとOps とはいえ、アナリストとエンジニアではスキルセットが大きく違う場合もある • サービスレベルを軸に、AnalyzeとOpsの関心ごとを接続しよう
26 Data Reliability Engineering のはじめかた
27 DREのロードマップ、サイクル まずは、モニタリングを始めるところまで。その先はサイクルを回す。
28 サービスレベルの設計から ユーザーにとっての「使える/使えない」からサービスレベルに落とし込む
29 効果的なモニタリングを継続的におこなうには、それに適したシステムが必要 Observable, Configurableなシステムに 監視Saasの活用 Infrastructure as Code
30 eurekaでのDREの取り組み
31 Observableなシステムへの移行検証 重要レポートを対象に、システムをredash×GASから徐々に移行検証したり Current Future
32 BI / DREの定例MTG BIチームとDREで、データ品質や利便性を向上するための定例MTGを開催 みんなで議論したり 主要レポートの更新チェック したり
33 仲間がほしい。事例が聞きたい。 • DREには聖典がまだない • 英語のブログとかは、まあまあ見かけるけど • みんなどうしてるの? • 懇親会とかでいろんなお話聞かせてください!
34 Key Takeaways • データの価値を失わないためには、データの整備だけでなく、品質やReliabilityに ついても目を向ける必要がある • データのReliabilityは、エンジニアだけで考えるものではない • Data
Reliability Engineeringは、理論も実践もこれからな分野。仲間求ム。
35