1.はじめに
プラットフォーム開発本部 ユーザーレビューグループの松井です。
前回、データベースクラウド移行に関するレポートを記載しました。
今回のレポートで、そのプロジェクトの結果について報告します。
2.プロジェクト成果
レビュー基盤のデータベースをオンプレミス環境からAWS Auroraへ移行し、安定した基盤を構築することに成功しました。
主な成果は以下の通りです。
- AWS Aurora MySQLへの完全移行
- MySQLバージョンを5.6から8.0へ大幅アップグレード
- ストレージエンジンをMyISAMからInnoDBへ、文字コードをutf8mb4へ最新化
- Auto Scalingによる負荷対応能力の劇的向上
これらの施策により、レビュー基盤の安定性、性能、拡張性が飛躍的に向上しました。
3.プロジェクト評価 (QCD)
プロジェクトに関してQCDの観点から評価します。
品質(Q)
APIパフォーマンスの劇的改善
- APIの参照をオンプレDBからAurora参照に切り替えることでパフォーマンスが劇的に改善
- 最も利用頻度の高い3つのAPIのレイテンシが50-70%削減
- 全体的にAPIのレイテンシは1/2程度となり大幅に改善
- 例として以下APIは、月間3億リクエストがありそのレイテンシが大きく改善しました
APIエラー率の激減
- 特定APIのエラーが完全に解消
- タイムアウトエラーがAurora参照に切替後、0となりました
- これらの改善によりサービスの信頼性が飛躍的に高まりました
納期(D)
当初の計画したマイルストーン通りに進捗しました。
- Aurora DB構築:2023年10-11月 ✓
- メンテナンス用仕組み開発:2023年11-12月 ✓
- データ移行とレプリケーション:2023年12月 ✓
- API開発と参照先切替:2023年11月-2024年2月 ✓
- マスター切替:2024年3月 ✓
オンプレDB廃棄についてはまだ残っていますが、2024年8月に対応予定です。
また、こちらは旧DBを直接参照していた他部署の切替対応のため、廃棄がまだできていない状況です。
コスト(C)
- クラウド費用
- 当初見積もりでは費用は$1,400でしたが、実質は$52月となりました
- 自社のReserved Instanceの適用により、見込みより96%の削減となりました
- オンプレDB廃棄
- 今後はオンプレDBの17台のDBサーバ削減が撤去される予定でコスト削減見込みです
4.進行中の障害
本プロジェクト進行中に2つの主要な障害が発生しました。
いずれも迅速に対応し、障害が収束しました。
- API切替時の問題
- オンプレDBからAurora参照のAPI利用への移行時に不具合が発生し、Auroraに2時間にわたり通常の10倍(5000 RPS)の高負荷がかかりました
- 原因は他部署のシステムにおけるAPI利用側の切替不具合でしたが、Auroraのスケールアウト機能により高負荷に対応できました
- スロークエリの発生
- DB環境をMyISAMからInnoDBへ変更した際、APIのレイテンシが悪化し、多くのAPIで性能低下が観測されました
- 原因究明の結果、インデックス不足が判明。既存テーブルへのインデックス追加により問題を解決し、APIの性能を回復させました
- これらの経験は、クラウド移行プロジェクトにおける典型的な問題への対処として貴重な学びとなりました
5.まとめ
本プロジェクトは品質、コスト、納期のすべての面で良い結果を残すことができました。
クラウド移行により、レビュー基盤の安定性と拡張性が大幅に向上し、DMMの今後の成長に向けた強固な基盤を構築することができました。
チーム全員の協力と適切な技術選択、綿密なプロジェクト管理がこの成功をもたらした主要因といえます。
今後も、我々のチームでは高速で安定した基盤の構築を目指し、継続的な改善を進めていきます。
著者プロフィール : 松井 高宏 DMM.comプラットフォーム開発本部のエンジニア。ユーザーレビューグループのチームリーダー兼テックリードとして、月間数十万件の投稿を処理するレビュープラットフォームの開発・運用を実施。8年以上の経験を活かし、最新技術を駆使しDMMの顧客体験向上に貢献している。