異種混在データベースの移行 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

異種混在データベースの移行

オープンソースのデータベースと AWS のようなクラウドコンピューティングプラットフォームの革新と改良により、多くの組織がオラクルのようなプロプライエタリ (オンライントランザクション処理、OLTP) のデータベースエンジンからオープンソースのエンジンに移行しています。Oracle データベースはどのような組織にとってもミッションクリティカルなシステムだが、特定のベンダーに縛られることはリスクが高く、コストもかかります。運用コストが低く、ライセンス料がかからないことは、基盤となるデータベース技術をオープンソースや AWS のクラウドネイティブデータベースに切り替えることを検討する説得力のある理由です。

Oracle から移行するその他の理由としては、ベンダーロックイン期間、ライセンス監査、高価なライセンス、コストが挙げられます。Oracleの定価はコア単位のモデルに基づいており、パーティショニングや高可用性などの機能には追加料金がかかります。このため、多くの組織が AWS への移行時に、Oracle データベースをオープンソースデータベース (PostgreSQL、MySQL、MariaDB など) または AWS クラウドネイティブデータベース (Amazon Aurora や Amazon DynamoDB など) に移行することを選択しています。

Oracle のデータウェアハウスデータベースを Amazon Redshift に移行することもできる。Amazon Redshift は、高速で完全に管理されたクラウドのデータウェアハウスです。Amazon Redshift はデータレイクと統合され、他のどのデータウェアハウスよりも最大 3 倍速いパフォーマンスを提供し、コストは他のどのクラウドデータウェアハウスよりも最大 75% 低くなります。詳細については、AWS ウェブサイトのOracle から Amazon Redshift への移行 を参照してください。

オープンソースまたは AWS ネイティブのデータベースに移行するには、データの種類、アクセスモデル、スケーラビリティ、アプリケーションの実用性、複雑さに応じて適切なデータベースを選択してください。たとえば、PostgreSQLデータベースは、その強力な機能と商用データベースとの高い互換性により、近年非常に人気が高まっており、Oracleデータベースをリファクタリングしているユーザーにとって最も一般的な移行対象となっています。しかし、Oracle から PostgreSQL や他のオープンソースデータベースへの移行は、しばしば困難で時間がかかり、慎重な評価、計画、テストが必要でした。

このプロセスは、AWS DMS や AWS Schema Conversion Tool (AWS SCT) などのサービスを使用すると簡単になり、商用データベースを AWS 上のオープンソースデータベースに、最小限のダウンタイムで移行できます。

異種データベース移行では、Oracle から Amazon Aurora、または Oracle から PostgreSQL、MySQL、または MariaDB への移行のように、ソースデータベースエンジンとターゲットデータベースエンジンが異なります。ソースデータベースとターゲットデータベースのスキーマ構造、データ型、データベースコードはまったく異なる場合があるため、データ移行を開始する前にスキーマとコードを変換する必要があります。このため、異種移行は 2 ステップのプロセスです。

  • ステップ 1. ソーススキーマとコードをターゲットデータベースと一致するように変換します。この変換には AWS SCT を使用できます。

  • ステップ 2. 移行元のデータベースからターゲットデータベースにデータを移行します。このプロセスには AWS DMS を使用できます。

AWS SCT および を使用した異種データベースの移行 AWS DMS

AWS DMS は、移行中に必要なすべてのデータ型変換を自動的に処理します。ソースデータベースは、AWS 外部の自社施設に配置することも、EC2 インスタンスで実行されているデータベースでも、Amazon RDS データベースでもかまいません (AWS DMS ドキュメントの データ移行のソース を参照)。ターゲットは、Amazon EC2、Amazon RDS、または Amazon Aurora のデータベースにすることができます。

異種混在データベースの移行

次の表は、Oracle Database から別のデータベースエンジンへの移行に使用できるツールの一覧です。

移行ツール

ターゲットデータベースのサポート

次の用途に使用されます。

AWS SCT

Amazon RDS for MySQL

Amazon RDS for PostgreSQL

Amazon Aurora MySQL

Amazon Aurora PostgreSQL

スキーマ変換

AWS DMS

Amazon RDS for MySQL

Amazon RDS for PostgreSQL

Amazon Aurora MySQL

Amazon Aurora PostgreSQL

データ移行

この後のサブセクションで、各ツールの詳細について説明します。

AWS SCT

AWS Schema Conversion Tool (AWS SCT) は、既存の商用データベーススキーマをオープンソースエンジンまたは AWS クラウドネイティブデータベースに変換します。AWS スキーマ変換ツール (SCT) は、ソースデータベーススキーマと大部分のカスタムコード (ビュー、ストアドプロシージャ、関数など) をターゲットデータベースと互換性のある形式に自動的に変換し、異種データベースを簡単に移行できるようにします。自動的に変換できないオブジェクトには、手動変換対象として明確にマークされます。AWS SCT では、アプリケーションのソースコードをスキャンして埋め込み SQL ステートメントを探し、データベーススキーマ変換プロジェクトの一環として変換することもできます。 

AWS DMS

AWS Database Migration Service (AWS DMS) は、データを迅速かつ安全に AWS に移行します。移行中でもソースデータベースは完全に利用可能な状態に保たれ、それを利用するアプリケーションのダウンタイムを最小限に抑えられます。AWS DMS は、Oracle から Oracle への同種移行だけでなく、Oracle などの異なるデータベースプラットフォーム間の、オープンソースデータベースまたは AWS クラウドネイティブデータベースへの異種移行もサポートします。AWS DMS は、ソースデータベースで発生したデータ変更をターゲットデータベースに自動的にレプリケートするなど、移行プロセスの複雑性を管理します。データベースの移行が完了すると、ターゲットデータベースは選択した期間だけソースと同期したままになり、都合の良いタイミングでデータベースを切り替えることができます。