oracle application quality management · oracle enterprise manager のapplication quality...

19
Oracle Application Quality Management Oracle ホワイト・ペーパー 2010 3 Oracle Application Quality Management

Upload: others

Post on 14-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Oracle Application Quality Management

Oracle ホワイト・ペーパー

2010 年 3 月

Oracle Application Quality Management

Oracle Application Quality Management

はじめに ........................................................................................................... 1

Oracle Application Testing Suite を使用したアプリケーションのテスト ........ 3

Oracle Test Manager .................................................................................. 3

Oracle Functional Testing ........................................................................... 5

Oracle Load Testing .................................................................................... 6

Application Testing Suite の利点 ................................................................. 7

Oracle Real Application Testing を使用したインフラストラクチャ・テスト . 8

SQL Performance Analyzer ........................................................................ 9

Database Replay ...................................................................................... 10

Real Application Testing の利点 ................................................................ 12

Oracle Data Masking Pack を使用したセキュアなテスト・データ管理....... 13

Oracle Data Masking Pack ....................................................................... 13

Oracle Data Masking Pack の利点 ........................................................... 15

結論 ................................................................................................................ 16

Oracle Application Quality Management

1

はじめに

ますます多くのアプリケーションが配置され、ますます多くのサービスがオンラインへ移行する中

で、アプリケーションの品質とパフォーマンスの維持は企業が抱えるもっとも大きな課題の 1 つに

なりました。また新規アプリケーションのリリースやアップグレード、パッチ適用のペースが速く

なり続け、テストの必要性が高まるにつれて、これらの維持にかかるコストもいっそうの高まりを

見せています。Oracle Application Quality Management ソリューションは、アプリケーション・スタッ

クを構成するすべての層に高品質なテスト機能を提供することで、企業がアプリケーションの品質

とパフォーマンスに関する問題を配置前に見つけ出し、コストを削減し、アプリケーションのエン

ドユーザーに優れたエクスペリエンスを提供できるように支援します。

企業は、顧客に提供するサービスの品質と費用効果を高めるため、新しいアプリケーションに巨額

の投資を行ってきました。しかし、ソフトウェア品質が十分でない場合、これらの投資はリスクに

さらされる結果となります。過去の調査によると、ソフトウェア・アプリケーション・リリースの

40%以上で重大な欠陥が見つかっています。そして、これらの欠陥を本番で修正するためのコスト

は、開発フェーズで修正を実施する場合と比べて最大で 100 倍にも上ります。Siebel 顧客に対して

行われたある顧客満足度調査では、実施されたテストの総数とアプリケーションに対する顧客満足

度の間に相関関係が確認されました。全体的な製品の有効性、信頼性、速度、スケーラビリティを

含むあらゆる指標において、より多く、より正式にテストを実施した顧客の方がテストを実施して

いない顧客よりも良い結果を得ていました。したがって、ビジネスの俊敏性とサービス・レベルを

維持すると同時にコストとリスクを削減するには、アプリケーション品質管理が非常に重要になり

ます。

Oracle Enterprise Manager の Application Quality Management(AQM)ソリューションを利用する

と、アプリケーション・スタックを構成するすべての層で高品質なテストを実施できます。徹底的

なテストを実施することで、ユーザーはアプリケーションの配置前にその品質とパフォーマンスの

問題を見つけ出すことができます。テストは、アプリケーションの配置を成功させる上でもっとも

困難かつ時間を要する作業ですが、プロジェクトの成功にとって、もっとも不可欠な要素でもあり

ます。Oracle Enterprise Manager の AQM ソリューションは独自の方法で組み合わせたテスト機能

を提供します。この機能を使用すると、ユーザーは次のテストを実施できます。

Oracle Application Quality Management

2

インフラストラクチャ変更のテスト:Oracle Real Application Testing はデータベース層のインフ

ラストラクチャ変更テスト向けに設計および最適化されており、実際のアプリケーションの本番

ワークロードを使用して、テスト環境でデータベース・パフォーマンスを検証できます。

アプリケーション変更のテスト:Oracle Application Testing Suite が提供するエンド・ツー・エン

ドの包括的アプリケーション・テスト・ソリューションを利用すると、機能テストやリグレッショ

ン・テストを自動化し、負荷テストを実行し、テスト・プロセスを管理できます。これにより、

アプリケーションの品質とパフォーマンスを確保できます。

テスト・データの管理と本番規模のセキュアなテストの実施:Oracle Data Masking Pack は本番

データベース内の機密データを難読化し、これらをテスト環境で使用できるようにすることで、

セキュリティ目標とコンプライアンス目標の達成を支援します。

これらの製品は併せて、包括的なアプリケーション品質管理ソリューションを提供します。

Oracle Application Quality Management

3

Oracle Application Testing Suite を使用したアプリケーションのテスト

厳密なアプリケーション・テストは、アプリケーション配置を成功に導くだけでなく、エンドユー

ザーに優れたエクスペリエンスを提供します。これには、アプリケーションと基盤インフラストラ

クチャ全体をエンド・ツー・エンドでテストし、要件の満足と期待どおりのパフォーマンスを確認

する作業が含まれます。しかしながら、テストはアプリケーション開発プロセスの最後の最後に持

ち越されがちであり、成功を保証するための事前の計画はほとんど、またはまったく実施されてい

ないことが多くあります。アプリケーション機能は通常、その場その場で手動によりテストされま

すが、パフォーマンス・テストはしばしば後から付け足されます。テスト担当者と品質保証チーム

は限られた時間と不十分なリソースを使用して、クリティカルなアプリケーションが正しく機能す

ることを確認しなければなりません。アプリケーション開発ではどうしても期間が延びてしまい、

往々にして厳しいスケジュールの中でリリースに間に合わせるためにテスト期間がさらに短縮され

ます。

Oracle Application Testing Suite(Oracle ATS)は統合テスト・ソリューションであり、アプリケーショ

ンの品質、パフォーマンス、信頼性を確保するためにエンド・ツー・エンドのテスト機能を提供し

ます。Application Testing Suite には、Web アプリケーション、Oracle パッケージ・アプリケーション、

そしてサービス指向アーキテクチャ(SOA)アプリケーション向けに、自動化された機能テスト、

負荷テスト、テスト管理を実施する一連の製品が含まれています。テスト・ケースの自動化、アプ

リケーション・パフォーマンスのテストとチューニング、テスト・プロセスの管理を支援すること

で、Oracle ATS はアプリケーション品質の向上とテスト・チームの効率化を促します。

Oracle Application Testing Suite には、ライセンスの分かれた 3 つの製品が含まれています。

Oracle Test Manager は、テスト要件、テスト・ケース、不具合を含むテスト・プロセス全体を管

理し、文書化します。

Oracle Functional Testing は、Web アプリケーションや Oracle パッケージ・アプリケーション、お

よび Web サービスの機能テストとリグレッション・テストを自動化します。

Oracle Load Testing は、Web アプリケーションや Oracle パッケージ・アプリケーション、および

Web サービスの負荷テストを自動化します。

Oracle ATS は、基盤となるサーバー・テクノロジーやプラットフォームに依存しない、Web アプリ

ケーションまたは Web サービス向けの異種対応テスト機能を提供します。また、Oracle E-Business

Suite や Siebel などの Oracle パッケージ・アプリケーションのテストを効率化および最適化する、カ

スタムのテスト"アクセラレータ"を提供します。Oracle ATS の使用を通じて、顧客はミッション・ク

リティカル・アプリケーションの配置とアップグレードを成功に導くことができます。

Oracle Test Manager

厳しいリリース・スケジュールと限られたリソースの中で、アプリケーション品質を確保すること

は難題です。この問題に対処する唯一の方法は、テスト・プロセスの計画、実行、管理に効果的な

フレームワークを使用することです。効果的なテスト・プロセスを事前に導入しておくと、次の利

点がもたらされます。

テスト・サイクル時間の短縮

テスト効率の向上

Oracle Application Quality Management

4

テスト・ケースの再利用性の向上

テスト・プロセスの可視化

Oracle Test Manager は包括的なテスト・プロセス管理ソリューションを提供することで、すべてのテ

スト要件、テスト・ケース、および不具合を中央のリポジトリから管理し、テスト・プロセスの有

効性を向上できるよう支援します。Oracle Test Manager へは完全に Web ベースのコンソールを介し

てアクセスし、次の 3 つの統合モジュールが提供されます。

要件モジュールを利用すると、テスト・プロセスを開始する前に、テスト要件を文書化し、管理

できます。

テスト・モジュールでは、詳細なテスト計画の作成、自動および手動のテスト・ケースの文書化、

テスト・ケースの実行、結果の保存を実行できます。

不具合モジュールでは、テスト・プロセス中に発見された不具合を捕捉および共有して、その解

決策を追跡できます。

Oracle Test Manager に組み込まれたレポート作成・インタフェースを使用すると、テスト・プロセス

に対してエンド・ツー・エンドの可視性が得られます。また、それぞれのテスト手法に合わせて全

面的にカスタマイズできます。さらに、この製品は Oracle Database や Oracle WebLogic Server をベー

スとしたスケーラブルなエンタープライズ・アーキテクチャに基づいて構築されているため、増大

する要件を満たす無制限のスケーラビリティを実現します。

図 1:Oracle Test Manager

Oracle Application Quality Management

5

Oracle Functional Testing

機能テストは、アプリケーションの機能がエンドユーザーのビジネス要件を満たしていることを確

認するためのテストです。新しいアプリケーションを配置するか、既存アプリケーションをアップ

グレードするかに関係なく、アプリケーションが期待どおりに機能することを確認し、不具合があ

ればそれを配置前に特定して対処するために、機能テストは不可欠な存在です。機能テストでは、

新機能を検証するだけでなく、アップグレードの一部として既存機能をテストする必要もあります。

これは、最新のリリースでアプリケーションが"退行"していないことを確認するためです。このよう

に機能テストとリグレッション・テストを組み合わせることが、アプリケーション全体の品質を確

保するための鍵となります。

手動テストは、現在あらゆるアプリケーションに対して実施されている機能テストとリグレッショ

ン・テストの大部分を占めます。手動テストは通常、テスト担当者、開発者、ビジネス・アナリス

ト、そして場合によってはエンドユーザーによるチームによって実施され、本番に配置する前にテ

スト環境またはステージング環境でアプリケーションを手動で操作し、その機能を確認するもので

す。この種のテストでは、これらのテスト担当者の実務知識とその経験が活用されます。しかし、

このようなテストには非常に時間がかかり、コストも高く、非効率的です。特に、大規模なアプリ

ケーション・ロールアウトや一連のアプリケーション・アップグレード・サイクルを繰り返す場合、

絶え間なくテストを継続する必要があります。自動化されたテスト・ツールを使用すると、テスト・

ケースの多くを自動化し、テスト範囲を拡大してアプリケーションの大半を網羅し、手動テストの

必要性を低減できます。これにより、時間とコストの両方を節約できます。機能テストとリグレッ

ション・テストを自動化すると、手動によるテスト作業が補完され、テスト担当者の効率と有効性

が向上します。

Oracle Functional Testing は、Web アプリケーション、SOA アプリケーション、そして Oracle パッケー

ジ・アプリケーションの機能テストとリグレッション・テストを自動化するテスト・ソリューショ

ンです。この製品に統合されたスクリプト・プラットフォームである OpenScript を使用すると、複

雑なビジネス・トランザクションをシミュレートする自動テスト・スクリプトを作成できます。ま

た同じソリューションを使用して、機能テストと負荷テスト用の自動テスト・スクリプトを作成で

きるため、ユーザーはタスクごとに異なるツールやスクリプト言語を習得する必要はありません。

OpenScript はスクリプト作成プロセスを簡素化する直感的なビジュアル・スクリプト・インタフェー

スに加えて、上級ユーザー向けの優れたスクリプトの拡張機能を備えた強力な Java IDE を提供しま

す。OpenScript を使用すると、ブラウザ内で Web アプリケーションを操作するだけで、自動テスト・

スクリプトを作成できます。OpenScript によって、すべてのユーザー・アクションと入力データが自

動的に捕捉され、ブラウザ・オブジェクトが正確に特定されます。ユーザーは作成された自動スク

リプトを実行してトランザクションを実行できます。またグラフィカル・スクリプト・インタフェー

スを利用すると、再生結果を分析し、スクリプト入力をパラメータ化し、アプリケーション・コン

テンツを検証するためのカスタム・テスト・ケースを追加できます。OpenScript では負荷テストのス

クリプトも作成できます。Oracle Load Testing を使用すると、このスクリプトを数千もの同時仮想ユー

ザーに対して実行し、アプリケーション・パフォーマンスを検証できます。Oracle E-Business Suite

や Siebel、および SOA Web サービス向けのカスタム・テスト・アクセラレータは、カスタマイズさ

れた自動機能を通じてより効率的な最適化テストを実現します。

Oracle Application Quality Management

6

図 2:Oracle Functional Testing

Oracle Load Testing

負荷テストは、アプリケーションが本番に配置された後、実際のユーザー・ワークロードに耐える

パフォーマンスとスケーラビリティを発揮できるかどうかを確認するテストです。これにより、ア

プリケーションが許容範囲内のパフォーマンスと応答時間を維持しながら、ピーク使用時に一定の

数の同時ユーザーとその結果生成されるトラフィックを処理できるかどうかを評価できます。また、

配置前に重大なボトルネックを見つけ、これに対処することもできます。さらにストレス・テスト

を実施すると、通常処理の限界を超えたテストを実施して、アプリケーション・インフラストラク

チャのキャパシティとスケーラビリティを評価できます。

効果的にアプリケーション・パフォーマンスを分析し、ボトルネックを特定するには、本番レベル

の負荷をシミュレートし、結果のアプリケーション・パフォーマンスを正確に測定する必要があり

ます。パフォーマンス・チューニングもまた一般に、ボトルネックに対処するための変更をアプリ

ケーションやインフラストラクチャに反映するたびに、持続的に再テストをする必要のある繰返し

プロセスです。したがって、自動化された負荷テスト・ツール以外で、これらのテストを手動で実

行する現実的な代替手段は存在しません。

Oracle Load Testing を使用すると、Web アプリケーションや SOA アプリケーション、また Oracle パッ

ケージ・アプリケーション向けの現実的な負荷テストを実行できます。これにより、数千もの同時

ユーザーをシミュレートし、本番ロード・レベルでのアプリケーション・パフォーマンスへの影響

を分析できます。ユーザーは、OpenScript 統合スクリプト・プラットフォームを使用して、主要なア

プリケーション・ワークフローを自動化する負荷テスト・スクリプトを作成できます。OpenScript

を使用すると、基盤となるテクノロジーやプラットフォームに関係なく、あらゆる Web ベース・ア

プリケーション向けの負荷テスト・スクリプトを作成できます。また組込みの負荷テスト・アクセ

ラレータ・オプションを使用すると、Oracle E-Business Suite や Siebel、および SOA ベースの Web サー

ビス・インタフェース向けにカスタマイズされた負荷テスト機能を使用できます。

Oracle Application Quality Management

7

また Oracle Load Testing は完全に Web ベースの直感的なコンソールを提供しており、これらのスク

リプトを何名の同時ユーザーに対しても実行できるように設定できます。Oracle WebLogic Server 上

に配置された Oracle Load Testing では、直感的な Web インタフェースから負荷テスト・シナリオを

設定し、テストを実行し、アプリケーション・パフォーマンスを分析するためのグラフとレポート

を表示できます。また Oracle Load Testing に組み込まれたサーバー・モニターを利用すると、パフォー

マンス・ボトルネックの特定と解決が容易になります。この包括的なインフラストラクチャ・パ

フォーマンス・モニター・セットは、負荷テスト中に、Web サーバー、アプリケーション・サーバー、

データベース、その他のインフラストラクチャ・コンポーネントのパフォーマンス・メトリックを

詳細に記録します。この情報を仮想ユーザーが収集したパフォーマンス結果と組み合わせると、分

析に必要なリアルタイム情報が得られるため、テスト実行中および実行後のアプリケーション・パ

フォーマンスを最適化できます。

図 3:Oracle Load Testing

Application Testing Suite の利点

Oracle Application Testing Suite を使用して機能テストとリグレッション・テストを自動化し、負荷テ

ストを実行し、テスト・プロセスを管理している組織では、次の領域で大きな利点が得られています。

Oracle Application Quality Management

8

テストにかかる時間とコストの削減:テスト・ケースを自動化し、使いやすいテスト・ソリュー

ションを活用することで、テスト・サイクルの効率と有効性を高めるとともに、手動テストの必

要性を減らすことに成功しました。

アプリケーションの品質とパフォーマンスの向上:機能テストと負荷テストの自動化ツールを利

用することで、テスト範囲を拡大し、本番レベルのワークロード下でアプリケーションをテスト

するだけでなく、より多くの機能上の不具合とパフォーマンス・ボトルネックを実際の配置前に

特定して対処したことで、修正コストを低く抑えることができました。

テスト・プロセスに対する管理と可視性の強化:一元化されたコンソールを使用してテストを管

理することで、テスト・チームによる協業と情報共有を実現するとともに、テスト・プロセスに

対する管理が強化され、可視性が向上しました。

上記は、新しいバージョンの Siebel CRM をロールアウトした大手金融サービス企業によって実現さ

れた利点です。大規模アップグレードの実行と新規アプリケーション機能の追加に加えて、より尐

ない数の高性能マシンへのサーバー・プラットフォーム統合が実施されました。以前の Siebel アッ

プグレードは困難であり、アプリケーションを本番に配置した後で、エンドユーザーのパフォーマ

ンスが低下するという予期せぬ問題が発生していました。今回は Application Testing Suite を利用する

ことで、重要な Siebel トランザクションを Oracle Functional Testing で素早く自動化し、負荷テスト・

スクリプトを作成できました。次に、これらのテスト・シナリオを数百名の同時ユーザーに対して

実行し、本番でのアプリケーション使用状況をシミュレートしました。このテストでは、コストの

かかる非定型問合せが実行された際に、データベース層での CPU の過剰消費によってアプリケー

ション・パフォーマンスの問題が発生していることが確認されました。このパフォーマンス・ボト

ルネックに対処した後で負荷テストを再実行した結果、データベース層で問題は発生せず、アプリ

ケーション・パフォーマンスは許容範囲内であることが確認されました。徹底的なテストとチュー

ニングを行ったことで、この顧客の本番アップグレードは成功に終わり、エンドユーザーからはア

プリケーション・パフォーマンスに対する肯定的なフィードバックが寄せられました。

Oracle Real Application Testing を使用したインフラストラクチャ・テスト

Real Application Testing は、ATS 機能の補完製品として、データベース・スタック向けの高品質な負

荷テスト・ソリューションを提供します。Real Application Testing は、データベース・スタックやさ

らに下層スタックのシステム変更に対する既存アプリケーションのテストに使用できます。データ

ベース運用環境で日常的に発生するシステム変更のうち、サポート対象となる一般的な例としては、

オペレーティング・システムとハードウェアのアップグレード、ストレージ・サブシステムの変更、

データベースのアップグレードやパッチ適用、Oracle Real Application Clusters(Oracle RAC)インス

タンスの追加、Oracle RAC への変換、Oracle Exadata V2 への移行、データベース・パラメータやオ

プティマイザ関連の変更があります。

Real Application Testing は次の 2 つのソリューションを通じて、システム変更による実際のアプリ

ケーションへの影響をテストします。

SQL Performance Analyzer(SPA)は、変更による SQL 実行計画やパフォーマンス統計情報の変化

を識別することで、システム変更による SQL の応答時間への影響を評価します。

Oracle Application Quality Management

9

Database Replay は、ワークロードの変更による全体的な影響を特定するため、本番のフル・ワー

クロードをテスト・システムで再生することにより、テスト環境で効果的にシステム変更をテス

トします。

Database Replay と SPA を組み合わせると、データベース・スタック関連の変更による影響を評価す

るための包括的で柔軟なエンド・ツー・エンド・ソリューションが提供されます。これらのソリュー

ションを利用することで、企業はシステム変更がもたらす結果をテスト環境で十分に評価し、必要

に応じた修正措置を講じてから、この変更を安全に本番システムに導入し、望ましくない影響を最

小化できます。Real Application Testing の機能は、Oracle Enterprise Manager またはコマンドライン API

から使用できます。

SQL Performance Analyzer

オプティマイザ統計の更新、スキーマ変更、アプリケーションのアップグレードやパッチ適用など

の日常的なシステム変更に起因する SQL 実行計画の変更によって、本番システムのパフォーマンス

と安定性に重大な影響が及ぶことはよくあります。したがって、アプリケーションを円滑に機能さ

せるには、SPA を使用してきめ細かく SQL 応答時間を評価し、リグレッションが発生していればこ

れを修正することが重要です。

SPA は変更前環境と変更後環境で個別に SQL 文を連続実行して、変更による影響を示した詳細レ

ポートを提供します。このレポートでは、パフォーマンスが同じ SQL、向上した SQL、そして低下

した SQL が明らかにされます。SPA 機能は SQL Tuning Advisor や SQL Plan Management などのデー

タベース・チューニング・ソリューションに組み込まれています。結果的に、SPA を使用すると、

SQL ワークロードが極めて大きい場合(数十万単位の SQL 文)でも、アプリケーションの SQL に

関する問題を特定する際の時間のかかる手動プロセスを完全に自動化し、簡素化できます。またシ

ステム変更による SQL のパフォーマンス低下があった場合は、修正処理も自動化されます。

SPA レポートには、ワークロード全体に対する変更の影響、および各 SQL 文への実際の影響がまと

められています。次の図に示す Oracle Enterprise Manager の SPA Task Result ページでは、完了した

SPA テストの結果が表示されています。

Oracle Application Quality Management

10

図 4:SQL Performance Analyzer レポート

SPA テストでは、ワークロードに含まれるすべての SELECT 文と、DML の問合せコンポーネントが

対象になります。問合せではデータの状態が変更されないため、ピーク時以外の時間帯やメンテナ

ンス・ウィンドウ内で、リソースと時間を適切に制限した状態の本番システムで SPA を使用するこ

ともできます。また本番ユーザーへの影響を防止するため、管理された方法でプライベート・セッ

ション属性をテストすることもできます。テラバイト単位の大規模データベースの場合、リソース

制約によってテスト・システムを全面的にプロビジョニングできない場合があります。このような

場合 SPA では、本番環境自体でテストを実行するか、または本番データベースのサブセットを使用

してテスト環境でテストを実行するかを柔軟に選択できます。

本番環境でのテスト機能の提供に加えて、SPA テストはさまざまなデータベース・リリースとユー

スケースに対応しています。たとえば、SPA を使用して、定期的なオプティマイザ統計の更新や、

Oracle Database 10.2.0.x から 10.2.0.y へのパッチ適用、Oracle9i または Oracle Database 10g から 10.2

以上へのアップグレードをテストできます。また SPA テストは、独自のスクリプトや ATS、または

Database Replay に対して適用することもできます。2 つの環境(変更前と変更後)でワークロードを

取得して別々の STS に格納し、"STS から構築"という SPA の試行手法を使用すると、システム変更

による SQL ワークロードへの影響を把握できます。

Database Replay

Database Replay はワークフローを全面的に網羅し、実際の本番規模のワークロードを使用すること

で、最高品質のテストを実現します。Database Replay を使用すると、ごくわずかなパフォーマンス・

オーバーヘッドで本番環境のワークロードを取得し、元のワークロードと完全に同一のタイミング、

同時実行性、トランザクション特性を使用して、テスト・システム上で再生できます。Database Replay

は実際の本番ワークロードを再生することで、望ましくない結果(新しい競合ポイントやパフォー

マンス低下)の特定を含めた、変更影響に対する包括的な評価を実現します。また、幅広い分析お

よびレポート作成機能を通じて、新しいエラーの発生やパフォーマンスの相違などの潜在的な問題

を特定します。このように、Database Replay を使用すると、通常は数カ月かかるシステム変更の評

価タスクが数日に短縮されます。

Oracle Application Quality Management

11

Database Replay のワークロード取得はデータベース・サーバー・レベルで実行されるため、データ

ベース層よりも下層での次のシステム変更の評価に使用できます。

データベースのアップグレード、パッチ、パラメータ、スキーマの変更など

シングル・インスタンスから Oracle RAC や Oracle ASM への変換といった構成変更

ストレージやネットワーク、インターコネクトの変更

オペレーティング・システム、ハードウェアの移行、パッチ適用、アップグレード、パラメータ

の変更

Database Replay のプロセスは、おもに次の 4 つのステップに分けることができます。

ワークロード取得ステップでは、外部クライアントから Oracle Database に対するすべてのリクエ

ストが記録されます。これには、SQL テキスト、バインド変数、トランザクション情報などのす

べてのクライアント・リクエスト関連情報が含まれます。ただし、バックグラウンド・アクティ

ビティとデータベース・スケジューラ・ジョブは取得されません。

ワークロード処理ステップでは、取得データが変換され、ワークロードの再生に必要なメタデー

タが生成されます。

ワークロード再生ステップでは、取得システムとまったく同じタイミングと同時実行性でデータ

ベースへのコールが発行され、本番環境とまったく同じ負荷がシステムにかけられます。このス

テップでは、テスト・システムが再生用に正しく設定されていることが前提となります。

分析とレポートのステップでは、システム変更による影響を理解するためにさまざまな情報が提

供されます。エラー、パフォーマンス、データの相違に関して、概要レベルのサマリーと掘り下

げられた詳細情報の両方が提供されます。

図 5 に示す Oracle Enterprise Manager の Database Replay Summary ページでは、完了したワークロード

再生の結果が表示されています。

Oracle Application Quality Management

12

図 5:Database Replay のワークロード再生サマリー

Real Application Testing の利点

システム変更のテストに Oracle Real Application Testing を使用している企業では、次の領域において

大きな利点が得られています。

最高品質のテスト:実際の本番ワークロードをテストに使用することで、本番配置前に問題を突

き止めて修正することができました。これにより、本番システムのパフォーマンス、SLA、安定

性が向上しました。

IT コストの削減:Real Application Testing を継続的に使用することで、以前は本番環境での運用上

の問題の火消し作業を余儀なくされていた DBA の負荷を軽減することに成功しました。現在、こ

れらのリソースは、より事前予防的で戦略的なビジネス要素に割り当てられています。

上記は、Oracle Database 11g へのアップグレードにおいて Real Application Testing を使用した大手小

売企業によって実現された利点です。ここでの課題は、小売店情報をホストしているミッション・

クリティカルなデータベースをアップグレードすることにありました。この顧客は、以前に Oracle

Database 8.1.7 からアップグレードする際、独自のテスト・ツールを使用していました。8.1.7 へのアッ

プグレード後に不安定なパフォーマンスが確認され、システムの安定性を維持するために多数のア

プリケーション変更を実施する必要がありました。Real Application Testingを使用したOracle Database

11g へのアップグレードでは、テスト時間が以前より 50%短縮されただけでなく、アプリケーション

変更も必要ありませんでした。さらに重要なことに、本番での稼働開始は順調に進み、昨年の運用

において予期せぬ事態は確認されませんでした。この顧客では、SQL 応答時間をテストし、ワーク

ロードに最適なデータベース構成を見つけるために、SPA が使用されていました。また Database

Replay を使用して、ワークロード・パフォーマンスがテストされました。さらにアプリケーション・

パフォーマンスを透過的に向上するため、SQL プロファイルが使用されました。現在、この小売企

業は将来の成長に適応しやすい状況にあり、OLTP 圧縮や TDE などの新しいテクノロジーを採用す

るために Real Application Testing の使用を拡大する予定です。このように、変更に付随するリスクを

排除すると同時に、労力を大幅に削減できたことで、Oracle Database 11g へのアップグレードは円滑

に実現されました。

Oracle Application Quality Management

13

Oracle Data Masking Pack を使用したセキュアなテスト・データ管理

企業は、さまざまな事業目的のために、常に組織の内外でデータを共有してきました。こうした企

業のデータベース管理者(DBA)は、本番データをステージング環境またはテスト環境にコピーす

ることで、社内開発者やオフショアのテスト担当者がアプリケーションの開発およびテストを実行

できるようにしています。このデータ共有における問題は、多くの場合、政府の規制によってアク

セスが制限されている企業の機密情報や慎重な扱いを要する情報、あるいは個人情報が本番データ

のコピーに含まれている点にあります。このため、アプリケーション開発者やソフトウェア品質の

テスト担当者と本番データを共有する際、これらの企業は機密情報の侵害リスクにさらされています。

Oracle Data Masking Pack

Oracle Data Masking Pack は、元の機密データを架空のデータへと不可逆的に置き換えて、IT 開発者

またはオフショアのビジネス・パートナーと本番データを安全に共有できるようにすることで、こ

のリスクを軽減します。Oracle Data Masking Pack は、データをマスキングする一方で、アプリケー

ションの整合性を維持します。Oracle Enterprise Manager からアクセスできるこの Data Masking Pack

は、法規制を遵守しながら、本番データベースを基にテスト用データベースをプロビジョニングす

るプロセスを、エンド・ツー・エンドのセキュアな手法で自動化します。

機密データの検出とアプリケーションの整合性

データが機密として扱われる理由はさまざまです。たとえば、機密保護(従業員の給与情報)、法

規制(サーベンス・オクスリー法や HIPAA 法の遵守)、またはすでに定着している商慣行(PCI DSS)

などが理由として挙げられます。Oracle Data Masking Pack の検索機能を使用すると、情報セキュリ

ティ管理者は、データベースを素早く検索して機密データを特定できます。一部のアプリケーショ

ンでは、参照関係(主キーと外部キー)によって関連付けられている複数の表で、同じ機密データ

が保持されることがあります。たとえば、人事アプリケーションの従業員番号がこれに該当します。

Oracle Data Masking Pack はこれらの関係を検出し、参照関係を維持したまま関連するすべてのデー

タ要素を自動的にマスキングします。

拡張可能な包括的マスク・ライブラリ

Oracle Data Masking Pack は、クレジットカード番号、電話番号、国民識別番号(米国の社会保障番

号、英国の国民保険番号)などの一般的な機密データに対応した、マスクフォーマットの一元化ラ

イブラリを標準で提供します。Oracle Data Masking Pack のフォーマット・ライブラリを利用するこ

とで、企業は、企業内にあるすべてのデータベースの機密データに対して単一のソースからデータ・

プライバシ・ルールを適用できるため、確実な規制遵守が可能になります。また、独自のマスク・

フォーマットでこのライブラリを拡張して、企業に固有のデータ・プライバシ要件およびアプリケー

ション要件に対応することもできます。

高度なマスキング手法

Oracle Data Masking Pack が提供する各種の高度なマスキング手法によって、データ・プライバシを

確保しながらアプリケーション要件に対応することが可能になります。これらの手法では、マスキ

ング後もエラーなしでアプリケーションが動作し続けることが保証されます。以下に例を示します。

Oracle Application Quality Management

14

条件ベースのマスキング:この手法では、一致する条件によって、同じデータセットでも行ごと

に異なるマスク・フォーマットを適用できます。たとえば、出身国に基づいて異なる国民識別番

号マスクを適用できます。

複合マスキング:この手法では、関連する複数の列をグループ化して、そのグループに対してマ

スクを適用することで、関連するすべての列のデータについて、マスキング後も同じ関係が維持

されるようにします。たとえば、市町村名、都道府県名、郵便番号の値は、マスキング後も一貫

性が維持されている必要があります。

確定的マスキング:この手法では、マスキングの実行後に、マスキングされた値の再利用が保証

されます。つまり、確定的マスキングを使用すると、企業は、特定の値(例:顧客番号)を、す

べてのデータベースで同一の値にマスキングできます。

Oracle Data Masking Pack では、マスキング・プロセスでのエラー発生を防止するために、マスキン

グを実行する前にいくつかの妥当性チェックが実行されます。実行される妥当性チェックには、表

のデータ型とマスク・フォーマットが一致していることの検証や、領域のチェックなどがあります。

一般的に処理の遅い従来型のマスキング・プロセスとは異なり、Oracle Data Masking Pack は、パラ

レル化された非常に効率的なバルク処理を使用して、元の機密データをマスキングされたデータに

置き換えます。このデータ・マスキング・プロセスはすべて所定の場所で実行され、プロセスの実

行中も機密データがデータベースの外で使用されることはないため、企業にとって万全なセキュリ

ティが保証されています。

また、Oracle Data Masking Pack は、Oracle Enterprise Manager の Oracle Provisioning and Patch Automation

Pack と統合されているため、1 つのワークフローでデータベース・クローン・プロセスとマスキン

グ・プロセスを続けて実行できます。セキュアで高パフォーマンスという特性を持った Oracle Data

Masking Pack とエンド・ツー・エンドのワークフローを組み合わせることで、企業は、本番システ

ムに基づくテスト・システムを素早くプロビジョニングすることが可能になります。これによって、

個別の手動プロセスを、数日から数週間かけて実行する必要はなくなります。

Oracle Database 向けの最適化

Oracle Data Masking Pack では、マスキング・ソリューションの全体的な管理性を強化するために、

Oracle データベースの主要な機能が活用されています。その一部を次に示します。

フラッシュバック:管理者は、任意で Oracle データベースのフラッシュバック機能を有効にでき

ます。この機能を有効にすると、マスキングされたデータに問題があった場合に、マスクを適用

する前の状態にデータベースを戻すことができます。

PL/SQL:他のソリューションと異なり、Oracle Data Masking Pack では、DBA にとって扱いやす

い PL/SQL ベースのマスキング・スクリプトが生成されます。DBA は、このスクリプトを利用し、

ニーズに合わせてマスキング・プロセスを調整できます。また、PL/SQL ベースのマスキング・ス

クリプトを、簡単にクローニング・プロセスと組み合わせることもできます。

Oracle Application Quality Management

15

図 6:Data Masking Pack

Oracle Data Masking Pack の利点

テスト環境や開発環境での機密データ保護に Oracle Data Masking Pack を使用した企業では、次の領

域において大きな利点が得られています。

コンプライアンス:開発者やテスト担当者と本番データを共有する際に機密情報を保護すること

で、本番レベルのテストを実施しながら、本番以外のデータベースで IT セキュリティ・ポリシー

を遵守することに成功しました。

自動化:マスキング・プロセスを自動化することで、以前は手動で開発したマスキング・スクリ

プトの保守を課せられていた DBA の負担が軽減されました。

上記は、Oracle Data Masking Pack を導入した大手のグローバル通信製品企業によって実現された利

点です。この企業では、テスト環境や開発環境で人事(HR)アプリケーションの機密データをマス

キングするために、以前はデータベース管理者がカスタム・スクリプトを開発していました。企業

が成長し新規サービスを提供するにつれて、IT インフラストラクチャも拡大し、DBA の負担が増加

していました。Oracle Data Masking Pack を導入したことで、ロールベースで職務分離が実現された

ため、HR アナリストが機密データをマスキングするためのセキュリティ・ポリシーを定義できるよ

うになりました。また DBA は、新しいテスト環境や開発環境をプロビジョニングする際、これらの

マスキング・ポリシーを自動で実装することができました。このように、自動化を通じて DBA の手

動作業を軽減するとともに、ビジネス・ユーザー自身が本番以外の環境でのコンプライアンスを確

保できるようになりました。

Oracle Application Quality Management

16

結論

エンタープライズ・アプリケーションの品質とパフォーマンスを確保するには、包括的なアプロー

チを採用してアプリケーション品質を管理する必要があります。これを実現するには、実際の配置

前に、アプリケーション・スタックのすべての層を徹底的にテストする必要があります。つまり、

新規アプリケーションの配置だけでなく既存アプリケーションのアップグレードに対しても、アプ

リケーションとインフラストラクチャの両方をテストしなければなりません。包括的なテストを実

施するには、実際の運用条件下でアプリケーションの機能とパフォーマンスを検証する必要があり

ます。また効率を最大化するため、効果的なフレームワークを使用してテスト・プロセスを計画お

よび管理し、自動化を利用して手動作業を削減することが重要です。

Oracle Enterprise Manager は、Application Testing Suite、Real Application Testing、Data Masking Pack を

含む包括的な Application Quality Management ソリューションを提供しています。このベスト・オブ・

ブリードの Oracle AQM 製品を使用すると、アプリケーションからデータベースまでのスタック全体

をテストできます。この製品は、市場で唯一、実際のワークロード・テストと合成ワークロード・

テストを組み合わせた負荷テスト・ソリューションです。この製品を使用すると、変更によるリス

クを最低限に抑えながら、高品質でセキュアなテストを実現できます。Oracle AQM ソリューション

はさまざまな異種に対応したテスト・ソリューションを提供しており、このソリューションは Oracle

アプリケーションのテスト向けにも最適化されています。Oracle AQM を使用すると、テストのサイ

クル時間を短縮し、コストを削減するとともに、アプリケーションの品質とパフォーマンスを向上

できます。

Oracle Application Quality Management

2010 年 3 月

著者:Joe Fernandes

共著者:Jagan Athreya、Prabhaker

Gongloor

Oracle Corporation

World Headquarters

500 Oracle Parkway

Redwood Shores, CA 94065

U.S.A.

海外からのお問い合わせ窓口:

電話:+1.650.506.7000

ファクシミリ:+1.650.506.7200

oracle.com

Copyright © 2010, Oracle and/or its affiliates.All rights reserved.本文書は情報提供のみを目的として提供されており、ここに記

載される内容は予告なく変更されることがあります。本文書は、その内容に誤りがないことを保証するものではなく、また、口

頭による明示的保証や法律による黙示的保証を含め、商品性ないし特定目的適合性に関する黙示的保証および条件などのいかな

る保証および条件も提供するものではありません。オラクルは本文書に関するいかなる法的責任も明確に否認し、本文書によっ

て直接的または間接的に確立される契約義務はないものとします。本文書はオラクルの書面による許可を前もって得ることな

く、いかなる目的のためにも、電子または印刷を含むいかなる形式や手段によっても再作成または送信することはできません。

Oracle および Java は米国 Oracle Corporation およびその子会社、関連会社の登録商標です。その他の名称はそれぞれの会社の

商標です。

AMD、Opteron、AMD ロゴおよび AMD Opteron ロゴは、Advanced Micro Devices の商標または登録商標です。Intel および Intel

Xeon は Intel Corporation の商標または登録商標です。すべての SPARC 商標はライセンスに基づいて使用される SPARC

International, Inc.の商標または登録商標です。UNIX は X/Open Company, Ltd.によってライセンス提供された登録商標です。

0110