明治安田生命保険では、3万人が利用する販売業務サポートシステムのデータベースサーバー更改において、分散したSQL Server 2012を1つのSQL Server 2019に集約することにした。その際、データ同期を行いながら新旧データベースを並行稼働させ徐々に 移行する方法をとりたかったが、SQL Server 2012と2019の間では標準のレプリケーション機能が使えなかった。この課題解決の ためにQlik Replicateを使い、分散したデータベースの700を超えるテーブルの集約を、極めてスムーズに実現した。
3万人が日々使う分散した データベースの移行を安全に行いたい
明治安田生命保険では、「ディスラプティブな経営環境の変化」に対応すべく、2020年4月から10年計画「MY Mutual Way 2030」をスタートしている。その中では事業運営の抜本的な効率化・高度化(事業運営の再構築)に向けた4つの取り組みを進めており、DXのための戦略も策定し、従業員のデジタルリテラシーの向上やDX人財の確保・育成に向けた取り組みも行っている。
DX戦略を進めるにあたってIT部門では、安定したIT環境を提供すると共にインフラを近代化し変化に柔軟に対応できるようにする必要がある。明治安田生命保険では6年サイクルでシステムの更改を進めており、直近の更改は2019年に実施、次の更改は2025年となる予定だ。
しかし営業部門の職員3万人が利用する販売業務サポートシステムのデータベースは、2019年の更改を保留した。このシステムは3万人の利用を1つの巨大なデータベースで処理するのではなく、複数に分け負荷分散する構成となっていた。「次の更改で仮にパブリッククラウド化をするとなれば、分散したままでは大がかりなデータ移行も発生し、かなりの苦労が予測されました」と言うのは、明治安田生命保険相互会社 情報システム部 ネットワーク基盤グループの義平氏だ。
日々の3万人の業務を処理するにはかなりのCPU性能、ディスクI/Oが求められ、分散化した当時は大規模で高額なサーバーが必要だった。現在はCPUやディスク性能も向上し、1台に集約するのも容易だ。そのため分散しているデータベースを1つに集約し、今後の更改作業をなるべく楽に行えるようにしたいと考えた。
集約にあたり、販売業務サポートシステムは日々利用されるので、作業は業務に影響が出ないようにしたい。そのため移行期間中はデータを同期しながら新旧データベースを並行で動かすことにする。その対応のため、システムの更改は2019年とは別に行うこととなった。
分散したデータベースの700テーブルの 集約も手間なく実現
販売業務サポートシステムの分散化された3つのデータベースとそれらを集約する統合データベースの合計4つを、1つのデータベースに集約する検討は2020年初頭から開始された。移行元はMicrosoft SQL Server 2012で、統合後のデータベースにはMicrosoft SQL Server 2019が選ばれた。
当初は、SQL Server 2012と2019間で、レプリケーションによるデータ同期を行おうと考えた。しかし「2世代越えのレプリケーションは、Microsoftでは対応していませんでした」と言うのは義平氏だ。
そのため、データの移行はSQL ServerのExport/Import機能で対応するしかないと思われた。しかし、それでは新旧のデータベースをデータ同期しながら並行稼働させることができない。同社が別途SQL Serverのバージョンが離れていてもデータ同期できる方法を探している際に、Microsoftから紹介されたのがQlik Replicateだった。
明治安田生命保険ではPoCを実施し、Qlik Replicateのリアルタイムレプリケーション(差分同期)とフルロードでのデータ移行の検証を行う。当初、性能の問題も発生したが、インサイトテクノロジーの迅速なサポートですぐに解消する。結果的に「Qlik Replicateのリアルタイムレプリケーション(差分同期)は想定以上の処理性能となり、フルロードも本番環境より大きなデータで、夜間バッチの時間内に余裕を持って処理が終了しました」と義平氏。また、アプリケーション開発チームに依頼してデータ同期の仕組みを構築開発する費用と比べても、Qlik Replicateのコストは十分に安くなると試算できた。これらの結果から、Qlik Replicateの採用が正式に決まる。
そしてデータベース集約のプロジェクトは、2020年4月から始まる。まず環境構築を行い5月からデータを同期、その後新旧のデータベースを並行運用し、順次切り替えを実施した。9月には、全てのユーザーが新営業データベースを利用するようになる。
データの同期は、既存の4つのSQL Server 2012のトランザクションログをQlik Replicateを用いてクエリに変換し、移行先のSQL Server 2019でクエリを実行してデータを反映する。この方法で対象となった700テーブルのデータ同期は、ほぼ問題なく実施でき た。一部、同期に失敗するテーブルも出たが、それについてはインサイトテクノロジーのサポートなども受けながら、運用で回避することで対処した。
パブリッククラウド化の移行ツールとしても期待
「Qlik Replicateは、トランザクションログを用いデータ同期を行うので、既存環境のデータベースサーバーの負荷は極めて小さいものでした」と、明治安田生命保険相互会社 情報システム部 ネットワーク基盤グループの白石氏は言う。さらに「分散したデータベースの700テーブルを1つのデータベースへ集約することは、Qlik Replicateがなければこんなにスムーズにできなかったでしょう。GUIベースの設定は容易で、移行元のソースが複数あっても手間取ることはありませんでした」とも振り返る。
明治安田生命保険では、今回のケース以外にも、今後のシステム更改のタイミングで段階的に移行するデータベースが他にも出てくるだろうと考えている。「Qlik Replicateがデータベース移行ツールとしてかなり有効だと分かったので、それらの移行でも便利に使えるでしょう」と義平氏は言う。
トランザクションログを利用するQlik Replicateなら、今回のような同じデータベースのバージョン違いだけでなく、データベースエンジンが異なっても問題なく移行できるはずだとも言う。そのため今後のパブリッククラウド化でもQlik Replicateは有効だと考えている。その上でインサイトテクノロジーには、DXに向けたインフラのモダナイズにおいて、よりコストを最適化できるような提案に期待していると義平氏は締めくくった。