2026年7月30日〜7月31日に東京ビッグサイトでGoogle Cloud Next Tokyo 2026が開催されていましたので参加してきました!

今回は業務でSpannerを使う機会がありそうなので、Spannerに関するセッションをいくつか選択して参加してきました。
その中のセッションのTimeTree社の「Spanner 事例紹介 〜 DynamoDB からの移行と全文検索 〜」を聞いて来ましたのでレポートします。
TimeTree社はGoogle Cloudのフルマネージドサービスを活用してゼロダウンタイムで大規模なデータの移行に成功していました。
一昔前ならデータ移行時にサービスを停止せずに移行するという思考すら出て来なかったと思いますがクラウド技術の進歩に驚きです。
1テーブルの移行は6ステップで実現されていました。
全体構成図は以下です。
STEP1でDynamoDB Streamsを有効にして移行作業中に発生する更新データの記録を開始。
ここがダウンタイムなしで移行するミソな気がしました。
STEP2でDynamoDBの過去データをAWS S3へ一括出力。
STEP3でAmazon S3のデータをStorage Transfer ServiceでCloud Storageへ転送し、DataflowのBatch Jobへ書き込み。
STEP4でPub/Subの移行期間中の更新データをDataflowのストリーミング処理でSpannerへ反映。
ここもダウンタイムなしで移行するミソな気がしました。
STEP5でDynamoDBとSpannerの新旧の両データベースのデータをBigQueryへ転送し、全件比較して差分チェック。
ここでチェック出来れば確実な移行を担保出来るので、確実に実施したいところだと思いました。
最後はSTEP6で切替の以上6ステップでした。

ゼロダウンタイムでの移行は本番環境への負荷や影響を及ぼしてはいけないですが、
そこもしっかり考慮されて計画されていたのは素晴らしいと思いました。
今後案件でSpannerへのデータ移行も必要になってくると思いますが、
ぜひこちらのセッションの内容も参考にして計画したいなと思いました。