[新製品・サービス]
データベース移行テストツール「Insight Database Testing」新版、SQL非互換問題に対処
2021年11月17日(水)日川 佳三(IT Leaders編集部)
インサイトテクノロジーは2021年11月17日、データベース移行テストツール「Insight Database Testing」の新版「v3.0」を発表した。RDBMSの移行に伴うSQLの書き換えを支援する。現状のSQLが移行先のRDBで通るかどうかをテストする。新版では、SQL非互換問題への対策として、実行はできても挙動が変わってしまうSQLを発見できるようにした。価格(税別)は、本番環境で動作している移行前データベースのCPUコアあたり20万円(3カ月間)から。
インサイトテクノロジーの「Insight Database Testing」は、RDBMSを移行する際に、現状のSQLが移行後のRDBMSでも利用できるかどうかを実際に試してテストするツールである。仮想アプライアンスの形で提供する。既存のデータベースのメモリー領域から実際のSQLを抽出し、これを移行後のデータベースに対して試し、エラーになったSQLの一覧を表示する。エラーの内容や応答性能なども分かる(関連記事:インサイトテクノロジー、移行先DBで既存SQLの実行をテストする「Database Testing」をリリース)。
エラーが出た個々のSQLについては、SQLごとにシンタックス(記述)エラーなどのエラー内容を表示する。Insight Database Testingの画面上で個々のSQLを修正し、その場で再度データベースにアクセスしてテストできる。こうして1つ1つのSQLを修正していく。Insight Database Testing自体はSQLの自動生成機能を備えないため、手動で生成するか、外部のSQL移行ツールを利用して修正する。
新版(v3.0)では、SQL非互換問題への対策として、実行はできても挙動が変わってしまうSQLを発見できるようにした。これまでのInsight Database Testingでは、SQLを実行できるかどうか(エラーが出ないか)を評価していたが、DBMS間には仕様差が存在するため、仮に移行先DBでSQLを実行できたとしても、実行結果が必ずしも同じではないという問題があった。新版では、SQL文の実行結果や実行速度についても比較し、挙動の違いを検知し、実行はできても挙動が変わってしまうSQLを発見できるようにした(画面1)。

拡大画像表示
また、クラウド型データベースのように頻繁にバージョンアップがかかるRDBMSへの対策として、継続的かつ包括的なテストを行える仕組みを提供する。システムで実行しているSQLを自動で収集し、新バージョンでテストを実行する。SQL構文チェック、SQL処理時間の比較による性能チェック、SQLクエリーの処理結果の比較による整合性チェック、などを実施する。テスト環境(バージョンアップインスタンス)も作成する。
動作要件として、Insight Database TestingはVMware ESXi、Amzon EC2、Azure VMの環境で動作する仮想アプライアンス。対応RDBMSは、Oracle Database、PostgreSQL、MySQL、Microsoft SQL Server。