NetApp Tech OnTap
Oracle 11g Release 2への安全な移行
~スムーズ/容易なアップグレード~

Oracle® Database 11g Release 2がリリースされました。待望の最新版の登場に伴い、11gの最初のリリースでアップグレードを見合わせていたOracleユーザは、堰を切ったようにアップグレードを始めることでしょう。

重要なデータベースをアップグレードするときは、新しいプラットフォームでの既存のアプリケーションのテストや、スムーズな移行が大きな課題になります。この記事では、NetApp®テクノロジによるクローニングやデータ・マスキングをOracle Real Application Testingと組み合わせて利用し、Oracle 11gで既存アプリケーションの動作を確認するための方法を説明します。また、業務システムのアップグレード・プロセスをできるだけスムーズかつ容易に行うための手順も紹介します。

アプリケーション・テスト・フローの簡易化

アプリケーションのテストは、新しいデータベース・リリース時に限らず、どんな場合にも複雑で時間とコストのかかるプロセスです。

  • アプリケーションが正常に動作するかどうかを確認するため、業務データを使用してテストを実行する必要があります。テストの進行を妨げないようにするには、業務データのコピーを多数用意しなければならない場合があります。従来のコピー方式を使用すると、通常はスペースの制約によって、必要十分なデータベース・コピーを作成することができません。
  • 業務データベースに含まれる実際のデータを使用するので、氏名、住所、アカウント情報、クレジットカード情報などの機密データを保護する必要が生じる場合もあります。
  • テスト用のデータベースを使ってアプリケーションを実際にテストできるテスト方式が必要です。

NetAppとOracleの次の機能を組み合わせて使用することで、Oracle 11gでのアプリケーション・テスト・プロセスを効率化できます。

  • NetApp FlexClone®テクノロジ:データ・セットのフル・コピーを個々に作成せずに、必要な数だけ「クローン」を作成できます。FlexCloneコピーは、変更を加えられた場合にのみストレージ容量を消費します。
  • Oracle Data Masking Pack:一貫性のあるルールベースのマスキング形式を適用することで、法令に対するコンプライアンスを実現します。拡張性のある充実したフォーマット・ライブラリによって、さまざまなマスク形式に対応できます。
  • NetApp SnapManager® for Oracleクローニング、データ・マスキングなどのプロセスを自動化し、オペレータによるエラーの可能性を減らして最高の効率性を達成します。
  • Oracle Real Application Testing:Oracle Database 11gで導入されたこの機能をNetAppテクノロジと組み合わせて使用すると、アプリケーションを短時間でテストし、機能とパフォーマンスに問題がないかどうかを確認できます。

これらのテクノロジを使用するテスト・プロセスの流れを、次の図に示します。

図1)NetAppとOracleテクノロジの組み合わせによるテスト環境の作成とテストのプロセス・フロー

図1)NetAppとOracleテクノロジの組み合わせによるテスト環境の作成とテストのプロセス・フロー

SnapManager for Oracleによる11gテストの準備

NetApp SnapManager for Oracle(SMO)を使用すると、Oracle 11gテスト環境の作成に必要なプロセスの大部分を簡単に実行できます。ここでは、(SMOを使用するかどうかを問わず)生産性の高いテスト環境を作成するための手順を説明します。

初期データベース・コピーの作成

ほとんどの場合、継続中の業務運用に支障をきたさないようにするために、Oracle 11gテストの開始時点には、業務データベースのフル・コピーが必要になります。Oracle 10g業務データベースがサードパーティ製ストレージに存在する場合、後述の手順を利用する際には、(一貫性を確保するために)データベースをホット・バックアップ・モードにして、NetAppストレージにコピーする必要があります。

データベースがNetAppストレージに存在する場合には、業務データベースを直接クローニングできますが、それでもほとんどの方がフル・コピーでの作業を選択されます。SMOとNetApp SnapMirror®ソフトウェアを使用すれば、業務データベースを(ローカルまたはセカンダリ・サイトの)セカンダリ・ストレージに複製できます。

SMOでは、NetApp Protection Managerとの統合を通じて、業務データをセカンダリ・サイトとの間で定期的に同期化するための複製スケジュールの作成が可能です。このセカンダリ・コピーは、ディザスタ・リカバリ(災害復旧)とテストの両方に使用できます。効率的な帯域利用によってネットワークへの影響を抑え、低コストのセカンダリ・ストレージへのミラーリングによってコストを削減することができます。

SMOは、Snapshot™コピーの作成前にデータベースをホット・バックアップ・モードとし、その後で複製を行います。このSnapshotコピーは、わずか数秒で作成されるので、ホット・バックアップ・モードにする時間を最小限に抑えられます。

Oracle Real Application Testingを使用する場合は、おそらく、データベース・コピーの作成とReal Application Testingのキャプチャ・プロセスを統合する必要が出てくるでしょう。これについてはReal Application Testingの項で後述します。

マスキング済みマスター・コピーの作成

業務データベースのコピーを作成した後、SMOを使用して、完全にデータ・マスキングを行った、11gにアップグレード済みのマスター・クローンを作成できます。このマスター・クローンが、それ以後のすべてのクローンのオリジナル・コピーとなります。データ・マスキングとソフトウェア・アップグレードを1回実行するだけで、以後のすべてのクローンは問題なくテストに使用できる状態になります。

ある時点におけるデータベースの状態を写した、一貫性あるコピーをキャプチャするために、初期FlexCloneコピーを作成します。次に、このクローンに対してデータ・マスキングを実行し、マスキング・プロセスが成功したかどうかを確認します。SMOには、スクリプトを使用してクローンの後処理を実行する機能が含まれています。この機能により、完全なデータ・マスキングやクローン後の変更処理を含めて、クローンの作成処理を自動化することができます。

データ・マスキングを施されたクローンは、次にOracle 11gにアップグレードされます。このクローンが「マスター・クローン」としての役割を果たします。SMOによるクローニングとマスキングのプロセスについては、最新のデモでさらに詳しく説明しています。データ・マスキングについては、最新のNetAppテクニカル・レポートでも、詳しく紹介しています。

その後、FlexCloneを使用して、マスターからクローンを必要なだけ何個でも作成できます。クローンはすべて適切にマスキングされ、コンプライアンスとスペース効率が保証されます。業務データベースを複製し、マスキング済みのマスター・クローンを作成し、マスターを何回もクローニングするという一連のプロセスが、すべてSMOで実行できます。したがって、デスクトップから何回かマウスをクリックし、簡単なコマンドを使用するだけで、すべての操作を実行可能です。

図2)マスキング済みのマスター・クローンをOracle 11gにアップグレードしたものをオリジナル・コピーとして使用し、テストに必要な数のクローンを作成できます。時間的にもスペース的にも無駄の多いフル・データベース・コピーを実行する必要はありません。

図2)マスキング済みのマスター・クローンをOracle 11gにアップグレードしたものをオリジナル・コピーとして使用し、テストに必要な数のクローンを作成できます。
時間的にもスペース的にも無駄の多いフル・データベース・コピーを実行する必要はありません。

Real Application Testing

Oracle Database 11gでは、アップグレードやアプリケーションの変更などに伴うリスクを回避するために、Real Application Testing(RAT)が提供されています。作業負荷をキャプチャして再生する機能とSQLパフォーマンス・アナライザを組み合わせたRATを使用すると、実際と同じ作業負荷を再現して変更のテストや微調整を行ったうえで、変更を業務に導入することができます。

アプリケーション・スタック全体を操作し、複雑なインフラを必要とする他のテスト方式とは異なり、RATは、トランザクションとタイミングを単純にキャプチャして再生します。テストを実施するためのクライアントやミドル層は必要ありません。データベースを操作する方法は、通常よりはるかに簡単です。

RATは複雑なインフラを必要としないため、DRサイトなどのセカンダリ・サイトのリソースをテスト目的で簡単に利用できます。再現したい作業負荷を業務環境でキャプチャし、DRサイトにあるテスト・データ・セットに、その作業負荷を再生します。

ここで課題となるのが、作業負荷を実行する対象のポイントインタイムSnapshotコピーの作成です。このデータ・セットは、キャプチャが開始された時点の業務データ・セットと完全に一致している必要があるからです。

この場合も、NetAppテクノロジでRATを補完し、他の方法では大量のストレージを必要とする複雑なタスクを簡単に実行することができます。プライマリ・データベースがNetAppストレージに保存されている場合、RATのキャプチャ・プロセスを前述のプロセスと簡単に統合して、マスキング済みのマスター・クローンを作成できます:

  1. 業務データ・セットの初期Snapshotコピーを作成します。
  2. RATのキャプチャ・プロセスを実行します。
  3. NetApp SnapMirrorまたはSyncMirror®を使用して、初期SnapshotコピーをDRサイトに複製します。
  4. 前項で説明したプロセスを使用して、複製したコピーのマスキング済みマスター・コピーを作成します。
  5. RATまたは他のテスト・プロセスで必要な数だけ、FlexCloneコピーを作成します。

Oracle 11gへの業務データベースのアップグレード

前項で説明した手順を使用すると、テスト・プロセスが大幅に改善され、アップグレードによってアプリケーションに問題が生じないかどうか、きわめて簡単に確認することができます。NetApp Snapshotを使用することで、業務データベースのポイントインタイム・イメージを作成してから11gアップグレードを適用することが可能になり、さらに安全になります。
問題が発生した場合には、NetApp SnapRestore®を使用して、わずか数秒で保存された状態に戻し、問題を特定して解決するまで、業務環境を引き続きOracle Database 10gで運用することができます。テープまたはディスクベース・バックアップからデータベースをリストアするという従来の方法は、このプロセスに比べて明らかに時間がかかり過ぎます。

まとめ

適切なテストを実行するのは難しく、リスクがあるという理由で、データベースのメジャー・アップグレードまたはマイナー・アップグレードを躊躇しているのであれば、この記事で説明した手順が役立つものと思われます。NetAppとOracleのツールを組み合わせると、従来よりもはるかに短い時間、はるかに少ないストレージ容量で、機密データを完全に保護した、より生産的なテスト環境を作成することができます。データベース・コピーを必要なだけ何個でも作成できるので、開発者とテスターがテスト用のリソースが準備できるまで待つという、作業上のボトルネックが生じることはありません。

Oracle RATでのキャプチャと、NetAppストレージによるテスト環境の構成を併用することにより、アプリケーション・スタック全体や複雑なインフラを用意しなくても、実務環境作業負荷をテスト・データベースに再現することが可能になります。その結果、トランザクションに問題がないかどうか、パフォーマンスが要求水準に達しているかどうかを確認するプロセスが、大幅に簡素化されます。

日本オラクルの検証施設「Oracle GRID Center」での共同検証

ネットアップでは、日本オラクルの検証施設 Oracle GRID Centerのエンジニアの皆様と共に、Oracle Real Application Testing(通称 RAT)とSnapManager for Oracleを組み合わせた本格的なアップグレード検証を実施しました。RATは、本番環境でのワークロードを取得し(キャプチャ操作)、その同じワークロードを、テスト環境で再現するものです(リプレイ)。

SnapManager for Oracle のクローン機能により、瞬間的に作成されたテスト環境に、本番と同じワークロードをリプレイすることで、やはり簡単かつ高速にテストが出来るという連携ソリューションです。

共同検証に関する資料は、Oracle GRID Centerのウェブサイトで完全版をダウンロード できます。ぜひ、ご覧ください。


Peter SchayPeter Schay
データベース・ソリューション・アーキテクト、NetApp

Peterは2007年にNetAppに入社し、ソリューション・アーキテクトとして、OracleとNetAppをご使用のお客様のデータベース導入を支援しています。NetApp入社以前はOracleに在籍し、CrayへのOracleの移植、Oracle Linux®戦略の推進、Oracle 11gの中心的な機能であるダイレクトNFSのプロトタイプ開発に携わりました。

Kannan ManiKannan Mani
Oracleリファレンス・アーキテクト、NetApp

Kannanは2008年からNetAppに在籍し、NetApp上でのOracle導入を簡易化するリファレンス・アーキテクチャの作成に携わっています。NetAppに入社する以前はOracle Partner SolutionsとUnisysに在籍し、Oracle Center of ExcellenceのためのOracleソリューションの設計に携わりました。

Kannanは10年以上にわたって直接Oracleに関わる業務に従事しており、世界各地で行われるOracleとNetAppの合同セミナーでも講師として活躍しています。


関連情報