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
makoto-horiguchi
July 25, 2019
Technology
1
1.2k
ZOZOTOWNにおけるクラウドDB運用の課題と展望
makoto-horiguchi
July 25, 2019
Tweet
Share
More Decks by makoto-horiguchi
See All by makoto-horiguchi
データベースの移行方式を検討した話
makoto8048
2
850
Other Decks in Technology
See All in Technology
RubyOnRailsOnDevin+α / DevinMeetupJapan#2
ginkouno
0
380
IIWレポートからみるID業界で話題のMCP
fujie
0
210
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
6
1.1k
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.4k
Kotlinで学ぶ 代数的データ型
ysknsid25
5
1.1k
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.1k
Model Mondays S2E01: Advanced Reasoning
nitya
0
350
2025/6/21 日本学術会議公開シンポジウム発表資料
keisuke198619
1
240
生成AIをテストプロセスに活用し"よう"としている話 #jasstnano
makky_tyuyan
0
160
比起獨自升級 我更喜歡 DevOps 文化 <3
line_developers_tw
PRO
0
160
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
4
1.6k
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.6k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
4 Signs Your Business is Dying
shpigford
184
22k
GitHub's CSS Performance
jonrohan
1031
460k
Building an army of robots
kneath
306
45k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Language of Interfaces
destraynor
158
25k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Visualization
eitanlees
146
16k
Facilitating Awesome Meetings
lara
54
6.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
For a Future-Friendly Web
brad_frost
179
9.8k
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