データベースマイグレーション本おすすめ5選|Flyway・Liquibaseとゼロダウンタイムの実務

PR:この記事にはアフィリエイトリンクが含まれます。

データベースマイグレーションの本を探すと、FlywayやLiquibaseの操作が気になりますよね。ゼロダウンタイムも目指すなら、新旧アプリの並行稼働や失敗後の復旧まで扱う本を読むと、実務に結びつきます。

先に早見表

各書籍が扱う範囲を一覧にしました。ツールによる変更管理から継続デプロイの設計、大規模な異種DB移行まで、本ごとに学べる内容が異なります。

書名主に学べること向いている読者
Continuous Delivery with Docker and Jenkins, 3rd EditionContinuous Delivery with Docker and Jenkins, 3rd EditionFlywayとLiquibase、CIとCD、段階的リリースJenkinsのパイプラインにDB変更を組み込みたい人
DevOps for Databases: A practical guide to applying DevOps best practices to data-persistent technologiesDevOps for Databases: A practical guide to applying DevOps best practices to data-persistent technologiesDBのDevOps、LiquibaseとFlyway、クラウド移行DB運用を広く学びたいSRE・DBA
Continuous Deployment: Enable Faster Feedback, Safer Releases, and More Reliable SoftwareContinuous Deployment: Enable Faster Feedback, Safer Releases, and More Reliable SoftwareExpand and contract、データ同期、段階的デプロイ継続デプロイ中の変更を設計する人
データベースリライアビリティエンジニアリングデータベースリライアビリティエンジニアリングマイグレーション、影響分析、バックアップと復旧運用と信頼性まで見渡したい人
Practical Guide to Large Database MigrationPractical Guide to Large Database MigrationOracle、SQL Server、MySQL間の大規模移行異種DB移行を担当する人

担当している変更に近い本から読むと、学んだ知識を現場へつなげやすくなります。

無停止の前提

ゼロダウンタイムを目指すなら、SQLの実行時間に加えて、更新中の読み書きと旧版・新版アプリの併存を考えます。変更中も通常の処理が滞らない状態が目標です。

DDLの所要時間やロックの挙動は、DB製品やバージョン、テーブルサイズで変わります。オンラインDDLが使える操作も、制約やインデックス作成の条件をステージング環境で確かめてください。

FlywayとLiquibaseは、変更履歴の管理や実行を助ける道具です。アプリの互換性、バックフィルの速度、切り戻しの判断は個別に設計します。

新旧コードの共存

顧客テーブルのfull_nameをfirst_nameとlast_nameに分ける例で考えましょう。列を追加した直後に旧列を消すと、旧アプリの読み書きが失敗するおそれがあります。

最初に新しい列を足して旧列は残し、旧アプリと新アプリが動く期間を作ります。新アプリが新列へ書き込む間も、旧アプリからの更新で値が食い違わないようにします。

続いて既存データを補完します。主キーの範囲ごとに小分けで更新し、処理済みの位置を記録すると、DB負荷を抑えながら失敗後に再開しやすくなります。

すべてのアプリが新列を使う状態を確認してから、旧列を削除します。Expand and contractは、変更を分割して互換性を保つパターンです。削除を後続リリースに回すことも停止リスクを下げます。

CIに載せる変更

Rafał Leszko著の第3版で、Packtから2022年に刊行された374ページの本です。DockerとJenkinsによる継続的デリバリーを扱います。

第9章はデータベース変更管理を扱い、FlywayとLiquibaseの例、後方互換性を保つ変更やローリングアップデート、ブルーグリーン、カナリアリリースを紹介しています。

JenkinsのパイプラインにDB変更を組み込みたいDevOpsエンジニアには、具体例が参考になります。DevOpsの事前知識を前提にしないため、継続的デリバリーの構成を初めて学ぶ人にもおすすめです。

Continuous Delivery with Docker and Jenkins, 3rd Edition

Continuous Delivery with Docker and Jenkins, 3rd Edition

Packt

Amazonで見る

DB運用まで学ぶ

David Jambor著のDevOps for Databasesは、Packt刊の2023年刊、446ページです。DBにDevOpsの実践を取り入れるテーマを、開発と運用の両面から扱っています。

第9章にはLiquibaseによるスキーマ変更と、Jenkins上でFlywayを使う移行パイプラインの例があります。PostgreSQL・SQL Server・Oracle・MySQL・MongoDBの例も含まれ、複数のDB製品を扱うSREやDBAが各製品の移行例を確認できます。

第4章ではビッグバン・段階的・並行・ハイブリッド・逆移行・ETL・レプリケーションといったクラウド移行方式を扱います。クラウドやDBの基礎があるSREやDBA、DevOps担当者におすすめです。

DevOps for Databases: A practical guide to applying DevOps best practices to data-persistent technologies

DevOps for Databases: A practical guide to applying DevOps best practices to data-persistent technologies

Packt

Amazonで見る

配信設計を深掘る

Valentina Servile著のContinuous Deploymentは、O’Reilly Media刊の2024年刊、紙版443ページです。中級から上級向けで、本番稼働中の機能や永続化レイヤーを段階的に変える設計を扱います。

Expand and contractやフィーチャートグル、作業中の機能を段階的にデプロイする方法がテーマです。旧版が動く期間の変更を、コードとDBの両面から考えられます。

二重書き込み・二重読み込み・データ同期・バッチ更新も扱います。データ形式を大きく変える案件や複数サービスを段階的に切り替える案件で、移行中の整合性を考える人におすすめです。

Continuous Deployment: Enable Faster Feedback, Safer Releases, and More Reliable Software

Continuous Deployment: Enable Faster Feedback, Safer Releases, and More Reliable Software

O’Reilly Media

Amazonで見る

復旧までつなぐ

データベースリライアビリティエンジニアリングは、Laine CampbellとCharity Majors著、八木和生訳の日本語書籍です。オライリー・ジャパン刊で、2021年4月16日発行の308ページ。

CIやテスト、デプロイとマイグレーションの関係を扱い、変更のバージョン管理や影響分析も解説します。開発者やDBAがリリース時のリスクを検討する材料になります。

バックアップとリカバリも扱い、マイグレーション失敗時の復旧まで学べます。参考価格は公式希望小売価格の3,740円(税込)で、実売価格は時期や販売店によって変わります。

データベースリライアビリティエンジニアリング

データベースリライアビリティエンジニアリング

O’Reilly Japan

Amazonで見る

異種DBの移行

Practical Guide to Large Database Migrationは、Preston Zhang著のCRC Press刊です。2019年刊の206ページで、大規模データベースの異種移行を主題にしています。

Oracle・SQL Server・MySQLの移行例があります。サンプルの大規模DBを使う手順と移行ツールの画面も含まれます。白黒図版は298点。作業手順を確認したいDBAにおすすめです。

異種DB間の移行を担当するDBAには、この本をおすすめします。

Practical Guide to Large Database Migration

Practical Guide to Large Database Migration

CRC Press

Amazonで見る

結論

FlywayとLiquibaseをCIとCDへ組み込む流れを学ぶなら、Continuous Delivery with Docker and Jenkins, 3rd Editionをおすすめします。DB運用全体を学びたいSREやDBAにはDevOps for Databasesをすすめます。

本番稼働中の段階的な変更はContinuous Deploymentで学べます。バックアップや復旧を含む運用にはデータベースリライアビリティエンジニアリング、大規模な異種DB移行にはPractical Guide to Large Database Migrationが合います。

ゼロダウンタイムを目指す実務では、互換性を保つ期間とデータの移し方を設計できることが大切です。担当する技術に近い本を読み、ステージング環境で変更を試してください。

【2026年版】Amazonで買えるおすすめノートPCランキング!コスパ最強のモデルはこれだ
DELLのノートパソコンがテーブルの上に置いてある画像

Amazon の PC をスコア化してみた

Specsy Hub

Amazonにある8〜14インチの小型WindowsタブレットやノートPCを、スペック別にスコア化して比較・ランキング。

タイトルとURLをコピーしました