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
ZOZOTOWNにおけるクラウドDB運用の課題と展望
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
makoto-horiguchi
July 25, 2019
Technology
1
1.3k
ZOZOTOWNにおけるクラウドDB運用の課題と展望
makoto-horiguchi
July 25, 2019
Tweet
Share
More Decks by makoto-horiguchi
See All by makoto-horiguchi
データベースの移行方式を検討した話
makoto8048
2
910
Other Decks in Technology
See All in Technology
Claude Code Skills 勉強会 (DevelersIO向けに調整済み) / claude code skills for devio
masahirokawahara
1
21k
JAWS Days 2026 楽しく学ぼう! 認証認可 入門/20260307-jaws-days-novice-lane-auth
opelab
11
2.3k
Google系サービスで文字起こしから勝手にカレンダーを埋めるエージェントを作った話
risatube
0
190
内製AIチャットボットで学んだDatadog LLM Observability活用術
mkdev10
0
120
非情報系研究者へ送る Transformer入門
rishiyama
11
7.5k
AI時代の「本当の」ハイブリッドクラウド — エージェントが実現した、あの頃の夢
ebibibi
0
130
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
620
複数クラスタ運用と検索の高度化:ビズリーチにおけるElastic活用事例 / ElasticON Tokyo2026
visional_engineering_and_design
0
160
オレ達はAWS管理をやりたいんじゃない!開発の生産性を爆アゲしたいんだ!!
wkm2
4
530
CyberAgentの生成AI戦略 〜変わるものと変わらないもの〜
katayan
0
230
It’s “Time” to use Temporal
sajikix
2
160
Go標準パッケージのI/O処理をながめる
matumoto
0
210
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
170
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
380
Building Adaptive Systems
keathley
44
3k
Building an army of robots
kneath
306
46k
A better future with KSS
kneath
240
18k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Visualization
eitanlees
150
17k
Side Projects
sachag
455
43k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
A designer walks into a library…
pauljervisheath
210
24k
Transcript
ZOZOTOWNにおける クラウドDB運用の課題と展望 株式会社ZOZOテクノロジーズ 開発部 リプレースチーム エンジニア 堀口 真 Copyright ©
ZOZO Technologies, Inc.
© ZOZO Technologies, Inc. 株式会社ZOZOテクノロジーズ 開発部 リプレースチーム エンジニア 堀口 真
2018年 4月入社。 現在 ZOZOTOWN リプレースを担当。 前職ではSI/インフラ構築をメインに従事。 オンプレOracle育ち。 2
© ZOZO Technologies, Inc. ・DBサービス構成 ・クラウドDB運用で発生した問題と対策 ・これから ・まとめ 3 アジェンダ
© ZOZO Technologies, Inc. DBサービス構成 4
© ZOZO Technologies, Inc. DBサービス構成 システム構成とアクセス図 5 Azure SQL Database(PRIMARY)
Azure SQL Database (SECONDARY) Azure SQL Database (SECONDARY) AKS (application) SQL Server on Azure VM On premises Transaction replication SQL Server Geo replication Read Only Transaction replication
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 6
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【問題1】性能問題 7 →本番リリースしたものの見積もりよりもSQL Database のCPU使用率が高くなり100%で張り付いてしまう
→結果的にクエリ処理のタイムアウトが大量発生
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策1】性能問題 8 →まずはクエリチューニングを行いクエリの処理時間を削 減することでCPU使用率を下げる →クエリの多重度(MAXDOP)をチューニングしてサー
バCPU使用率を低減 トラフィックに合わせてサーバ台数を増強するのは最終手段 リプレース前コスト < リプレース後コストとなってはツライ
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策1】性能問題 9 →Azureの各種DBサービスを全て同条件下で性能を測定し最 適なサービスを再選定 トラフィック合わせてサーバ台数を増強するのは最終手段
リプレース前コスト < リプレース後コストとなってはツライ ・SQL Database DTUモデル ・SQL Database vCoreモデル ・SQL Database Managed Instance ・SQL Database Hyperscale ・SQL Sever on Azure VM
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策1】性能問題 10 →コストを増やさずにDBサーバの台数を増やす作戦 = リードスケールアウトの採用
トラフィックに耐えるためにサーバ台数を増強するのは最終手段 リプレース前コスト < リプレース後コストとなるのはツライ
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【参考】SQL Databaseリードスケールアウトとは 11 1つのエンドポイントの裏側で動作する複数DBサーバをユーザアプリケ ーションからReadOnlyで利用できる仕組み
AKS (application) host: xxxxx.database.windows.net EP ApplicationIntent: ReadWrite ApplicationIntent : ReadOnly endpoint
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【問題2】DBサービスがたびたびアクセス不可になる 12 →クラウドサービス異常によりDBサービスへの接続が できなくなりエラー
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策2】DBサービスがたびたびアクセス不可になる 13 →リトライ制御の導入 クラウド起因のサービス不能は避けられない AKS
Cluster A (application) AKS Cluster B (application) NG!! Web Servers リトライ
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策2】DBサービスがたびたびアクセス不可になる 14 →さらに・・・マルチクラウドの導入 クラウド起因のサービス不能は避けられない NG!!
Web Servers リトライ
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【問題3】マネージド型DBにまつわる問題 15 →不定期メンテテンスによるDBサービス停止によりア クセスエラー
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策3】マネージド型DBにまつわる問題 16 →リトライ制御の導入 ※前述 運用お任せのマネージド型では不定期メンテは避けられない
© ZOZO Technologies, Inc. クラウドDB運用で発生した問題と対策 【対策3】マネージド型DBにまつわる問題 17 →メンテナンスタイミングのスライド 運用お任せのマネージド型では不定期メンテは避けられない AKS
Cluster A (application) AKS Cluster B (application) NG!! Web Servers リトライ メンテ中! サービス中
© ZOZO Technologies, Inc. これから 18
© ZOZO Technologies, Inc. これから DBサービス選定の自由化 19 →SQL Server固有のレプリケーションによるデータ連携 を廃止し、CDC(ChangeDataCapture)によるデータ連
携 サービス固有の仕組みを一度採用してしまうと、将来ニーズに合ったサ ービス選定ができなくなる →特定のDBサービスに依存しないシステム構成
© ZOZO Technologies, Inc. これから NoSQLを併用 20 →キャパシティの動的スケールを得意とするNoSQLサー ビスを併用したハイブリッドなDBサービス構成 ZOZOTOWNの増減の激しいトラフィックを無駄なくさばくため動的なス
ケールをしたい
© ZOZO Technologies, Inc. まとめ 21
© ZOZO Technologies, Inc. まとめ ・クラウド運用してみると設計段階では把握できない諸々課題が出 ますが、対処方法は色々とあるため恐れずクラウドへリフトしまし ょう 22 ・ここまで大胆なシステム変更が可能なのはやっぱ自社サービスだ
から
None