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負荷、"仕様変更"で解決しませんか? 技術だけじゃない負荷対策アプローチ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
むらまつ
July 02, 2025
0
450
そのDB負荷、"仕様変更"で解決しませんか? 技術だけじゃない負荷対策アプローチ
PHP カンファレンス 2025
https://phpcon.php.gr.jp/2025/
むらまつ
July 02, 2025
Tweet
Share
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Mind Mapping
helmedeiros
PRO
0
90
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
68
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
110
GitHub's CSS Performance
jonrohan
1032
470k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
270
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
Transcript
2025年6月28日 むらまつ そのDB負荷、"仕様変更"で解決しませんか? 技術だけじゃない負荷対策アプローチ
2 自己紹介 村松 遼 むらまつ りょう • 所属 ◦ 株式会社コドモン
• 最近気になっているツール ◦ Gemini CLI
すべての先生に 子どもと向き合う 時間と心のゆとりを こんなプロダクトを開発しています メインプロダクトは、こども施設職員の業務を支援するWebアプリケーション。 保護者と施設のやり取りを支えるモバイルアプリケーションや、施設職員向けモバイル版 アプリケーション、外部サービスと連携するAPIなども開発しています。 3
4 3 2 今日話すこと コドモンで直面したDB負荷の課題 仕様を変更するというアプローチ 負荷対策で得た教訓 1 2 1
2 3
5 3 2 今日話すこと コドモンで直面したDB負荷の課題 仕様を変更するというアプローチ 負荷対策で得た教訓 1 2 1
6 CONFIDENTIAL - © 2022 CoDMON Inc. 6 1. コドモンで直面したDB負荷の課題
課題:保護者アプリのタイムライン機能
7 CONFIDENTIAL - © 2022 CoDMON Inc. 7 1. コドモンで直面したDB負荷の課題
課題:保護者アプリのタイムライン機能
8 この機能、実は。。。
9 Reader DB負荷全体の 1/2以上を占めていました😱
10 DB負荷が上がりつつづけている現状
11 チームで改善することにしました⚔
12 しかし、改善するのがかなり難しい
13 CONFIDENTIAL - © 2022 CoDMON Inc. 13 負荷改善が難しい理由について ✖
✖ ✖ ✖ ✖ • 新しいもの順に表示する
14 CONFIDENTIAL - © 2022 CoDMON Inc. 14 負荷改善が難しい理由について ✖
✖ ✖ ✖ ✖ • 新しいもの順に表示する ↓ ⚠ 7テーブル(15種類)のデータを並び替える
15 CONFIDENTIAL - © 2022 CoDMON Inc. 15 負荷改善が難しい理由について ✖
✖ ✖ ✖ ✖ • 新しいもの順に表示する ↓ ⚠ 7テーブル(15種類)のデータを並び替える ⚠ limitでデータを絞れない
16 CONFIDENTIAL - © 2022 CoDMON Inc. 16 負荷改善が難しい理由について ✖
✖ ✖ ✖ ✖ • 新しいもの順に表示する ↓ ⚠ 7テーブル(15種類)のデータを並び替える ⚠ limitでデータを絞れない ⚠ テーブル構造が原因で有効なINDEXが貼れない ものもある
17 CONFIDENTIAL - © 2022 CoDMON Inc. 17 チームで考えた技術的アプローチ ✖
✖ ✖ ✖ ✖ • タイムライン表示用テーブル作って
18 CONFIDENTIAL - © 2022 CoDMON Inc. 18 チームで考えた技術的アプローチ ✖
✖ ✖ ✖ ✖ • タイムライン表示用テーブル作って • 更新のイベントを元に
19 CONFIDENTIAL - © 2022 CoDMON Inc. 19 チームで考えた技術的アプローチ ✖
✖ ✖ ✖ ✖ • タイムライン表示用テーブル作って • 更新のイベントを元に • Debeziumを使ってデータを更新し
20 CONFIDENTIAL - © 2022 CoDMON Inc. 20 チームで考えた技術的アプローチ ✖
✖ ✖ ✖ ✖ • タイムライン表示用テーブル作って • 更新のイベントを元に • Debeziumを使ってデータを更新し • 過去のデータも移行し。。。
21 技術的に解決するのは難しそう。。。
22 デザイナー:「仕様変えてみては?」
23 たしかに💡 仕様を変えるなら簡単に解決できそう!
24 デザイナーチームと協力することに🤝
25 3 2 1 今日話すこと コドモンで直面したDB負荷の課題 仕様を変更するというアプローチ 負荷対策で得た教訓
26 CONFIDENTIAL - © 2022 CoDMON Inc. 26 仕様を変更するというアプローチ •
日付の期間の絞り込みを必須にする
27 CONFIDENTIAL - © 2022 CoDMON Inc. 27 仕様を変更するというアプローチ •
日付の期間の絞り込みを必須にする 👉クエリされる範囲は期間内で限定される
28 CONFIDENTIAL - © 2022 CoDMON Inc. 28 仕様を変更するというアプローチ •
日付の期間の絞り込みを必須にする 👉クエリされる範囲は期間内で限定される 👉ユーザーは期間検索が行える様になった
29 CONFIDENTIAL - © 2022 CoDMON Inc. 29 仕様を変更するというアプローチ タイムラインの負荷対策
• 日付の期間の絞り込みを必須にする 👉クエリされる範囲は期間内で限定される 👉ユーザーは期間検索が行える様になった Reader DBのReadIO
30 2 3 1 今日話すこと コドモンで直面したDB負荷の課題 仕様を変更するというアプローチ 負荷対策で得た教訓
31 CONFIDENTIAL - © 2022 CoDMON Inc. 31 負荷対策で得た教訓 •
負荷対策は仕様を変更しないことが前提ではない
32 CONFIDENTIAL - © 2022 CoDMON Inc. 32 負荷対策で得た教訓 •
負荷対策は仕様を変更しないことが前提ではない • 負荷対策とUX向上の両方を考える
33 CONFIDENTIAL - © 2022 CoDMON Inc. 33 負荷対策で得た教訓 •
負荷対策は仕様を変更しないことが前提ではない • 負荷対策とUX向上の両方を考える • 負荷対策はエンジニアだけで行うものではない
34 ご清聴ありがとうございました!