4.7.1 プラガブル・データベースのシン・クローニング

Oracle Database内で、CREATE PLUGGABLE DATABASE SQLコマンドを使用すると、既存のプラガブル・データベース(PDB)の書込み可能なスナップショット・コピー(クローン)を作成できます。たとえば、次のコマンドでは、pdb1cという名前のpdb1のクローンを作成します。

SQL> CREATE PLUGGABLE DATABASE pdb1c
     FROM pdb1 SNAPSHOT COPY;

Oracle DatabaseでExascaleストレージを使用する場合、PDBスナップショット・コピー操作では、ネイティブのExascaleクローニング機能が自動的に使用され、基礎となるOracle Databaseファイルがシン・プロビジョニングされます。

シン・クローニングされたPDBデータ・ファイルは、基礎となるソースPDBデータ・ファイルと同じExascaleボールト内に存在し、Exascaleではリダイレクト・オンライト手法を使用してクローニングされたデータ・ファイルを作成および保守します。その結果、基礎となるデータ・ファイルのサイズに関係なく、クローニング操作は即時実行されます。また、クローンは非常に領域効率に優れています。クローニングされたデータ・ファイルは、最初は追加領域を消費せず、物理ストレージ領域は、新しいデータが書き込まれた際にのみ割り当てられます。

Oracle Database内では、クローニングされたファイルは通常のデータ・ファイルと同様に機能し、DBA_DATA_FILESなどの標準のOracle Databaseディクショナリ・ビューに表示されます。また、V$EXA_FILE Oracle Databaseディクショナリ・ビューで、様々なExascale固有のファイルの詳細を確認できます。

Exascale内では、ESCLI lssnapshotsコマンドを使用すると、クローニングされたデータ・ファイルとその基礎となるソース・ファイル間のアソシエーションを表示できます。

ノート:

シン・プロビジョニングされたPDBクローンをOracle Data Guardプライマリ・データベースに作成すると、対応するスタンバイPDBデータ・ファイルには、スタンバイ・データベースでExascaleストレージが使用されていても、データの完全な(シン・プロビジョニングされていない)コピーが含まれます。これを回避するために、CREATE PLUGGABLE DATABASE SQLコマンドにSTANDBYS=NONEを含めることで、PDBクローンがスタンバイ・データベースに伝播されることを防止できます。