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
300
データ基盤の○層構造を独り歩きさせない データモデリング設計 Data Ops Night #1
tanakarian
2
3.7k
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
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
Zennのパフォーマンスモニタリングでやっていること
ryosukeigarashi
0
150
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
510
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
630
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
480
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Producing Creativity
orderedlist
PRO
341
39k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Unsuck your backbone
ammeep
668
57k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
A Philosophy of Restraint
colly
203
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
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