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
データ分析基盤の障害を未然に防ぐためのチェックリスト / checklist for prev...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Sotaro Tanaka
November 04, 2020
Programming
14k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
データ分析基盤の障害を未然に防ぐためのチェックリスト / checklist for preventing incidents of data management system
2020/11/04に開催されたDataEngineeringStudy#4でのLT登壇資料です。
Sotaro Tanaka
November 04, 2020
More Decks by Sotaro Tanaka
See All by Sotaro Tanaka
データエンジニアリング 4年前と変わったこと、 4年前と変わらないこと
tanakarian
4
1k
ABEMAはなぜセマンティックレイヤーに挑戦しているのか?
tanakarian
0
1.4k
データ基盤の○層構造を独り歩きさせない データモデリング設計 Data Ops Night #1
tanakarian
3
5.9k
dbtを活用したデータ基盤の 論理・物理設計の現在地と振り返り / data warehouse logic design by using dbt
tanakarian
8
16k
データの価値を失わないためのData Reliability
tanakarian
7
12k
building-evolutionary-data-warehouse
tanakarian
2
11k
Other Decks in Programming
See All in Programming
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
380
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
230
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
500
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
350
Performance Engineering for Everyone
elenatanasoiu
0
270
フィードバックで育てるAI開発
kotaminato
1
120
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
950
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.6k
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
260
えっ!!コードを読まずに開発を!?
hananouchi
0
220
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
140
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
240
A Soul's Torment
seathinner
6
3.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Odyssey Design
rkendrick25
PRO
2
730
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Thoughts on Productivity
jonyablonski
76
5.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
390
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.7k
ラッコキーワード サービス紹介資料
rakko
1
3.9M
Transcript
データ分析基盤の障害を未然に防ぐためのチェックリスト 2020/11/4 Sotaro Tanaka @__sotaron__ Data Engineering Study #4
2 • Data Management & BI • Data Reliability •
Site Reliability • Like : Docker/k8s/Python/Go/小倉唯さん • Hobby : / / ⚽ / 小倉唯さん 自己紹介 Sotaro Tanaka @__sotaron__ Data Engineer @ Ubie, Inc. DS Team 2
3 今日お話すること データ分析基盤においてよくありがちな障害を、未然に防止するにはどんなことをしたらいいのか? それらを • ベースとなるData Reliabilityの概念 • 事前防止策のチェックリストの例 あたりを交えながら、お話したいと思います。
タイトルに「チェックリスト」とありますが、わかりやすさのための例くらいに思ってください。 3
4 目次 1.はじめに / Data Reliabilityとは? 2.データ分析基盤のコンポーネントと品質チェックリスト 3.retroactiveからproactiveへ 4
5 Data Reliabilityって何? はじめに / Data Reliabilityとは? データ活用を推進する上で、避けては通れないデータに関わる諸々の品質についての話。 ざっくり2つの品質があると思います。 1/
データ品質 分析レポートやMLアプリケーションで利用している「データそのもの」の品質。間違ってたら困る。 2/ データ関連システムの品質 データパイプラインやワークフロー、BIツール、データベースなど、「データを取り扱うシステム」の品質。 5
6 データ品質の指標 代表的なもの 6 完全性 Integrity レコードは欠損していないか? Requiredなカラムに値があるか? これがないと…? -
許容値を超えたら、データは「ス トアするのに金がかかるゴミ」に なる 一貫性 Consistency ある値が… データセット間で一貫しているか? データセット内で一貫しているか? これがないと…? - レポートAとレポートBで同じ指 標値が異なる値になったりする 一意性 Uniqueness 重複してはいけないレコードやインスタ ンスが重複していないか? 重複排除とほぼ同じ。 これがないと…? - 極端な話、KPIが不正に二倍に なったりする。 はじめに / Data Reliabilityとは?
7 データ関連システムの品質指標 代表的なもの 7 適時性 Timeliness 更新系システムのデータ変化に分析 /ML側が適切に追従できているか? レポートは適切に更新されたか? これがないと…?
- 3日前の速報値で意思決定する PdM - ある日のデータ反映が、顧客側 に表示されるのは3日後 可用性 Availability システムが稼働しているべき時間中、 稼働し続けているか? これがないと…? - ダッシュボード見れません! 冗長性 Redundancy データロストしないか? オペミスでデータ消した時にどうなる? これがないと…? - 事業\(^o^)/オワタ はじめに / Data Reliabilityとは?
8 目次 1.はじめに / Data Reliabilityとは? 2.データ分析基盤のコンポーネントと品質チェックリストの例 3.retroactiveからproactiveへ 8
9 よくあるシステム構成要素で 考えてみる 9
10 ETL(ELT)パイプライン、ワークフローの場合 データ分析基盤のコンポーネントと品質チェックリストの例 1/ パイプライン上のタスクが失敗したときのリトライを考慮できているか? 耳タコだが、タスクが冪等になっているかなどの観点がある。可用性、一貫性、一意性など複数の指標が関係。 冪等にできない場合、リトライ手順は複雑化するのでドキュメンテーションできているかなども事前にチェックできると♂ 2/
扱っているデータごとの時間的なボラティリティを理解しているか? 社内レポートや顧客に表示する画面へのデータ反映などの問題。適時性の指標が関係。 たとえば頻繁な更新が走るデータと、静的なマスタデータを同じパイプラインに載せるのが吉なのか?などを考えられる。 3/ デプロイ時にストリームデータが欠損しないシステムになっているか? たとえば、Blue/Greenなデプロイ戦略をとれているのか?メッセージキューを利用しているならackを正しくハンドリングしているか、 など。可用性、完全性、冗長性などの指標が関係する。ストリーム処理の障害対応はつらい。 10
11 データストアの場合 データ分析基盤のコンポーネントと品質チェックリストの例 1/ 故障してもデータロストしないか? 当たり前だけど、バックアップを取る。そのバックアップがリストアできることを定期的にテストしておく、など。 PITRがサポートされているのか?サポートされていないなら、何を許容できるのか把握しているか?冗長性の観点。 2/
failover時の挙動はテストしているか? 機能的に提供されているfailoverに安心しきってはいけない。 failoverには暗黙的な条件がいくつもあったりするので、それを正しくハンドリングできているのか?をチェックしておく 可用性、一貫性(replication失敗とか)などに関わる。 11
12 BIツールの場合 1/ 故障したとき、シートの情報はロストしないか?(自社ホストの場合) BIツールは多くの場合、内部的にシート情報や外部データソースへの接続情報を保持するため、データストア層を持つ。 MySQLとかPostgreでバックアップを取るというと当たり前だが、こちらのバックアップ/リストア戦略も当然だいじ。 冗長性の指標。
2/ グラフや数表の描画や表示にかかる時間をモニタできているか? SLOにおさまっているか? 「グラフの表示が遅いんですけど〜」と言われることはよくあると思います。 ユーザーからの体感値の報告を無視してはいけません。 データセットが肥大化していることによって、レスポンスが遅くなっていたら、ある日突然全てのグラフが1日見れなくなるなんてこともあ るかもしれません。 データ分析基盤のコンポーネントと品質チェックリストの例 12
13 小さな失敗や事故は 発生しうる前提で考える 13
14 品質を気にしておかないと どうなりますか? 14
15 小さな失敗や事故が 放置され積み重なり、 障害が発生しやすくなる 15
16 目次 1.はじめに / Data Reliabilityとは? 2.データ分析基盤のコンポーネントと品質チェックリスト 3.retroactiveからproactiveへ 16
17 とはいえ、 障害は起きうるので 17
18 retroactiveな障害対応から品質への期待を知る 事後的な障害対応においては、ポストモーテムをやるべき。というのは SREの文脈では当たり前の話。 同様にデータ分析基盤においても、ポストモーテムのプロセスから、顧客 (社内/社外)のデータ品質やデータ関連シ ステムの品質への期待を知るのが吉。(もちろん事前にわかる期待には応えておく) 18 retroactiveからproactiveへ
19 proactiveに品質を追求する ポストモーテムで知った品質期待を先述したようなチェックリストや SLIに落とし込んで、 自身の組織内で継続的な品質向上、維持のサイクルを回す。 求められる品質はプロダクトの性質や顧客が誰なのか、採用技術は何なのかによって異なるので、 完全に標準化されたガイドは世に出てこない。 19 retroactiveからproactiveへ
20 Key Takeaway 20
21 今日のお持ち帰り retroactiveな障害対応から品質期待を知り、 proacitiveなデータ品質維持、向上を目指そう 21
22 Ubieで一緒にData ReliabilityとかBIとかやりませんか? BIとかData Reliabilityに限らず、様々な職種でも募集中なので、是非!! 22