第5回:SharePlexを使用したデータベース移行事例紹介
情シス担当者向け・他の会社はどうしてる?DBお悩み相談
はじめに
システム移行作業は定期的に発生する大きなイベントです。
移行作業の際にはシステムをできる限り止めずに安全、安心に移行をしたいとご要望をいただくケースが多いです。そういった場合には、データベースレプリケーションツールを使い、事前に移行先と同期をとっておき、当日に差分反映できたことを確認し移行します。
今回はクエスト・ソフトウェア社のデータベースレプリケーションツールの「SharePlex」を利用した、移行の事例をご紹介いたします。
背景
某機械業様でハードウェアのリプレースに伴いデータベースを移行する必要がありました。
移行の際には可能な限りシステム停止をせずに移行したいというご要望があり、DR環境を構成するために既に使用していた「SharePlex」を利用してデータベースレプリケーションを行うことになりました。また、SharePlexのバージョンアップもあわせて実施いたしました。
本検証では実際に以下サービスのクラウド環境を利用した比較検証を行い、 第三者の観点で、価格/性能を評価することを目的とします。
課題
現行DRのレプリケーションを停止して、新DR環境(8.66)とレプリケーションを行い新DR環境と新本番環境(9.2.1)でレプリケーションを行う方式とした。
本番切り替え時にレプリケーションを逆向きにすることでバージョンアップが必要な環境は新DRのみとなるため、再起動が必要なバージョンアップを本番環境に影響を与えることなく実現することができた。
ライセンスは現行と新環境を繋ぐ分のみターム(期間)ライセンスを追加で購入した。
現行環境
移行期間
さらに新規DB(メイン)に対しても同期を行う。
②現行DB(メイン)⇒新規DB(DR) : 設定&初期ロード&レプリケーション
③新規DB(DR)⇒新規DB(メイン) : 設定&初期ロード&レプリケーション
本番切替
切り戻し用として②③と逆向きの同期設定を行う。
③新規DB(DR)⇒新規DB(メイン) :レプリケーション停止
④新規DB(メイン)⇒新規DB(DR) : 設定&レプリケーション
⑤新規DB(DR)⇒現行DB(メイン) : 設定&レプリケーション
現行環境切り離し
さらに新規DB(DR)の製品アップグレードを行い新規DBのDR構成を構築する。
※再起動は新規DB(DR)のみのため業務継続可能
⑤新規DB(DR)⇒現行DB(メイン) : レプリケーション停止
結果
お客様や製品ベンダーのご協力もあり、データ量約800GBのデータベースをシステム全体で60分の停止時間という業務影響を最低限に抑えた「データベース移行」を成功することができました。
~担当エンジニアの感想~
・既存環境で既にSharePlexによるDR環境が構成されており、当該DBにおけるSharePlexの実績があったため安心してSharePlexによる移行が実施できた。
・トリガーやシーケンス設定によってはデータ不整合が発生する場合があるため、それらの設定値をお客様と念入りに打合せし、問題なく切替できた。
・SharePlexによる大きな伝播遅延や伝播データの不整合もほとんどなく、データ同期~切替までスムーズに実施できた。データ不整合についてはSharePlexのcompare/repairで対処することで解決できた。
・切替による業務停止時間を最小限にするために、キューに溜まっている伝播データが少ないことが条件であるため、業務量の少ない夜間帯に切替を行った。
その結果停止時間を最小限にすることができた。