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
260
データ基盤の○層構造を独り歩きさせない データモデリング設計 Data Ops Night #1
tanakarian
2
3.6k
dbtを活用したデータ基盤の 論理・物理設計の現在地と振り返り / data warehouse logic design by using dbt
tanakarian
8
14k
データ分析基盤の障害を未然に防ぐためのチェックリスト / checklist for preventing incidents of data management system
tanakarian
1
12k
building-evolutionary-data-warehouse
tanakarian
2
10k
Other Decks in Technology
See All in Technology
Autify Company Deck
autifyhq
1
39k
プロダクト成長に対応するプラットフォーム戦略:Authleteによる共通認証基盤の移行事例 / Building an authentication platform using Authlete and AWS
kakehashi
1
150
バクラクにおける可観測性向上の取り組み
yuu26
3
420
20241031_AWS_生成AIハッカソン_GenMuck
tsumita
0
110
GitHub Universe: Evaluating RAG apps in GitHub Actions
pamelafox
0
180
Product Engineer Night #6プロダクトエンジニアを育む仕組み・施策
hacomono
PRO
1
470
Shift-from-React-to-Vue
calm1205
3
1.3k
10分でわかるfreeeのQA
freee
1
3.4k
VPC間の接続方法を整理してみた #自治体クラウド勉強会
non97
1
870
とあるユーザー企業におけるリスクベースで考えるセキュリティ業務のお話し
4su_para
3
330
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
430
AWSコンテナ本出版から3年経った今、もし改めて執筆し直すなら / If I revise our container book
iselegant
15
4k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
53
9k
Six Lessons from altMBA
skipperchong
26
3.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
800
Building Applications with DynamoDB
mza
90
6.1k
The Power of CSS Pseudo Elements
geoffreycrofte
72
5.3k
Facilitating Awesome Meetings
lara
49
6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Statistics for Hackers
jakevdp
796
220k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
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