REORDB 機能は、データベースに対するすべてのアソシエータおよびデータストレージをリオーダします。 指定のないファイルについては、既存の定義に従ってリオーダします。
REORDB 機能は、ADAM ファイルをリオーダしません。 しかし、これは、異なる RABN に ADAM ファイルの再配置に使用できます。
この機能は、オペレーション時に使用されるデータベースファイルに対して EXF 排他制御を必要とします。 また、ADAORD の実行中に、データベースは部分的に上書きされます。したがって、ADAORD 機能を実行する前にデータベース(またはファイル)を ADASAV ユーティリティでバックアップしておいてください。
この機能に指定されたファイルがもともと ISNREUSE=YES がアクティブな状態でロードされていた場合、このリオーダ機能は、そのファイルのファイルコントロールブロック(FCB)内の最初の未使用 ISN 値をアドレスコンバータ内で最初に検出された実際の未使用 ISN にリセットします。
次に、ADAORD REORDB 機能の構文を示します。
注意:
MAXFILES または NEWDBID パラメータを指定すると、アクティブなニュークリアスは REORDB
機能の完了後に自動的に終了します。
このドキュメントでは、次のトピックについて説明します。
ファイルのアドレスコンバータエクステントの開始 RABN です。 このパラメータ指定がなければ、ADAORD が開始 RABN を割り当てます。 要求されたスペースは、1 つのエクステントで使用できる必要があります。
アソシエータエクステントの開始 RABN を指定するときは、FCB、FDT および DSST に必要なスペースも考慮する必要があります。
ファイルのセカンダリアドレスコンバータエクステントの開始 RABN です。 セカンダリアドレスコンバータは、セカンダリスパンドレコードのセカンダリ ISN を、セカンダリレコードが格納されているデータストレージブロックの RABN にマッピングするために使用されます。
このパラメータ指定がなければ、ADAORD が開始 RABN を割り当てます。 要求されたスペースは、1 つのエクステントで使用できる必要があります。 ファイルにセカンダリアドレスコンバータエクステントが含まれていない場合、このパラメータは無視されます。
ALLOCATION は、配置パラメータ ACRABN、DSRABN、NIRABN または UIRABN に従ってファイルエクステント割り当てが得られない場合に取るべき動作を指定します。
デフォルト(すなわち ALLOCATION=FORCE)の場合は、RABN 配置パラメータに従ったファイルエクステント割り当てができないと、このユーティリティはエラーで終了します。
ALLOCATION=NOFORCE の場合は、配置パラメータによる割り当てができないと、配置パラメータなしで再度割り当てようとします。
新しいアソシエータブロックパディングファクタです。 指定値は、リオーダ処理時に使用しない各アソシエータブロックのパーセントを表します。 1 から 90 の値が指定できます。 パディング後に残っているバイト数は、最大ディスクリプタ値に 10 を加えたものより大きくなければなりません。
このパラメータ指定がなければ、現在ファイルに有効なアソシエータパディングファクタが使用されます。
注意:
ASSOVOLUME 値は単一引用符でくくらなければなりません。
ASSOVOLUME は、ファイルのアソシエータスペース(AC、NI、UI エクステント)を割り当てるボリュームを指定します。 要求スペースが指定ボリュームに存在しないと、ADAORD は、デフォルト割り当てルールに従って、他ボリュームの残りのブロックを割り当てます。
ACRABN、UIRABN、または NIRABN が指定されていると、ADAORD は、該当するエクステントタイプを割り当てるときに、ASSOVOLUME を無視します。
ASSOVOLUME を指定しないと、ファイルのアソシエータスペースは、ADAORD のデフォルト割り当てルールに従って割り当てられます。
DATAPFAC は、新データストレージパディングファクタを指定します。指定値は、リオーダ処理時レコード拡張のために確保される各データストレージブロックのパーセントを表します。 1 から 90 までの範囲の値が指定できます(パディングファクタの設定の詳細については ADALOD LOAD DATAPFAC パラメータに関する説明を参照してください)。 このパラメータ指定がなければ、ファイルに対して現在有効なパディングファクタが使用されます。
注意:
DATAVOLUME パラメータは単一引用符でくくらなければなりません。
ファイルのデータストレージスペースエクステントを割り当てるときに使用するボリューム番号を指定します。 DSSIZE で要求されたブロック数が指定ボリュームに存在しないと、ADAORD はデフォルト割り当てルールに従って、他ボリュームの残りのブロックを割り当てます。
DSRABN を指定した場合、関連ファイルに対する DATAVOLUME は無視されます。
DATAVOLUME が指定されない場合、データストレージスペースは、ADAORD のデフォルト割り当てルールに従って、割り当てられます。
DBINDEXCOMPRESSION は、ファイルのインデックスが圧縮形式または非圧縮形式で再構築されるかどうかを示します。 INDEXCOMPRESSION パラメータが未指定の全ファイルに適用されます。
DBINDEXCOMPRESSION は、圧縮インデックスまたは非圧縮インデックスの再構成をデータベース内の全ファイルに対して使用できるので、ファイルごとにインデックス圧縮を指定する必要がなくなります。
DSDEV は、そのファイルのデータストレージのデバイスタイプです。 指定デバイスタイプは、通常、そのデータベースの作成時か、あるいは ADADBS ユーティリティの ADD 機能によって、すでに Adabas に対して定義されているものでなければなりません。
DSDEV が指定されない場合、ADAORD はリオーダ前に使用されていたデバイスタイプでファイルを割り当てようとします。
ファイルのデータストレージエクステントの開始 RABN です。 このパラメータ指定がなければ、ADAORD が開始 RABN を割り当てます。
DSRELEASE を指定することで、指定ファイルに属する未使用のデータストレージ(DS)ブロックが解放されます。 DSRELEASE が指定されない場合には、少なくともそのファイルがリオーダされる以前に割り当てられた DS ブロック数が ADAORD によって割り当てられます。
注意:
Adabas
は、あらゆる変更されたパディングファクタまたはファイルがリオーダされる前のブロックサイズ値を用いてファイルのエクステントサイズを計算します。
DSSIZE は、ファイルのデータストレージ(DS)の論理エクステントに対して割り当てられるブロック数またはシリンダ数を指定します。 値をブロック単位で指定する場合、値の後に "B" を指定する必要があります("2000B" など)。
このパラメータが省略されると、そのファイルのエクステントサイズは DATAPFAC パディングファクタ内での全増減に比例して ADAORD によって計算されます。
後続のパラメータセットが適用されるファイルです。 指定された各ファイルは、ADAORD REORDB 機能ステートメントに続く別個の ADAORD ステートメントでそれぞれ指定する必要があり、ファイルに適用されるパラメータをその直後に指定する必要があります。
番号が指定されないファイルについては、現在のアソシエータブロックパディングファクタと MAXISN 値が保持され、アソシエータおよびデータストレージのスペース割り当てはすべて同じ状態で残ります。
INDEXCOMPRESSION は、ファイルが圧縮形式または非圧縮形式で再構成されるかどうかを示します。 通常、インデックスを圧縮すると、インデックススペースが少なくなり、Adabas ニュークリアスのインデックス操作の効率が向上します。
INDEXCOMPRESSION を指定せず、
DBINDEXCOMPRESSION パラメータがデータベース全体に対して指定された場合は、データベース値がデフォルトになります。
DBINDEXCOMPRESSION が指定されない場合は、ファイルの現在の圧縮形式がデフォルトになります。
ISNSIZE はファイル内の ISN 長が 3 バイトであるか 4 バイトであるかを指定します。 デフォルトはファイルに使用された現在の値です。この値はファイルコントロールブロック(FCB)内に格納されます。
注意:
物理的にカップリングされているファイルの ISNSIZE を ADAORD で変更することはできません。
LIP パラメータは、アドレスコンバータの再作成時のアソシエータの入出力処理の回数を減少させるために使用できます。 処理対象となる中で一番規模が大きいファイルの全 ISN を受け入れるだけの大きさを指定したときに最適のパフォーマンスとなります。
ISN と割り当てられたデータストレージ RABN を入れるための ISN プールサイズを指定します。 値はバイト単位で指定し、数値のみ("2048" など)を指定するか、あるいは数値の後に "K" を付けて("2K" など)キロバイト単位で指定します。 LIP のデフォルトは 16384 バイト(または 16K)です。
1 件の入力レコード長は、ISNSIZE + RABNSIZE です。 したがって、エントリ長は、最小 6 バイト(ファイルの ISNSIZE が 3 でデータベースの RABNSIZE が 3 の場合)、最大 8 バイト(ISNSIZE が 4 で RABNSIZE が 4 の場合)になります。
LPB は、内部プリフェッチバッファの大きさをバイト単位で指定するものです。 指定可能最大値は、32,760 バイトです。 デフォルトは、ADARUN LU パラメータの指定に依存します。 LU 値が小さすぎる場合には、LPB 値が指定値よりも小さくなることがあります。
MAXFILES パラメータは、データベースの中にロードできる最大ファイル数を指定します。 このパラメータの最小値は 3 です。 許可された最大値は 5000 または ASSOR1 ブロックサイズより 1 小さい値のうち、どちらか小さい方の値です。 例えば、2003 は、ASSOR1 が 3380 DASD 上に格納されたデータベースの最大 MAXFILES 値です。
このパラメータを省略すると、現在の MAXFILES 値が保持されます。
MAXFILES を指定すると、ニュークリアスは ADAORD REORDB 機能の完了後に終了します。
ファイルに対して割り当て可能な最大 ISN です。 この値は、ADAREP データベースレポートに出力される現在の TOPISN より大きい必要があります。
指定された値は、ADAORD によりアドレスコンバータスペース必要量の計算に使用されます。 このパラメータが省略されると、ファイルに対する現在の MAXISN 値が保持されます。
MAXISN は、ISN 内のセカンダリアドレスコンバータ(AC2)のサイズを指定します。 この値は、ADAREP データベースレポートに出力される現在の TOP AC2 ISN より大きい必要があります。 セカンダリアドレスコンバータは、セカンダリスパンドレコードのセカンダリ ISN を、セカンダリレコードが格納されているデータストレージブロックの RABN にマッピングするために使用されます。
ADAORD は、ファイルのセカンダリアドレスコンバータで必要なスペースを計算するために指定された値を使用します。 このパラメータが省略されると、ファイルに対する現在の MAXISN2 値が保持されます。 ファイルにセカンダリアドレスコンバータエクステントが含まれていない場合、このパラメータは無視されます。
ファイルの最大圧縮レコード長の制限を変更するには、MAXRECL パラメータを使用します。 MAXRECL を指定すると、次の 2 つの効果があります。
ファイルの DATA データセットは、指定された長さをサポートするデバイスに対してのみ割り当てられます。
指定された長さを超えるデータストレージレコードがファイル内に含まれている場合、ADAORD は異常終了し、ERROR-126 メッセージ(データストレージレコードが長すぎる)を出力します。
MAXRECL を指定しなければ、最大圧縮レコード長は変更されません。
NEWDBID はデータベースに割り当てる ID です。 1~65,535 の範囲の値を指定できます。 Adabas Online System Security を使用するシステムの場合、値 999 は予約済みです。 このパラメータを省略すると、現在のデータベース ID が保持されます。
NEWDBID を指定すると、ニュークリアスは ADAORD REORDB 機能の完了後に終了します。
NEWDBNAME は、データベースに割り当てる名前を指定します。 16 文字までで名前を割り当ることができます。 名前に特殊文字または埋め込み空白が含まれている場合は、'JAN''S DB' のように名前を単一引用符で囲む('...')必要があります。 このパラメータ指定がなければ、現在のデータベース名が保持されます。
NIRABN は、ファイルのノーマルインデックスエクステントの開始 RABN を指定します。 このパラメータ指定がなければ、ADAORD が開始 RABN を割り当てます。
NIRELEASE が指定されると、指定ファイルに属する未使用のノーマルインデックス(NI)ブロックが解放されます。 NIRELEASE が指定されない場合には、少なくともそのファイルがリオーダされる以前に割り当てられた NI ブロックが ADAORD により割り当てられます。
注意:
Adabas
は、あらゆる変更されたパディングファクタまたはファイルがリオーダされる前のブロックサイズ値を用いてファイルのエクステントサイズを計算します。
NISIZE は、ファイルのノーマルインデックスに対して割り当てるブロック数またはシリンダ数を指定します。 ブロック単位で指定する場合には、値の後に "B" を指定する必要があります("2000B" など)。
このパラメータが省略されると、そのファイルのエクステントサイズは ASSOPFAC パディングファクタ内での全増減に比例して ADAORD によって計算されます。
機能の実行中にエラーになると、ユーティリティは、エラーメッセージを出力してユーザーアベンド 34(ダンプあり)またはユーザーアベンド 35(ダンプなし)で終了します。
NOUSERABEND を指定すると、ユーティリティは、エラーメッセージを出力してもアベンドしません。 代りに、メッセージ "utility TERMINATED DUE TO ERROR CONDITION"(エラーのためユーティリティを終了します)を表示してコンディションコード 20 で終了します。
RAID は、ADAORD に、データベースに存在しないファイルを参照するあらゆる FILE パラメータを無視するように指示します。
RAID が指定されない場合(デフォルト)、ADAORD は、データベースに存在しないファイルを参照する FILE パラメータを検出すると、エラーメッセージを出力して終了します。
RAID パラメータは、Adabas Recovery Aid(ADARAI)で構築されたリカバリジョブで使用する場合に指定します。
SORTSEQ は、ファイルを処理する順番を指定します。 このパラメータを省略すると、レコードが物理順で処理されます。
ディスクリプタを指定すると、ファイルがディスクリプタ値の論理順で処理されます。 空値省略されたディスクリプタフィールド、ハイパーディスクリプタ、フォネティックディスクリプタ、マルチプルバリューフィールド、またはピリオディックグループ内のディスクリプタは指定してはなりません。
注意:
ディスクリプタフィールドまたは後続のフィールドが初期化されていない(値を持たない)場合は、空値省略されたディスクリプタフィールドでなくても、そのレコードはインバーテッドリストに含まれません。
したがって、そのレコードはユーティリティの実行時に除外されます。
ISN を指定すると、ファイルが ISN 昇順に処理されます。 また、Adabas チェックポイントまたはセキュリティファイルについては、SORTSEQ=ISN しか許可されません。
このパラメータは、実際に処理を行わずに構文をテストします。 指定したパラメータの構文だけがテストされ、値や変数の正当性はテストされません。
UIRABN は、ファイルに対するアソシエータのアッパーインデックスエクステントの開始 RABN を定義します。 このパラメータ指定がなければ、ADAORD が開始 RABN を割り当てます。
UIRELEASE は、ファイルに属する未使用のアッパーインデックス(UI)ブロックを解放します。 UIRELEASE が指定されない場合には、少なくともそのファイルがリオーダされる以前に割り当てられた UI ブロックが ADAORD により割り当てられます。
注意:
Adabas
は、あらゆる変更されたパディングファクタまたはファイルがリオーダされる前のブロックサイズ値を用いてファイルのエクステントサイズを計算します。
UISIZE は、アッパーインデックスに対して割り当てるブロック数またはシリンダ数を指定します。 ブロック単位で指定する場合には、値の後に "B" を指定する必要があります("2000B" など)。 UISIZE が省略されると、ASSOPFAC パディングファクタ内での全増減に比例して ADAORD によってスペースが割り当てられます。
ADAORD REORDB
アソシエータおよびデータストレージをリオーダします。 現在のデータベースパラメータへの変更はありません。
ADAORD REORDB ADAORD MAXFILES=200 ADAORD NEWDBID=6,NEWDBNAME=DATABASE-6
アソシエータおよびデータストレージをリオーダします。 データベースは最大 200 ファイルまで許容できます。 新しいデータベース ID および名前は各々 6 および DATABASE-6 です。 REORDB の実行中にニュークリアスがアクティブになっている場合は、実行後に停止されます(NEWDBID が指定されました)。
ADAORD REORDB ADAORD FILE=1,ACRABN=1000,NIRABN=2200,SORTSEQ=ISN ADAORD FILE=2,MAXISN=500000 ADAORD FILE=4,ASSOPFAC=5,DATAPFAC=20,DSSIZE=5,DSRABN=1
アソシエータおよびデータストレージをリオーダします。 ファイル 1 のアドレスコンバータの割り当ては RABN 1,000 から開始します。 ファイル 1 のノーマルインデックスの割り当ては RABN 2,200 から開始します。
ファイル 1 のデータストレージ部分を、ISN で昇順にリオーダします。 ファイル 2 の MAXISN は 500,000 にセットします。 ファイル 4 に対して次の指定を行います。アソシエータブロックパディングファクタを 5 %に変更し、データストレージブロックパディングファクタは 20 %にセットし、RABN1 から開始して 5 つのシリンダに新しい DSSIZE を 割り当てます。 既存の定義に従って、他のすべてのファイルをリオーダします。
ADAORD REORDB ADAORD FILE=66 ADAORD DSRELEASE ADAORD NIRELEASE ADAORD UIRELEASE ADAORD RAID
データベース全体をリオーダします。
ファイル 66 のデータストレージ、ノーマルインデックス、およびアッパーインデックスから未使用のストレージをすべて解放します。
ただし、ファイル 66 がデータベースに存在しない場合、ADAORD はエラーメッセージを出力して終了するのではなく、この状態を無視して処理を続行します。
ADAORD REORDB ADAORD DBINDEXCOMPRESSION=YES ADAORD FILE=1 ADAORD FILE=2,INDEXCOMPRESSION=NO ADAORD FILE=3
非圧縮形式のインデックスで再構築されているファイル 2 を除き、圧縮形式のインデックスを使用してすべてのファイルをリオーダおよび再構築します。