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
[Modern App Summit '25] 200 億レコードを超える Aurora を ...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ekanai
March 10, 2025
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[Modern App Summit '25] 200 億レコードを超える Aurora を Cloud Spanner へ移行
ekanai
March 10, 2025
More Decks by ekanai
See All by ekanai
TimeTree のデータベースを Aurora から Cloud Spanner へ移行
3utama
1
590
[TimeTree] Aurora から Spanner への 移行の決断と背景
3utama
2
4.3k
TimeTree の SRE が海外展開においてやったこと&やってないこと by【TimeTree × みてね勉強会】 グローバル対応への挑戦 〜SRE/インフラ編〜
3utama
1
690
数十億レコードのRDS MySQL5.6を1週間程でAurora MySQL5.7へ移行した時の話 #jawsdays
3utama
0
3.8k
1日でSSHをやめることができた話 #jawsdays
3utama
10
17k
Other Decks in Technology
See All in Technology
Data + AI Summit 2026 イベントレポート: 「AIがビジネスで意思決定するデータ基盤」へ
nek0128
0
170
SRE依存からの脱却 運用を開 発チームへ移す、 フルサイ クル開 発体制の実践
joooee0000
0
2.8k
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
200
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
310
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.4k
タスクの複雑さでモデルを選ぶ ── Thompson Samplingで動かす“トークン/コスト最適化
satohy0323
0
450
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
2
640
知らん間に、回ってる
ming_ayami
0
630
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
2
380
CIで使うClaude
iwatatomoya
0
270
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
250
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
860
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
280
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
The Cost Of JavaScript in 2023
addyosmani
55
10k
Leo the Paperboy
mayatellez
8
1.9k
Ruling the World: When Life Gets Gamed
codingconduct
0
280
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Exploring anti-patterns in Rails
aemeredith
3
440
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Balancing Empowerment & Direction
lara
6
1.2k
How to Ace a Technical Interview
jacobian
281
24k
Transcript
200 億レコードを超 える Aurora を Cloud Spanner へ 移行 Mar
5, 2025 株式会社 TimeTree
Google Cloud 05 移行までの道のり 移行 Modern まとめと今後 移行の背景 01 02
03 04 目次
自己紹介 株式会社 TimeTree の SRE チームマネージャーを担当しています。 世界各国で利用されているサービスの信頼性をメンバーとともに日々追求 しています。 サービスに興味のある方いらっしゃればぜひお声がけください。 金井 栄喜
SRE チームマネージャー
04 Proprietary Google Cloud Next Tokyo ’24 共有とコミュニケーションを 前提につくられた カレンダー
シェアアプリ TimeTree は、予定の「共有」「可視化」とそこで生まれ る 「コミュニケーション」によって、予定管理をだれにとって もあたりまえで簡単なものにします。数ある予定管理 サービスの中で、唯一パーソナル × 共有を軸に価値提 供しているプロダクトです。
05 Proprietary Google Cloud Next Tokyo ’24 公開カレンダー
06 Proprietary Google Cloud Next Tokyo ’24 公開カレンダー
01 移行の背景
データ量の増加 Quotas サービスは順調に成長しているた め、今後もデータの増加が見込ま れます。 利用していた Amazon Aurora の Quotas
が運用に影響すること が予想されました。 主な要因
Million ユーザー数 8->60 サービスの成長とともに ユーザーの増加や利用状 況が変化しデータが増加し ています。 データの推移 Billion レコード数
2->25 TiB データサイズ 1->15
Million ユーザー数 8->60 サービスの成長とともに ユーザーの増加や利用状 況が変化しデータが増加し ています。 データの推移 Billion レコード数
2->25 TiB データサイズ 1->15
Quotas ストレージ コネクション ローカルストレージ • 128TB • 変更不可 • いつかは到達する
• 5 年後に到達も十分に考えられ る • インスタンス サイズ毎にデフォ ルト値がある • 変更可能 • 変更可能だがメモリへの影響が あるため対応が必要になる • インスタンス サイズ毎にデフォ ルト値がある • 変更不可 • DDL テーブルサイズによっては 枯渇し中断されるため喫緊の課 題
Quotas ストレージ コネクション ローカルストレージ • 128TB • 変更不可 • いつかは到達する
• 5 年後に到達も十分に考えられ る • インスタンス サイズ毎にデフォ ルト値がある • 変更可能 • 変更可能だがメモリへの影響が あるため対応が必要になる • インスタンス サイズ毎にデフォ ルト値がある • 変更不可 • DDL テーブルサイズによっては 枯渇し中断されるため喫緊の課 題
02 移行までの道のり
2018 年 課題認識 2022 年 / 1 月 ミッション クリティカルな
課題として社内共有 2023 年 / 1 月 プロジェクト稼働開始 2025 年 / 1 月 移行完了と今後の計画 2019 年 チーム内で課題共有 2022 年 / 6 月 プロジェクト準備 2024 年 / 1 月 移行作業開始 タイムライン
2018 年 課題認識 2022 年 / 1 月 ミッション クリティカルな
課題として社内共有 2023 年 / 1 月 プロジェクト稼働開始 2025 年 / 1 月 移行完了と今後の計画 2019 年 チーム内で課題共有 2022 年 / 6 月 プロジェクト準備 2024 年 / 1 月 移行作業開始 タイムライン
重要だったこと 重要性の共有 最終的にミッションクリ ティカルであるというこ とを認識させることが重 要。 情報を整理しながら繰 り返し伝えていくことで 実現できます。 01
02 03 04 05 事前準備 予算、人員、スケジュー ル含め話を通すための 準備を徹底します。 強い意志 とことんリソースを消費 するプロジェクトになる ので、批判や否定が あっても最終的には サービスや会社にとっ て意義がるという信念 とやりきる強い意志が 大事です。 利益 ただの技術的な興味な どではなく、実施するこ とにより総合的に考え てサービスと会社に寄 与する確証があること が大事です。 期間 期間が短いほどサービ スへの影響、状況の変 化が小さくなり障壁が 低くなります。
03 移行
データ クレンジング 移行しやすいように データ クレンジングを 実施します。 ロードマップ 大きなスケジュールを 立ててそこにロードマッ プを引いていきます。移
行範囲の決定も行いま す。 移行 01 02 03 04 05 アプリケーション修正 MySQL から Spanner へ の必要な変更を実施しま す。 データ マイグレーショ ン データ マイグレーション を実施します。 切り替え Google Cloud に移行 したアプリケーションに リクエストを切り替えま す。
データ クレンジング 移行しやすいように データ クレンジングを 実施します。 ロードマップ 大きなスケジュールを 立ててそこにロードマッ プを引いていきます。移
行範囲の決定も行いま す。 移行 01 02 03 04 05 アプリケーション修正 MySQL から Spanner へ の必要な変更を実施しま す。 データ マイグレーショ ン データ マイグレーション を実施します。 切り替え Google Cloud に移行 したアプリケーションに リクエストを切り替えま す。
データ マイグレーション • AWS と Google Cloud 間で VPN 接続
• Datastream で Aurora から Cloud Storage にデータ 登録 • Cloud Storage イベントを Cloud PubSub に送信 • Cloud PubSub イベントを Dataflow が Subscribe • Dataflow が Spanner にデータ登録 Dataflow Cloud Spanner Pub/Sub Datastream Cloud Storage Cloud VPN Compute Engine
Architecture after migration from Amazon Aurora to Google Cloud Spanner
AWS Cloud Front S3 (Log) Load Balancer ECS (App) Aurora Dynamo DB ECS (ETL) S3 (Assets) Cloud Load Balancing Cloud CDN Cloud Run Memorystore Cloud Spanner Cloud Storage Looker BigQuery Cloud Composer
04 Modern
Google Workspace との統合 社員 ID と直接連携す ることでより簡易で強力 なアクセス設定が可能 です。 オート
シャーディング スキーマ設計さえすれ ばあとはマネージドな シャーディングが実施さ れます。 オート スケーリング 最近 GA になった Spanner のオート ス ケーリングです。コスト 削減に有用です。 Spanner と周辺サービスを Google Cloud に移行したこと によるモダナイゼーション 01 02 03 04 05 様々な検索 ベクトル検索や全文検 索など様々な検索が期 待できます。 分析の拡張 ログデータやデータ ベースデータの BigQuery 連携の簡易 化や、Data boost を利 用したリアルタイムデー タ分析などが可能にな ります。
05 まとめと今後
まとめと今後 • Spanner に移行したことによりデータベースに関する 致命的な課題が解消され、今後のサービス継続に十 分な状況が整った • Google Cloud の他サービスとのシームレスな連携に
よりサービス全体の開発効率の向上が期待できる • Spanner の様々な検索機能を使いこなすことでエンジ ニアからサービス改善の流れを作ることが期待できる • データを置く場所とだけ捉えるのではなく、データをお いた場所によってサービス価値の向上が期待できる時 代になった
まとめと今後 • Spanner に移行したことによりデータベースに関する 致命的な課題が解消され、今後のサービス継続に十 分な状況が整った • Google Cloud の他サービスとのシームレスな連携に
よりサービス全体の開発効率の向上が期待できる • Spanner の様々な検索機能を使いこなすことでエンジ ニアからサービス改善の流れを作ることが期待できる • データを置く場所とだけ捉えるのではなく、データをお いた場所によってサービス価値の向上が期待できる時 代になった
Thank you