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
実践的データ基盤への処方箋輪読会_20220203
Search
Hiroaki ONO
February 03, 2022
Technology
0
680
実践的データ基盤への処方箋輪読会_20220203
Hiroaki ONO
February 03, 2022
Tweet
Share
More Decks by Hiroaki ONO
See All by Hiroaki ONO
改正個人情報保護法実務ガイドブック輪読会_20220316
hihihiroro
0
290
Kubernetesに入門したい
hihihiroro
47
15k
Dockerコマンド
hihihiroro
2
860
20170602_sqlstudy
hihihiroro
2
630
Other Decks in Technology
See All in Technology
エムスリーマネジメントチーム紹介資料 / Introduction of M3 Management Team
m3_engineering
0
250
いまからでも遅くない! コンテナでWebアプリケーションを 動かしてみよう(2-1)WebAPI座学
nomu
0
140
成果のためのコミュニケーション - 語彙を育てよう -/communication-for-good-outcome-developing-vocabulary
hassaku63
4
150
GitHub Actions/Docker/Terraform/Renovate で最小限の Monorepo CD パイプラインを作る / Minimalistic Monorepo CD Pipeline with GitHub Actions, Docker, Terraform and Renovate
yuyatakeyama
4
340
【インフラエンジニアbooks】30分でわかる「AWS継続的セキュリティ実践ガイド」
hssh2_bin
4
1k
【shownet.conf_】ネットワークテストの最適化と利便性の追求
shownet
PRO
0
240
Understanding and Optimising INP
akshayysharma
0
150
入門 バックアップ
ryuichi1208
14
4.5k
Oracle Database 23ai 新機能#4 Real Application Clusters
oracle4engineer
PRO
0
110
DenoでもViteしたい!インポートパスのエイリアスを指定してラクラクアプリ開発
bengo4com
1
1.7k
Slackbot × RAG で実現する社内情報検索の最適化
howdy39
1
200
LINEヤフー新卒採用 コーディングテスト解説 アルゴリズム問題編
lycorp_recruit_jp
0
13k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Atom: Resistance is Futile
akmur
261
25k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
279
13k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.3k
Happy Clients
brianwarren
97
6.6k
Designing with Data
zakiwarfel
98
5.1k
The Invisible Customer
myddelton
119
13k
Art, The Web, and Tiny UX
lynnandtonic
295
20k
Scaling GitHub
holman
458
140k
We Have a Design System, Now What?
morganepeng
49
7.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Making Projects Easy
brettharned
114
5.8k
Transcript
Hiroaki ONO (@hihihiroro) 実践的データ基盤への処方箋 輪読会 2022/02/03 (2-5 〜 2-8)
サマリ • データベースからの収集方法 ◦ SQL 利用 ◦ ファイル経由 ◦ 更新ログ収集
• 収集方法はうまく使い分ける ◦ 取得元データベースの種類 ◦ データベースへの負荷 ◦ 予算 など
目次 2-5 SQLを利用したデータベース収集ではデータベースへの負荷を意識する 2-6 データベースの負荷を考慮したデータ収集では、エクスポートやダンプファイル活用を視野に入れる 2-7 更新ログ経由のデータベース収集はデータベースの負荷を最小限にしてリアルタイムに収集できる 2-8 各データベースの収集の特徴と置かれた状況を理解して使い分ける
目次 2-5 SQLを利用したデータベース収集ではデータベースへの負荷を意識する 2-6 データベースの負荷を考慮したデータ収集では、エクスポートやダンプファイル活用を視野に入れる 2-7 更新ログ経由のデータベース収集はデータベースの負荷を最小限にしてリアルタイムに収集できる 2-8 各データベースの収集の特徴と置かれた状況を理解して使い分ける
• 企業に重要なデータはDBへ蓄積されている ◦ 業務はコンピュータシステムで行われることがほとんど ◦ データ構造を決めて管理 ◦ データの一貫性を保つ • データの例
◦ 顧客との取引データ ◦ 商品や在庫のデータ ◦ 企業会計のデータなど 重要なデータはDBへ 本のページ p84
• メリット ◦ 実装が簡単で敷居が低い、開発できるエンジニアが多数 ◦ 取得対象をSQL で加工、絞り込みが可能 • デメリット ◦
取得元DB へ高い負荷がかかる ▪ データ収集クエリによるキャッシュ汚染 ▪ 長時間クエリによるリソース消費 ▪ ディスク容量枯渇によるシステム不安定 DBからの収集 SQL実行 (1/4) 本番DB から全件取得 本のページ p85-86
• ポイント ◦ 取得データが減るためデータ収集時間の削減が見込める ▪ データ追記型 : 追加されたデータを収集し挿入 ▪ データ更新型
: 更新されたデータを収集し更新、挿入 ◦ 取得の際にインデックスを利用しないと負荷軽減にはならない可能性あり DBからの収集 SQL実行 (2/4) 本番DB から一部取得 本のページ p87-89
DBからの収集 SQL実行 (3/4) 本番DB から並列取得 • ポイント ◦ 並列実行するためデータ収集時間の削減が見込める ▪
取得元のストレージの分散状況により遅くなる可能性あり ▪ 取得の際にインデックスを利用しないと負荷軽減にはならない可能性あり 本のページ p90-91
• ポイント ◦ クエリ収集専用DB なので負荷をあまり考える必要がない ▪ レプリカを作成するために費用、手間がかかる DBからの収集 SQL実行 (4/4)
レプリカDB から取得 本のページ p91-92
目次 2-5 SQLを利用したデータベース収集ではデータベースへの負荷を意識する 2-6 データベースの負荷を考慮したデータ収集では、エクスポートやダンプファイル活用を視野に入れる 2-7 更新ログ経由のデータベース収集はデータベースの負荷を最小限にしてリアルタイムに収集できる 2-8 各データベースの収集の特徴と置かれた状況を理解して使い分ける
DBからの収集 エクスポート • メリット ◦ SQL 実行よりもDB への負荷が小さい ◦ DB
によってはエクスポート時に絞り込みができることがある • デメリット ◦ エクスポートファイルがテーブルサイズより大きくなることがある ◦ SQL 実行ほどではないが DB への負荷がある 本のページ p93-94
DBからの収集 ダンプファイル • メリット ◦ SQL 実行よりもDB への負荷が小さい ◦ データの変換がいらないため
DB への負荷が小さい • デメリット ◦ 復元用DB を用意する必要がある ◦ ダンプ時に絞り込みなどができない 本のページ p94-95
目次 2-5 SQLを利用したデータベース収集ではデータベースへの負荷を意識する 2-6 データベースの負荷を考慮したデータ収集では、エクスポートやダンプファイル活用を視野に入れる 2-7 更新ログ経由のデータベース収集はデータベースの負荷を最小限にしてリアルタイムに収集できる 2-8 各データベースの収集の特徴と置かれた状況を理解して使い分ける
DBからの収集 更新ログ • メリット ◦ DB に対する負荷が小さい ◦ データ収集速度が向上、必要帯域が小さくて良い •
デメリット ◦ 専用の製品を使う必要がある ◦ 復元用DB の用意など構築が複雑化 本のページ p96-99 データに対する操作
DBからの収集 更新ログ CDC • メリット ◦ ほぼリアルタイムにDB のデータを収集 ◦ 復元用DB
が不必要 • デメリット ◦ 専用の製品を使う必要がある ◦ DB に更新が多い場合、収集が間に合わない可能性がある ◦ 処理が止まったときの再実行が困難 本のページ p100-102
目次 2-5 SQLを利用したデータベース収集ではデータベースへの負荷を意識する 2-6 データベースの負荷を考慮したデータ収集では、エクスポートやダンプファイル活用を視野に入れる 2-7 更新ログ経由のデータベース収集はデータベースの負荷を最小限にしてリアルタイムに収集できる 2-8 各データベースの収集の特徴と置かれた状況を理解して使い分ける
DBからの収集方法まとめ • 使い分けのコツ ◦ 取得元DB の重要度 ▪ 高・低 ◦ 使える予算
▪ 潤沢・不足 ◦ ユースケース ▪ リアルタイム収集 ▪ 取得データ削減 本のページ p102-104