OceanBase移行評価(OceanBase Migration Assessment、OMA)は、OceanBase移行サービス(OceanBase Migration Service、OMS)が提供するデータベース互換性評価ツールです。
互換性評価
現在、OMAはOracle、MySQL、PostgreSQL、TiDB、DB2 LUW、RDS MySQL、Polar MySQL、Polar O、DRDS、MSSQL、openGauss、およびOceanBaseインスタンス(MySQLおよびOracleテナントを含む)からOceanBaseデータベースへの互換性を評価し、互換性レポートを作成することをサポートしています。OracleおよびMySQLインスタンスの評価では、レポートに非互換性の具体的な理由と修正提案が表示されます。その他のタイプのインスタンスの評価では、非互換性の具体的な理由のみが表示されます。
OMAは、データベースオブジェクトの評価、データベースSQLまたはPLステートメントの評価、およびデータベース全体の評価をサポートしています:
データベースオブジェクトの評価
ソースデータベースに直接接続し、ソースデータベースオブジェクトの情報を自動的に取得し、ソースデータベースからOceanBase対応バージョンへの互換性を評価します。
OracleおよびMySQLのDDLステートメントに対する互換性評価をサポートし、テキストファイル(「$$」で区切られている)のDDLステートメントの評価もサポートしています。
ライトクライアントを使用してOracleに接続し、DDLステートメントファイルをエクスポートして互換性評価を実行することをサポートしています。
MySQLDumpからエクスポートされたDDLステートメントを直接読み取り、互換性評価を実行することをサポートしています。
db2lookツールを使用してDDLステートメントをエクスポートし、互換性評価を実行することをサポートしています。
データベースSQLまたはPLステートメントの評価
Oracleデータベースに直接接続し、V$SQLビューを直接スキャンして対応するSchemaのSQLステートメントを取得し、対応するOceanBaseデータベースバージョンとの互換性を評価します。
テキストファイル(「;」または「$$」で区切られている)からSQLまたはPLの互換性を評価することをサポートしています。
MyBatisファイルおよびiBatisファイルから直接SQLステートメントを解析し、その互換性を評価することをサポートしています。
Oracleデータベースに直接接続し、長期間にわたって定期的にV$SQLビューをスキャンして一定期間のすべてのSQLステートメントを取得し、評価を実行することをサポートしています。
DB2 LUWデータベースに接続し、長期間にわたって定期的にsnapshot for dynmaic sqlをスキャンして一定期間のすべてのSQLを取得し、評価を実行することをサポートしています。
データベース全体の評価
データベース全体の評価は、オブジェクト評価、SQL評価、プロファイリング評価などのモードを統合しており、ユーザーは1つの評価タスクでデータベースの上記3つのモードの評価を完了し、1つのレポートで対応する評価結果を確認できます。
現在、OMAのデータベース全体評価機能は、Oracle、MySQL、TiDB、PostgreSQL、DB2 LUWデータベースに対して異なるモードをサポートしています。
パフォーマンス評価
OMAは、SQL再生または負荷テストをサポートしています:
ソースデータベースに接続し、クエリタイプのSQLステートメント(SELECTステートメント)を収集し、OceanBaseデータベースにSQL再生を実行して、SQLステートメントの互換性とOceanBaseデータベースのパフォーマンスを検証することをサポートしています。
Oracle負荷の収集をサポートし、解析されたSQLステートメントに対する互換性評価を実行するか、OceanBaseデータベースに再生を実行して、SQLステートメントの正確性とパフォーマンスを検証することをサポートしています。
MySQLデータベースのGeneral Logファイルを解析して再生を実行することをサポートしています。
OceanBaseデータベースのアップグレードシナリオでは、低バージョンのOceanBaseデータベースからクエリステートメントを取得し、新バージョンのOceanBaseデータベースで再生を実行することをサポートしています。
OceanBaseデータベースオブジェクトとSQLステートメントのエクスポート
OceanBaseデータベースから対応するSchemaのオブジェクトDDLをエクスポートすることをサポートしています。
OceanBaseデータベースから対応する期間のSQL_AUDIT内のSQLステートメントの詳細をエクスポートすることをサポートしています。