背景・目的
- Schema Conversion Tool(以降、SCTという。)を使う機会があるので事前に学ぶ。
結論
- SCTでできることは、スキーマ変換以外にも、SQLの書き換えやRedshiftへの最適化などが可能。
内容
SCTとは
- Schema Conversion Toolの略。
- 以下に、ドキュメントの内容を転記する。
AWS Schema Conversion Tool (AWS SCT) を使用すると、データベースエンジン間で既存のデータベーススキーマを変換できます。リレーショナル OLTP スキーマやデータウェアハウススキーマを変換できます。変換されたスキーマは、Amazon Relational Database Service (Amazon RDS) MySQL、MariaDB、Oracle、SQL サーバー、PostgreSQL Amazon Aurora スター、または Amazon Redshift クラスターに適しています。変換されたスキーマは、Amazon EC2 インスタンスでデータベースと共に使用するか、Amazon S3 バケットでデータとして保存することもできます。
- データベース間のスキーマを変換できる
- 対象は、OLTPのRDB、DWHなど
サポートされている変換
- 2021/12/24現在の対象を以下にまとめておく。詳細はドキュメントを参照。
OLTP
ソース | ターゲット | ||||||
---|---|---|---|---|---|---|---|
Aurora MySQL | Aurora PostgreSQL | MariaDB | SQL Server | MySQL | PostgreSQL | DynamoDB | |
SQL Server | ◯ 互換版(※1) |
◯ 互換版(※1) |
◯ | ◯ 10.2および10.3 |
◯ | ◯ | - |
MySQL(バージョン5.5以降) | ◯ | ◯ | - | - | - | - | - |
Oracle(バージョン10.2以降) | ◯ | ◯ | ◯ 10.2および10.3 |
- | ◯ | ◯ | - |
IBM Db2 LUW(バージョン 9.1、9.5、) | ◯ | ◯ | ◯ 10.2および10.3 |
- | ◯ | ◯ | - |
Apache Cassandra (バージョン 2.0、3.0、3.1.1、および 3.11.2) | - | - | - | - | - | - | ◯ |
Sybase ASE (12.5、15.0、15.5、15.7、16.0) | ◯ | ◯ | - | - | ◯ | ◯ | - |
- ※1 互換版とそれ以外の違いの違いが不明。後ほど調べる。
DWH
ソース | ターゲット |
---|---|
Redshift | |
Greenplum データベース (バージョン 4.3 以降) | ◯ |
Microsoft SQL Server (バージョン 2008 以降) | ◯ |
Netezza (バージョン 7.0.3 以降) | ◯ |
Oracle (バージョン 10 以降) | ◯ |
Teradata (バージョン 13 以降) | ◯ |
Vertica (バージョン 7.2.2 以降) | ◯ |
概要
- 以下に、機能についてのドキュメントを転機する。
AWS SCTには、ソースデータベースのデータベーススキーマをターゲット Amazon RDS インスタンスと互換性のある形式に自動変換するための、プロジェクトベースのユーザーインターフェイスが用意されています。ソースデータベースのスキーマを自動変換できない場合、AWS SCTでは、ターゲット Amazon RDS データベースで同等のスキーマを作成する方法についてのガイダンスが表示されます。
- UIで操作可能
- プロジェクトベースで作成される
- 変換できない場合、ガイドされる(詳細は別途でまとめる予定)
AWS SCT に関するフィードバックを提供できます。バグレポートの提出、機能リクエストの提出、一般情報の提供ができます。
- フィードバックを提供できる。(詳細は別途でまとめる予定)
その他機能
- 以下に、スキーマ変換以外の機能を記載する。
-
データ抽出エージェントを使用し、Redshiftへの以降を準備するため、DWHからデータを抽出できる。
-
DMSエンドポイント、タスクを作成できる。またSCTからタスクの状況をモニタリングもできる。
-
RDSやRedshiftへ変換できない場合、SCT拡張パックウィザードを使用して、変換できない機能をエミュレートできる
- Lambda、Pythonライブラリをインストールする
-
Redshiftデータベースを最適化する。ソートキーと分散キーをレコメンドする。
-
RDSインスタンスに、オンプレミスのDBスキーマをコピーできる。
- クラウドへの移行や、ライセンスタイプの変更にかかるコスト試算に役立てる。
-
アプリケーションSQLを変換できる。(詳細は別途まとめる予定)
-
ETL変換できる。(詳細は別途まとめる予定)
-
考察
- RDBだけかと思いきや、KVS(Cassandra)もサポートされている。
- DWHはかなりのラインナップがある。
- 触ってみないと実感がわかない。いくつか不明な仕様があるので、後ほど確認し本ページを更新する予定。
参考