Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cloud Spanner 導入で実現した快適な開発と運用について

COLOPL Inc.
February 18, 2025

Cloud Spanner 導入で実現した快適な開発と運用について

次世代DB戦略を支えるNewSQL 〜導入企業が語る導入背景と今後の展望〜
https://findy-tools.connpass.com/event/343774/

#NewSQL_findytools

COLOPL Inc.

February 18, 2025
Tweet

More Decks by COLOPL Inc.

Other Decks in Technology

Transcript

  1. 事の発端 → 2017年 • 年々ユーザー数が増加 • 増加に伴い MySQL の負荷対策が複雑化 ◦

    垂直分割(3分割) ◦ 水平分割(64分割) ◦ レプリケーション • ゲームの運用が辛くなっていた 採用した経緯 6
  2. • 水平スケーリング ◦ 繁忙期 → スケールアウト ◦ 閑散期 → スケールイン

    ◦ 数週間から数ヶ月間隔で実施 → ◦ 実施に数日から数週間必要 ▪ 作業者が大変 インフラ側の辛み 7
  3. 同年、Cloud Spanner がリリース • ボタンひとつでスケーリング • フェイルオーバー、メンテナンスが全自動 • SQL 準拠

    • グローバルトランザクション • 同期レプリケーション Cloud Spanner 登場 11 ➔ 渡りに船、願ったり叶ったり?!
  4. 良かった点 • カジュアルにスケールリング ◦ 最近オートスケーリングも GA に! • ノーメンテ運営(重要!) ◦

    例えば位置ゲーで目的地に物理的に移動したのにサーバーが落ちている とガッカリさせてしまう • コードのテクニカル要素が激減 ◦ ビジネスロジックに専念できる 運用して感じたこと 14
  5. 運用して感じたこと 17 ① 過剰なアクセス ② 負荷 MAX Split A Split

    B Split A1 Split A2 Split B1 Split B2 ・・・ Split C Split C1 Split C2 ③ 分割が間に合わない 窒息状態 🔥 🔥 🔥 レイテンシー悪化
  6. リリース前の事前 warm up 18 ① 期待する負荷になるまで徐々にアクセスを増加 ② 常にそこそこの負荷 Split A

    Split B Split A1 Split A2 Split B1 Split B2 ・・・ Split C Split C1 Split C2 ③ じわじわ分割 高負荷に耐えられる状態を作る