RATにはさまざまな機能がありますが、ここではSQLのテストを行う「SQL Performance Analyzer」と、システムテストを行う「Database Replay」の2つの機能を簡単に説明します。
SQL Performance Analyzerは、本番環境のSQLをテスト環境で実行し、SQL単位のパフォーマンス比較やエラーの検知を可能にする機能です。システムのパフォーマンス劣化につながる主な要因の1つが、SQLのパフォーマンス劣化です。劣化のきっかけとして挙げられるものに、データ件数の増加やデータバリエーションの変動、パッチの適用、初期化パラメーターの変更などがあります。SQL Performance Analyzerは、そうしたSQLの実行計画が変動するものをあらかじめ特定し、性能劣化が検出されたSQLに関して、事前に対策を打ち、運用後のトラブルを軽減します。具体的には、パフォーマンスを比較し、SQLチューニングアドバイザーやSQL計画管理を併用することで劣化したSQLのチューニングを実施します。
一方のDatabase Replayは、データベースシステム全体の影響を検証する機能です。個々のSQLレスポンスで見ると問題のないように思えても、実際に本番環境のあらゆる処理の入り交るワークロードの中で実行されたときに、システム全体に悪影響を及ぼす問題が発生する場合があります。Database Replayは、それらに負荷テストを実施し影響を把握できるようにします。特徴は、本番の実際のワークロードを取得して、それを再現することができること、アプリケーション担当者がいなくても、データベース担当者だけで、簡単にテストが繰り返し実施できることです。
RATは、本番環境で動いているワークロードを全てキャプチャーし、テスト環境で再現しています。このため、本番環境でどう性能がよくなるか、どんな影響が出るかを正確に診断できます(図3)。
規模の大きいシステムは、SQLだけでも数十万本に達します。これらのパフォーマンスや影響度を人力でチェックしていくのは現実的ではありません。チェック漏れを起こさないように網羅的に対応しようとするとコスト増を招き、コストを掛けて取り組んでも、チェック漏れによるパフォーマンス劣化やシステム停止のリスクは避けられません。このことが、データベースの定期的な更新を妨げる主な要因でした。RATは、高品質で低コスト、網羅的なテストによって、この課題に対応します。
RATを利用する最大のメリットは、定期的な更新をルーティーン化し、強固で柔軟なシステムを作ることができるようになることです。
網羅的なテストを自動的に行うことで、セキュリティを確保した安定的な運用が可能になります。同時に、ビジネスの変化に対しても素早く対応できる柔軟性を確保できます。データベースの更新には、Oracle Databaseに対するグローバル規模の知見も含まれています。定期的に更新することで、セキュリティ対応や障害対応だけでなく、そうしたビジネスで求められる最新のグローバルの知見をシステムに反映できます。塩漬け運用は、こうしたメリットを一切享受できないことに注意すべきです。
データベース運用体制を、塩漬けから「ぬか漬け運用」へ移行する。通常ならばとても大変なことですが、RATはこのぬか漬け運用への移行を強力に支援します。まずは、データベース更新から「ぬか漬け運用」で考えてみる――。そんなところから取り組みをはじめてみてほしいと思います。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2016年11月16日
驚異的なパフォーマンス、優れた運用効率、最高の可用性とセキュリティ、クラウド対応を実現するOracle Exadataとの統合、クラウド、可用性や運用管理など、次世代データベース基盤構築のために参考になる必見資料をまとめてご紹介いたします。