REORG INDEX のシャドー・データ・セット

SHRLEVEL REFERENCE または SHRLEVEL CHANGE で REORG INDEX ユーティリティーを 実行する場合、ユーティリティーはシャドー・データ・セットを使用します。

ユーザー管理のデータ・セットの場合、SHRLEVEL REFERENCE または SHRLEVEL CHANGE を 用いて REORG INDEX を実行する前に、シャドー・データ・セットを事前割り振りしておく 必要があります。 インデックスまたはパーティショニングされたインデックスが管理データセットに存在し、 Db2 -管理データセットに存在し、REORG INDEXを実行した際にシャドウデータセットがまだ存在していない場合、 Db2 シャドウ・データセットが作成されます。 REORG処理の終了時に、 Db2 -管理対象のシャドウデータセットが削除されます。 管理対象データセットのシャドウは事前に作成することができます。 Db2 -管理されたデータセットに対して行うことができます。

シャドー・データ・セット名

各シャドー・データ・セットは、 次のような名前でなければなりません。

catname.DSNDBx.dbname.psname.y000z.Lnnn

上記の名前の変数の意味は次のとおりです。

変数
意味
catname
VSAM カタログ名あるいは別名
x
C または D
dbname
Database name
psname
表スペース名または索引名
y
I または J
Z
1 または 2
Lnnn
パーティション ID。 以下のいずれかの値を使用します。
  • A001 から A999 (パーティション 1 から 999)
  • B000 から B999 (パーティション 1000 から 1999)
  • C000 から C999 (パーティション 2000 から 2999)
  • D000 から D999 (パーティション 3000 から 3999)
  • E000 から E996 (パーティション 4000 から 4096)
汎用プログラミングインターフェース情報の開始。既存のデータ・セットの名前を判別するには、 SYSTABLEPART カタログ表または SYSINDEXPART カタログ表に対して、以下のいずれかの照会を実行します。
SELECT DBNAME, TSNAME, IPREFIX
   FROM SYSIBM.SYSTABLEPART
   WHERE DBNAME = 'dbname'
    AND TSNAME = 'psname';
SELECT DBNAME, IXNAME, IPREFIX
   FROM SYSIBM.SYSINDEXES X, SYSIBM.SYSINDEXPART Y
   WHERE X.NAME = Y.IXNAME
    AND X.CREATOR = Y.IXCREATOR
    AND X.DBNAME = 'dbname'
    AND X.INDEXSPACE = 'psname';
汎用プログラミングインターフェース情報の終了。

シャドー・データ・セットの定義

データ・セットを事前割り振りする際には、以下のアクションを考慮してください。

  • ユーザー管理データ・セットの規則に従って、シャドー・データ・セット を割り振ります。
  • シャドー・データ・セットを LINEAR として定義します。
  • SHAREOPTIONS(3,3) を使用してください。
  • 元の表スペースまたは索引スペースが EA 使用可能の場合は、シャドー・データ・セット を EA 使用可能として定義する。
  • 元の表スペースまたは索引スペースのストレージ・グループで定義されているボリューム に、シャドー・データ・セットを割り振ります。

2 次スペース量を指定しても、DB2 はそれを使用しません。 代わりに、DB2 は、 表スペースまたは索引スペースの SECQTY 値を使用します。

推奨: MODELオプションを使用すると、新しいシャドウデータセットが元のデータセットと同様に作成されます。 この方法を、次の例で示します。
DEFINE CLUSTER +
   (NAME('catname.DSNDBC.dbname.psname.x0001.L001') +
   MODEL('catname.DSNDBC.dbname.psname.y0001.L001')) +
   DATA                                               +
   (NAME('catname.DSNDBD.dbname.psname.x0001.L001') +
   MODEL('catname.DSNDBD.dbname.psname.y0001.L001') )

索引用シャドー・データ・セットの作成

Db2 事前に割り当てられたシャドウデータセットを管理されたデータセットとして扱います。 Db2 -管理されたデータセットとして扱います。

索引用にシャドー・データ・セットを 事前割り振りする場合は、データ・セットを次のように作成します。

  • 表スペースのパーティション、およびその対応するパーティション用 (各パーティションを分けている索引内のパーティション、およびデータに応じてパーティション化された副次索引内のパーティション) に、シャドー・データ・セットを作成します。
  • パーティション化されていない副次索引の論理パーティション用にシャドー・データ・セットを作成する。

これらの索引データ・セットには、基本索引に関連した他のデータ・セットで使用する ものと同じ命名方式を使用してください (例外として、I0001 の代わりに J0001 を使用)。

シャドー・データ・セットのサイズ見積もり

FREEPAGE または PCTFREE の 値を変更しない場合は、シャドー・データ・セットの 必要スペース量は、元のデータ・セットの必要スペース量とほぼ同じです。