Amazon Web Services ブログ

AWS Database Migration Service と AWS Schema Conversion Tool がソースとしての IBM Db2 LUW をサポート開始

リレーショナルデータベースの管理と運用は、効果的なビジネスを維持するための基本的な要素です。リレーショナルデータベースには、商用(Oracle、Microsoft SQL Server、IBM Db2 など)やオープンソース(MySQL、PostgreSQLなど)などの多くの種類があります。オープンソースデータベースの世界とAWSのようなクラウドコンピューティングプラットフォームの革新と改良により、多くの企業がOracleなどの独自の (OLTP) データベースエンジンからオープンソースエンジンに移行しています。 AWS Database Migration Service (AWS DMS)AWS Schema Conversion Tool (AWS SCT) などのサービスは、最小限のダウンタイムで商用データベースからAWS内のオープンソースデータベースへの移行を支援します。

商用データベースからオープンソースデータベースへの移行は、一般的には複数のステップで行われますが、次の2つの重要な部分について説明します。

  • AWS SCT を使用して、ソースの商用エンジンからオープンソースエンジンにオブジェクト(表、索引、制約、ファンクションなど)を変換します。
  • AWS DMS を使用して、データを適切に変換されたオブジェクトに移動し、ソースデータベースと完全に同期された状態にターゲットを保ちます。 これにより、移行中にも本番ワークロードが実行できます。

今までの経験と顧客からのフィードバックに基づいて、これら2つのステップにさらに多くの自動化を加えることを私たちは継続的に進めています。 その一環として、AWS SCT がLinux、UNIX、Windows (LUW) 用の IBM Db2 からAWS上でサポートされているオープンソースデータベースにオブジェクトを変換できるようになりました。これには Amazon RDS for PostgreSQL と RDS for MySQL、Amazon Aurora (MySQL and PostgreSQL compatible) を含みます。

同時に、AWS DMS のソースとしての IBM Db2 for LUW の一般リリースも発表します。この発表は、AWS DMS を使用して Db2 for LUW から AWS DMS でサポートされているすべてのターゲットに移行できることを意味します。これらの機能は、Db2 for LUW からクラウドへの移行に役立ちます。

背景

AWS SCT は、最小限の作業でデータベースディクショナリとセカンダリオブジェクトをサポートされたデータベースターゲットに変換するのに役立ちます。AWS SCT は、手動での変更や再作成が必要なオブジェクトとコードを示す移行評価レポートを作成できます。評価レポートは、必要な手作業の量を評価し、すべてのターゲットの評価の詳細を示します。 AWS SCT は頻繁に新機能などがアップデートされており、リリースノートで機能向上についての情報を提供しています。

今回、IBM Db2 for LUW が AWS SCT でサポートされるデータベースソースになり、ソースとしてのDb2でサポートされる機能は次のとおりです。

  • Db2 for LUW バージョン9.7s以降がサポートされています。 詳細については、AWS DMS ドキュメントの「Source Databases for the AWS Schema Conversion Tool」を参照してください。
  • 次のターゲットがサポートされています。
    • RDS for MySQL
    • Aurora MySQL
    • RDS for PostgreSQL
    • Aurora PostgreSQL
  • Secure Sockets Layer (SSL) 接続による変換もサポートされています。

AWS DMS を使用すると、データベースをAWSに迅速かつ安全に移行できます。 Oracle、Microsoft SQL Server、PostgreSQLなど、広く普及している商用およびオープンソースデータベースとの間でデータを移行できます。 このサービスは、OracleからOracleへなどの同種間移行、およびOracleからPostgreSQLやMySQLへなどの異種間移行もサポートします。

今回、IBM Db2 for LUW が AWS DMS でサポートされるデータベースソースになり、ソースとしてのDb2でサポートされる機能は次のとおりです。

  • Db2 for LUW バージョン9.7s以降がサポートされています。 詳細については、AWS DMS ドキュメントの「データ移行のソース」を参照してください。
  • データをすべての AWS DMS 対応ターゲットに移行することができます。
  • SSL接続(証明書ベースの認証を含む)を使用したデータの移行がサポートされています。
  • 継続的変更のレプリケーションがサポートされています。

AWS SCT と AWS DMS を使用してDb2データベースをオープンソースデータベースに移行するプロセスを見てみましょう。

データ移行のための AWS SCT の使い方

AWS SCT を使用して、Db2 for LUW ソースデータベースから前述のいずれかのターゲットに移行できます。 AWS SCT を使用すると、スキーマ、ビュー、ストアドプロシージャ、ファンクションなどのソースデータベースオブジェクト定義をエクスポートできます。 AWS SCT の最新版をダウンロードするには、AWS SCT ドキュメントの「AWS Schema Conversion Tool のインストール、検証、更新」を参照してください。

AWS SCT の使用を開始するには、新しいプロジェクトを作成します。 Source database engine を DB2 LUW に設定し、Target database engine を Amazon RDS for MySQL に設定します(RDS for MySQL に移行する場合)。

これを行った後、ソースデータベースへの接続パラメータを指定します。

AWS SCT で IBM Db2 のソースエンドポイントを作成する場合は、次の点に注意してください。

  • IBMのWebサイトからJDBCドライバーをダウンロードしてください。 ドライバーのバージョンは4.22.0以降である必要があります。
  • また、SSLを使用して IBM Db2 インスタンスに接続することもできます。 Db2にSSL接続するほかのクライアントを設定するのと同じように、ダイアログ内のSSLフィールドでSSLを設定できます。

その後、ターゲットのエンドポイントを設定する必要があります。

ソースデータベースからデータベースオブジェクト定義をエクスポートするには、エクスポートするスキーマのコンテキスト(右クリック)メニューを開き、Convert Schema を選択します。

変換が完了したら、AWS SCT のターゲットデータベースセクションに移動し、データベースオブジェクト定義を含む.sqlファイルを保存します。

AWS SCT が作成した.sqlファイルでいくつかの編集を行う必要があるかもしれません。 ターゲットインスタンス用に AWS SCT で生成されたスキーマは、Db2ソースにあるコードと同じにすることをお勧めします。また、AWS SCT で変換されたスキーマをターゲットインスタンスに直接適用して、データ移行段階に備えることもできます。

データ移行のための AWS DMS の使い方

すべてのデータベースコードとオブジェクトを選択したターゲットデータベースに移行したので、AWS DMS を使用してデータを移行できます。 AWS DMS は1回限りのデータ移行を実行できますし、IBM Db2 からサポートされているすべてのターゲットにデータを継続的にレプリケーションすることもできます。 これらのターゲットには、リレーショナルデータベース(Oracleや Amazon Aurora など)、データウェアハウス (Amazon Redshift)、NoSQLデータベース (Amazon DynamoDB)、Amazon S3 バケットなどがあります。 今回のリリースでは、IBM Db2 データベースのSSL接続 (verify-ca) もサポートしています。

ソースとしての IBM Db2 データベースの追加方法

Db2データベースソースを AWS DMS に追加するには、次の手順に従います。

  1. AWS Management Console にサインインして、Database Migration Service を選択します。
  2. ナビゲーションペインで、「エンドポイント」を選択し、「エンドポイントの作成」を選択します。
  3. 次の項目を選択します。
    • エンドポイントタイプ: ソース
    • ソースエンジン: Db2(IBM Db2 for LUW データベース)
  4. Db2サーバー名および関連ポートの情報を入力します。
  5. AWS DMS を使用して移行を行う場合、SSLを使用してDb2ソースへの接続を暗号化することもできます。 これを行うには、AWS DMS Management Console または AWS DMS API を使用してエンドポイントに証明書を割り当てます。 また、AWS DMS コンソールを使用して証明書を管理することもできます。 IBM Db2 ソースでは、次のSSL接続のみをサポートしています。
    • verify-ca – 接続は暗号化され、AWS DMS はサーバー証明書を検証します。
  6. ほかのリレーショナルデータベースに接続するときと同様に、残りのパラメーターを設定します。

また、次の AWS CLI コマンドを使用してDb2のエンドポイントを作成することもできます。

aws dms create-endpoint --endpoint-identifier test-endpoint-1 --endpoint-type source --engine-name Db2 --username admin --password password --server-name Db2.server.com --port 8192

まとめ

これらの新機能は Db2 for LUW からAWSへの移行を希望される方に役立つはずですし、この移行はクラウドコンピューティングとAWSの能力を理解するのに役立ちます。また、AWSのオープンソースエンジンに移行し、運用コストを節約することもできます。 あなたのデータがAWSにあれば、あなたの組織の使命とビジョンを達成するために、そのデータを使ってたくさんのサービスを使用することができます。

原文のページでは、英語にてコメントも受け付けています。それでは良いデータベース移行を!


著者について

Abhinav Singh は Amazon Web Services の Database Migration Service チームのデータベースエンジニアです。彼はデータベース移行プロジェクトに関するガイダンスと技術支援をお客様に提供し、AWSを使用したソリューションの価値を向上させています。

翻訳はソリューションアーキテクトの柴田(シバタツ)が行いました。原文は AWS Database Migration Service and AWS Schema Conversion Tool now support IBM Db2 LUW as a source  です。