総まとめ! SPAのユースケース――データベース移行で重視するのはコスト、時間、それとも精度:【12c対応】とにかく苦労しない「RAT」簡単攻略テクニック(6)(1/3 ページ)
とにかく大変なデータベースバージョンアップ時の「SQLテスト」。本連載では、この課題を解決するOracle Databaseのオプション機能である「Oracle Real Application Testing(RAT)」と、その一機能である「SQL Performance Analyzer(SPA)」の攻略方法を紹介してきました。最終回では、SPAのニーズが多いシーンごとに3つの「ユースケース」を取り上げます。
前回は、SPA実行時に重要な「テストモード」や「比較メトリック」の違いについて解説しました。今回は3つのユースケースに落とし込んで説明します。連載最終回として、SPAをコマンド操作する方法についても簡単に紹介します。
データベースバージョンアップ時の工程
ハードウェアのリプレースに伴ってデータベースをバージョンアップする場合、図1のような工程をたどるのが一般的でしょう。
図1中の設計・計画工程では、新環境のハードウェアやデータベースのバージョン検討などを経て、本番切り替えまでの工数検討とスケジュール作成を進めます。
新環境の構築工程では、調達したハードウェアにOSやミドルウェア、データベースを導入し、現在稼働中の環境からデータをリストアします(データのテスト移行)。
次にSPAが活躍します。テスト・チューニング工程では、実際にアプリケーションを稼働させたり、SPAによるテストなどを進めたりします。その結果、問題が見つかったSQLをこの時点でチューニングします。その後、データの本番移行を経て最終チェックを実施、アプリケーションを切り替え、晴れてカットオーバーとなります。
このような工程にどのような課題があるのか、SPAのユースケースを示しながら、順番に紹介しましょう。
設計・計画工程でSPAを使い、アプリケーション改修範囲を特定
設計・計画工程では、「テスト・チューニング期間をどの程度設けるか」を決めなければなりません。そのためには、「何本のSQLをテストしなければならないか」「そのうちチューニング対象のSQLは何本になるのか」を見積もる必要があります。
これらの数字を机上の計算で特定するのは至難の業。とはいえ実機を用意してテストすると、工数やコストが難しくなります(図2)。
これまでの経験を頼りにスケジュールを決めると、テスト・チューニング工程で思いもよらぬエラーが発見されたり、想定以上にチューニング対象のSQLが多かったりしてプロジェクトが遅延する、となりがちです。
このような場合は、SPAをクラウドで活用する手法(ユースケース1)をお勧めします(図3)。
テスト環境としてクラウドを採用することで、ハードウェアの調達、構築時間を削減し、「すぐに、ちょっとだけ利用」を実現します。
この方法では、データを持ち込めないことが多いでしょう。しかしSPAならスキーマ定義とオプティマイザ統計だけをリストアして、テストすることが可能です(テストモードとしてExplain Planを選択)。
性能を確認できなくても、非互換のSQLと実行計画が変わるSQLを短時間で網羅的に確認できます。結果に基づいた確度の高いスケジュールを立てることができるでしょう。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- オラクルが考えるDBインフラのクラウド化「DBaaS」とは? 実現方法と支援環境を聞く
「DBaaS(ディービーアース、Database as a Service)」実現に向けて、オラクルはどのような移行プロセスを考えているのだろうか。段階的移行の三つのステップとそれを支援する環境をどこまで用意しているのかを、米オラクルの担当者に取材した。 - アシスト、Oracle Database 12cとクラウドへの早期移行を支援する「12c R2×Oracle Cloudスタートアップキャンペーン」を実施
アシストがOracle Database 12cとOracle Cloudへの移行促進キャンペーンを実施。期間限定で環境構築や基礎機能のレクチャーなどをセットにした移行支援ソリューションを特価で提供する。実施は2017年4月30日まで。 - オラクル、「Oracle Database 12c R2」のOracle Cloud at Customer/オンプレミス向け提供を開始
データベース管理システムの最新版「Oracle Database 12c Release 2」で全ての提供形態が整った。先行提供していたパブリッククラウド向けに続き、新たにOracle Cloud at Customer向けとオンプレミス向け提供を開始した。 - オラクルが確約した「クラウド6箇条」と「Database 12c R2」の気になるトコロ
米オラクルのラリー・エリソンCTOが、同社の年次イベントで今後のクラウド事業の行方を確約する「Oracle Cloud、6つの設計目標」を掲げました。同時に発表された基幹製品「Oracle Database 12c」の次期バージョンのポイントと共に、そこにどんな狙いがあるかを振り返ります。