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
DBトラブルの原因特定スピードアップ! ~DB可視化の勘所~
Search
Akira.S
September 25, 2025
Technology
0
45
DBトラブルの原因特定スピードアップ! ~DB可視化の勘所~
2025年9月12日に開催された「JPOUG Tech Talk Night #14」での発表資料です。
DBの稼働状況やリソース情報を可視化する際のポイントを実例を元に解説しています。
Akira.S
September 25, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
Claude Code Subagents 再入門 ~cc-sddの実装で学んだこと~
gotalab555
10
17k
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
7
4.4k
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
0
220
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
110
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
150
Introduction to Bill One Development Engineer
sansan33
PRO
0
300
私のMCPの使い方
tsubakimoto_s
0
110
現場データから見える、開発生産性の変化コード生成AI導入・運用のリアル〜 / Changes in Development Productivity and Operational Challenges Following the Introduction of Code Generation AI
nttcom
1
400
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
[VPoE Global Summit] サービスレベル目標による信頼性への投資最適化
satos
0
190
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
697
190k
The Invisible Side of Design
smashingmag
302
51k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Mobile First: as difficult as doing things right
swwweet
225
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
990
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Six Lessons from altMBA
skipperchong
29
4k
Transcript
DBトラブルの原因特定スピードアップ! DB可視化の勘所 SBペイメントサービス株式会社 システム本部 システム基盤部 基盤運用課 鈴木 彰
自己紹介
自己紹介 SBペイメントサービス株式会社 システム本部システム基盤部基盤運用課 鈴木 彰 データベース・エンジニア ※Oracle特化型 主な業務 • OracleDBに関することならなんでも
• DBリプレイスPJでは大体PL兼DB担当 • チームマネジメントや運用改善をやることも Akira.S(@nag_akrs)
会社紹介 3 インターネット コンテンツ 決済・金融 通信 海外投資 その他 Softbankグループ ソフトバンク傘下の決済分野における中核事業会社
SBペイメントサービスとは
会社紹介 4 ソフトバンク携帯ユーザー向けの「ソフトバンクカード」のカード発行・運営をし ています。 ソフトバンクカードは、Visa加盟店で利用できるプリペイドカードです。ご利 用金額に応じてTポイントが貯まります。 カード発行業務 決済代行 EC運営事業者さま向けにオンライン決済事業を運営しています。豊富な 決済手段をまとめてご提供しています。
カード加盟店業務 Visa、Mastercard、UnionPay(銀聯)のメンバーシップライセンスを保 有しており、各ブランドのアクワイアラー(クレジットカード加盟店契約会 社)としての加盟店審査や管理事業、端末決済サービスを提供していま す。 ソフトバンクと共同で、ソフトバンク携帯ユーザー向けの通話料合算請求 「ソフトバンクまとめて支払い」の開発・運営をしています。 キャリア決済 実店舗/訪問販売 EC/ネット店舗 事業内容
ソフトバンク携帯ユーザー向けの「ソフトバンクカード」のカード発行・運営をし ています。 ソフトバンクカードは、Visa加盟店で利用できるプリペイドカードです。ご利 用金額に応じてTポイントが貯まります。 カード発行業務 カード加盟店業務 Visa、Mastercard、UnionPay(銀聯)のメンバーシップライセンスを保 有しており、各ブランドのアクワイアラー(クレジットカード加盟店契約会 社)としての加盟店審査や管理事業、端末決済サービスを提供していま す。
ソフトバンクと共同で、ソフトバンク携帯ユーザー向けの通話料合算請求 「ソフトバンクまとめて支払い」の開発・運営をしています。 キャリア決済 実店舗/訪問販売 会社紹介 5 決済代行 EC運営事業者さま向けにオンライン決済事業を運営しています。豊富な 決済手段をまとめてご提供しています。 EC/ネット店舗 事業内容
会社紹介 6 加盟店 通販サイト ゲーム 電子書籍/動画 教育 不動産 その他 チケット
決済機関 コンビニ支払い 携帯キャリア決済 クレジットカード バーコード決済 口座振替 ポイント支払い アカウント連携決済 当社 決済サービス 全て一本化 リンク 型 API 型 オンライン決済サービス ECサイト向けに多種多様な決済手段に対応した決済画面や決済APIを提供
システム概要図 7 加盟店様 フロントエンド AP 外部接続 GW DB (Master) DB
(Slave) 決済 管理画面 加盟店様 各種決済機関 GoldenGate
すみません、、、ようやく本題です
本日お話しすること 9 ➢ DBの可視化とは? ➢ DBダッシュボードの実例(当社の場合) ➢ 可視化の際に見るべき情報 ➢ ダッシュボードを構築する際に意識すること
本日お話しすること 10 ➢ DBの可視化とは? ➢ DBダッシュボードの実例(当社の場合) ➢ 可視化の際に見るべき情報 ➢ ダッシュボードを構築する際に意識すること
DBの可視化とは? 1. 従来(古来?)のモニタリング プロセス ログ メトリクス ✓CLIでの情報取得 • 変化/変動に気付きにくい ✓監視対象毎にウィンドウ
• 数が多すぎて見きれない • 準備の手間がかかる ➢ 各種情報の相関がわからない • ウィンドウが分割されていたり時間間隔が統一されていないの で相関関係が読み取りづらい ✓『今』しかわからない • 直近数分でいいから推移が見たい 面倒くさいのにイマイチ意味がない
DBの可視化とは? 12 2. ダッシュボードによる各種情報の可視化 = 可観測性の向上 DBサーバ モニタリング・プラットフォーム メトリクス情報/ログを送信 リアルタイムグラフ化
気軽に確認できるし わかりやすい!
本日お話しすること 13 ➢ DBの可視化とは? ➢ DBダッシュボードの実例(当社の場合) ➢ 可視化の際に見るべき情報 ➢ ダッシュボードを構築する際に意識すること
DBダッシュボードの実例 14 1. 当社のDBダッシュボード OSメトリクス アクティブ セッション数 待機イベント
DBダッシュボードの実例 15 1. 当社のDBダッシュボード 総セッション数 GoldenGate レプリ・ラグ
本日お話しすること 16 ➢ DBの可視化とは? ➢ DBダッシュボードの実例(当社の場合) ➢ 可視化の際に見るべき情報 ➢ ダッシュボードを構築する際に意識すること
可視化の際に見るべき情報 17 1. アクティブセッション数 ❏ 分かること ➢ (オンライン処理)処理滞留の有無 • 瞬間的な上昇(スパイク)は無視してOK
• 継続的な上昇はDB上で何らかのボトルネックが発生しているとみてよい ➢ (バッチ処理)過度な並列処理 • CPUコア数などのHWの限界を超えた処理の有無 超重要 ❏ 情報ソース ➢ V$SESSION • STATUS=ACTIVE であるセッション数をカウント • DB接続の設計に因るがUSERNAME/SERVICE_NAME/MACHINEなどでグループ化すると良い
可視化の際に見るべき情報 18 ❏ 情報ソース ➢ V$SESSION • 「待機イベント」は実は「待機クラス」⇒ 待機イベントだと細分化されすぎてわかりづらい •
「総セッション数」は「アクティブセッション数」から「STATUS = ‘ACTIVE’」の条件を外しただけ 2. 待機イベント・総セッション数 重要 ❏ わかること ➢ アクティブセッション数の変動の原因 • かなり大雑把な情報(真因究明には更に詳細調査が必要) • とはいえ一次調査用としては十分かつわかりやすい
可視化の際に見るべき情報 19 3. OSメトリクス ❏ 分かること ➢ OSリソース不足 • 正直なところ補足情報でしかない(OSリソースの逼迫=DB処理滞留ではない)
※ もちろん放置して良いわけではない 補足情報 ❏ 情報ソース ➢ プラットフォームの機能を利用 • モニタリングプラットフォームにOSメトリクス収集機能はデフォルトで備わっていることが多い • 万が一備わっていない場合はOS標準コマンド(sar、vmstatなど)を活用
可視化の際に見るべき情報 20 4. GoldenGateレプリケーション状況 ❏ 分かること ➢GoldenGateによる論理レプリケーションのタイムラグ • 当社ではGoldenGateを用いて参照専用スレーブDBを構築しているためこれもモニタリング対象としている •
他にもDataGuardなど環境によってモニタリング対象を検討すると良い おまけ(?) ❏ 情報ソース ➢<GGスキーマ>.gg_lag • GoldenGateのハートビートテーブル機能を利用した際に作成されるラグ監視用のビュー • 詳細はGoldenGateのドキュメント参照
本日お話しすること 21 ➢ DBの可視化とは? ➢ DBダッシュボードの実例(当社の場合) ➢ 可視化の際に見るべき情報 ➢ ダッシュボードを構築する際に意識すること
ダッシュボードを構築する際に意識すること 22 ❏ やりすぎない ➢ 何のための可視化か?そのためには何を可視化すべきか?をよく検討する ➢ 情報は厳選する • 何でもかんでも盛り込まない
※人は情報過多になると混乱する • やるなら目的別にダッシュボードを分ける ➢ 可能な限り1画面に収まるようにデザインする • 表示できないとそもそも可視化の意味が無い ❏ わかりやすさ ➢ DBエンジニアだけがわかってもダメ • 「誰が見てもわかる」を意識する(当社はDBエンジニア以外のメンバーやマネージャー層も前出のダッシュボードを見ます) ➢ ダッシュボードのデザインを工夫する 例えば・・・ ・ 重要な物は大きく表示 ・ 併せてに見たい情報は隣接させる など ➢ 以下の様な点でもぱっと見でわかるように表示を工夫する • 時間の単位(秒/分/時間) • ホスト名やインスタンス名は論理名に置き換える • UIは適度に日本語化する
ご清聴ありがとうございました 23