もうデータベースアップグレードは怖くない! 「Oracle RAT+Oracle Cloud」で簡単、省コストにテストする:「12c」に向けた最大の関門も、この組み合わせで楽々突破!(2/6 ページ)
「12c R2」がリリースされ、自社のOracle Database環境のアップグレードを検討し始めた企業は多いだろう。その際、大きな課題となるのが「データベースのテスト」だ。これをOracle RATとOracle Cloudによって効率的かつ省コストに行う方法を、アシストの長内麻記氏が解説する。[パフォーマンス改善][パブリック・クラウド][パフォーマンス改善][Oracle Enterprise Manager][Oracle Cloud][Oracle Database 12c]
SQL単体のテストツール「SQL Performance Analyzer」、ワークロード単位のテストツール「Database Replay」
Oracle RATは、「SQL Performance Analyzer」と「Database Replay」という2つの主要ツールと、それぞれのサブツールによって構成される。
「SQL Performance Analyzerは、SQL単体の性能テストを行うツールです。データベースの移行前後におけるSQLの実行計画の変化、性能の変化などを見ることができます。
Database Replayは負荷テストを行うツールです。SQL Performance Analyzerが1つ1つのSQLの移行前後の性能差を見るのに対して、Database Replayでは本番環境のワークロード全体をキャプチャーし、スループットやリソース使用量の変化などを見ることができます」(長内氏)
これらの他に、テスト環境を用意できない場合にもSQL単体のテストが行える「SPA Quick Check」、複数のキャプチャーを1つのデータベースに対して同時にリプレイでき「Consolidated Replay」がサブツールとして付属している。
Oracle RATの利用イメージと2つのツールの使い分け方法
それでは、SQL Performance AnalyzerとDatabase Replayによるテストは、具体的にどのような流れで行うのかを解説する。
SQL Performance Analyzerの利用イメージ
まずSQL Performance Analyzerは、主にデータベースアップグレードやパッチ適用時のSQLテストで利用する。
例えば、「11gで動く本番環境を12cに移行する際、データベースのアップグレードがSQLに及ぼす影響を調査する」という場合には、次の要領でテストを行う。
1:アップグレード後に相当する12cの環境(テスト環境)を作り、そこに本番環境と同じデータを用意する
2:本番環境で実行されているSQLをSQL Performance Analyzerでキャプチャーし、SQL Tuning Set(STS)を作成する。STSには、SQLの他、キャプチャーした環境での実行計画、実行統計などの情報が保存される
3:(2)で作成したSTSをテスト環境に移し、本番環境の性能情報を抽出する
4:STS内のSQLをテスト環境で実行し、実行計画や実行統計などの情報を取得する
5:本番環境とテスト環境の性能値を比較して実行計画や性能が変化するSQLを調べ、必要に応じてチューニングなどを行う
一方、パッチ適用時のテストだが、本番環境と同じ構成のステージング環境を用意している場合は、まずパッチ適用前のステージング環境でSQL Performance Analyzerを実行してSTSを作り、次にパッチを適用したうえでSQL Performance Analyzerを実行し、適用前後の変化を調べるといった流れとなる。
このようにしてSQL Performance Analyzerでテストを行った結果として、次のようなテストレポートが得られる。
ご覧の通り、変更前後の比較結果をビジュアルに一覧できる他、個々の結果をドリルダウンして詳細な情報やエラーメッセージなどを確認することが可能だ。
提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2017年2月11日
Copyright © ITmedia, Inc. All Rights Reserved.