Home / 開発実績 / Webシステム開発 / オンプレミスからAWS RDS for OracleへのDBマイグレーション

オンプレミスからAWS RDS for OracleへのDBマイグレーション

オンプレミスからAWS RDS for OracleへのDBマイグレーション
内容

オンプレミスからAWS RDS for OracleへのDBマイグレーション

ソフトウェアのサポートが既に切れていて、データベースの運用もブラックボックス化してしまっていた基幹システムのデータベースのマイグレーション案件の紹介です。本件はVB6.0のシステムを、VB.NETへのマイグレーションも実施済みです。

データセンターにあるOracle 10Gの基幹データベースをAWSクラウド RDS  for Oracle 19cへ移行しました。

クライアントの課題

このシステムは企業の根幹となる基幹システムです。数百人の社員と数十の部門、日本全国の拠点で利用されています。基本的に365日24時間稼働するシステムです。社員は交代で24時間システムを利用し続けます。またこの数十年で様々なサービスが追加されこの基幹システムと連携しています。本システムの初期開発ベンダーや初期の担当者は様々な理由で新たな担当に引き継がれています。それによりユーザーやベンダーはシステムの表面的な操作は理解していますが、一部はブラックボックス化してしまっています。さらにDBソフトウェアのOracle 10gはサポート期限が切れてしまっています。10年以上前のソフトウェアなのでI/O性能も悪くユーザーからシステムが重い、遅いなどの意見が噴出している状態です。

クライアントからの要求

業務を止めず(ダウンタイムなし)に移行するという要件

24時間基本的に動く業務とシステムを最低限のダウンタイムで移行したいという要望がありました。AWSベンダーとともにいくつか移行方法の案を提案。

AWS Direct Connectと DMS
AWS Direct Connectで専用回線を敷きAWS DMSマイグレーションサービス)を利用案
コストと実施期間の問題で却下

AWS VPNコネクトでS3からRDSへインポート
2回に分けて現行のDBからDumpファイルを落とし、VPNコネクトでAWSのS3へ、S3からRDSへインポートする案

AWS Snowballでの移行
オンプレのデータをSnowballに落として、AWSへ郵送しSnowball→S3→RDSへの移行案

DB移行前の準備

ネットワークの構築

ユーザー500以上、拠点が20以上のネットワークをネットワークベンダーが構築しました。

AWS RDSの選定

AWSベンダーとAWSサポートに意見を聞きながらスペックや契約形態を選定しました。今回はRDS  for Oracle 19c (ライセンス込み)を選択しました。現行のDBの容量を加味してm5.2xlarge(8vCPU)+1TBdiskを選択。RDSのアーキテクチャーに関してはAWSベンダーによって提案されました。RDSの特徴として、高速で予測可能なパフォーマンス、簡単でマネージド型のデプロイが選定の決め手となりました。

移行方法の決定

業務を止めずに移行することは、難しいと判断されました。
システムのダウンタイムを最小限でかつコスト最適でという方法を検討した結果、移行方法はAWS VPNコネクトでS3からRDSへインポートすることになりました。2回に分けてDumpファイルを落とし、VPNコネクトでAWSのS3へ、S3からRDSへインポートする案です。

1回目:過去データから実行月までエクスポートします。エクスポート処理は500GB弱データで25時間掛かります、インポート処理は12時間でかかりました。

2回目:DBを切り替える直前実施した。

 

現行基幹システムとの連携のためOracle 12cをブリッジ

今回は基幹システム(VB6.0からVB.NET)のマイグレーションも弊社で行いましたが、データベースを先に本番稼働することになりました。現行基幹システムはVB6.0で動作しています。また連携システムはOracle 10gで動かしているシステムもいくつかあります。データベースを先に移行するために一部のシステムはOracle 12c経由でDBLINKを使ってOracle 19c へ間接的に連携させることにしました。

移行手順書の準備

今回は弊社を含め4業者の連携でした。移行のための役割分担と時間ベースのスケジュールを提案しました。環境準備、設定、1回目のダンプファイルをAWS RDSへ移行、s3のスナップショットを取得後の業務テスト(直近1年分の帳票データ確認、業務流れテスト、各種システムとの連携テスト)、2回目のダンプファイルの移行など事細かにスケジュールを立てました。

リハーサル
本番移行前には2回リハーサルを行いました。リハーサル実施で発生した課題を移行手順書に更新しました。

本番稼働

システムのダウンタイムを最小化するために、影響の少ない夜中に実施しました。リハーサルで事前に課題を解決することができたので大きな問題もなく分単位のスケジュールもほぼ予定通りに実施しAWS RDSへの移行に成功しました。移行後で性能問題が起きました。Amazon RDS Performance Insights機能を利用してデーターベースパフォーマンスに関する問題の原因を特定してOracle 10gで使っているOPTIMIZER_FEATURESパラメータを指定して処理性能を改善できました。Oracle19cのOPTIMIZER_FEATURESを利用してSQLチューニングを実施しました。

まとめ

今回、弊社としてはこのような大規模なDBマイグレーションは初めてでした。しかし、弊社の幹部で既に何度もDBマイグレーションの実績があるものが複数名いたこと、Oracleの知見があったこと、AWS RDSの実績もあったことなどから何事も問題なくマイグレーションに成功しました。もし古いデータベースでお困りの企業様は是非ともお声がけください。

ONETECHシステムマイグレーション実績紹介

Windows7およびServer2008R2のサポートが2020年1月14日に終了しました。 運送業の基幹システムは、VB.Net・.net Framework 4.0、ActiveReport for .Net 7.0J、VisualStudio2010、Oracle 11gで動作していました。今回のマイグレーションではツール類も動作保証されているWindows10に対応しているバージョンに変更し、システム動作保証をしました。

Windows7のサポートが2020年1月14日に終了しました。 現行の製造・在庫・販売管理システムについてVB6.0から.Netへの移行を行いWindows10での 動作を可能としました。VB6.0での継続には様々なリスクが伴います。マイグレーションすることで解消しました。

実績一覧

ECサイト構築プラットフォームで有名な「STORES(ストアーズ)」のCSVファイルを 自動変換するシステムを開発しました。 基幹システムにアップロード可能な注文ファイルに自動変換、 新しいCSVファイルを自動生成しアップロード用のFTPサーバーに送信する中間システムを構築しました。

大学の英語のライティングテスト自動評価システムを追加開発しバージョンアップしました。前回の浅い機械学習から今回は、深層学習のAIを採点条件を追加実装しました。

ファンクラブ会員サイト(サブスクリプション)を管理できるプラットフォームの追加開発。動画プラットフォーム「vimeo」を使いファンクラブ限定の動画配信システムを実現しました。

運用保守をしているLPを生成できるWebアプリケーションで1年ほど運用にあたって業務効率化のシステム追加修正を行いました。 管理画面での検索改善、ダッシュボードの拡充など

■PWA(プログレッシブウェブアプリ)で謎解きイベントのアプリ開発 謎解きイベントで利用されるPWA(プログレッシブウェブアプリ)のロジック部分の開発をお請けしました。 電話番号によるユーザー認証機能

無料相談
お問い合わせ