バージョン 8.1.3
 —  DBA タスク  —

ラージオブジェクト(LB)フィールドの基本

Adabas 8 にはラージオブジェクトフィールド(LB フィールド)があります。 これらは、通常の英数字フィールドの 253 バイトや、LA フィールドの 16,381 バイトよりも多くのデータを格納できるフィールドです。 ラージオブジェクトを含めるフィールドは新しい LB オプションで定義します。 LB フィールドの値の理論上の最大サイズは 2 GB をわずかに下回ります。実際に使用できるサイズはもう少し小さくなります。

Start of instruction setAdabas 8 で LB フィールドを使用するには、次の手順に従います。

  1. 1 つまたは複数のフィールドに LB オプションを割り当てて FDT を定義します。 ADACMP COMPRESS 機能を使用して LB フィールドを作成できます。 例としては、次のようなものがあります。

    ADACMP COMPRESS
    
    ADACMP FNDEF='1,AA,8,A,DE'			Key field
    
    ADACMP FNDEF=...
    
    ADACMP FNDEF='1,AZ,250,A,NU'		Data field
    
    ADACMP FNDEF='1,L1,0,A,LB,NV,NU,NB'		Binary LOB field
    
    

    ここではフィールド L1 をラージオブジェクトフィールドとして定義しています。 NV オプションと NB オプションは、このフィールドで文字の変換と末尾の空白の圧縮を行わないことを指定します。 NU オプションは、このフィールドの空値を省略することを指定します(NB オプションを指定するフィールドには、NU オプションまたは NC オプションのいずれかを定義する必要があります)。 フィールド値は、どのような場合でも変更されません。 LB フィールドオプションとその他すべてのフィールドオプション(NV と NB を含む)の詳細については、「フィールドオプション」を参照してください。

    ADACMP で圧縮する入力データを指定する場合、入力には短い LB フィールド値(253 バイトまで)または大きい LB フィールド値(253 バイトを超える)を含めることができます。 非圧縮の入力レコード内の LB フィールドに対応する箇所で(この例では L1)、LB データが後に続かない(LB 値は空なので)長さ X'00000004' を指定することで空の LB 値を指定できます。 COMPRESS の入力データの構造の詳細については、「入力データの必要条件」を参照してください。

    または:
    LB フィールドを定義する FNDEF を指定して ADADBS NEWFIELD 機能を使用することで既存の FDT を更新することもできます。 Adabas Online System にも同等の機能があります。この操作を行う場合、新しい基本ファイルを定義してロードする必要はありません。また次の手順を省略して手順 3 に進むことができます。

  2. ADALOD LOAD 機能を使用して、LB フィールドがある基本ファイル(空の可能性がある)をデータベースにロードします。 Adabas は、LB フィールド値を LOB ファイルと呼ばれる個別のファイルに格納します。このファイルは、基本ファイルと呼ばれる LB フィールドを含むファイルと密接に関連付けられます。

    次の手順で空の LOB ファイルを別個にロードしますが、LOB ファイルと基本ファイルはどちらを先にロードしても、また同時にロードしてもかまいません。 例としては、次のようなものがあります。

    ADALOD LOAD FILE=11,NAME='BASE-FILE'
    
    ADALOD      LOBFILE=12
    
    ADALOD      MAXISN=100000,DSSIZE=5000B
    
    ADALOD      ...
    
    ADALOD      SORTSIZE=100,TEMPSIZE=100
    
    

    LOBFILE パラメータで、この基本ファイルに対応する LOB ファイルのファイル番号を指定しています。 LOB に関連付けられた ADALOD パラメータの詳細については、「LOAD:ファイルのロード」を参照してください。

    注意:
    基本ファイルと LOB ファイルの組み合わせも、LB フィールド(基本ファイル)のあるファイルがすでに表示されている場合は、LOB ファイルをロードするだけで設定できます。

    ADACMP COMPRESS 手順の //DDAUSBA 出力データセットを、ADALOD LOAD 機能の //DDEBAND 入力データセットとして指定します。

  3. ADALOD LOAD 機能を使用して空の LOB ファイルをロードし、このファイルを前の手順でロードするか、手順 1 で更新した基本ファイルに関連付けます。 LOB ファイルと基本ファイルは任意の順序で、また同時にロードすることもできます。

    ADALOD LOAD FILE=12,LOB,NAME='LOB-FILE'
    
    ADALOD      BASEFILE=11
    
    ADALOD      MAXISN=500000,DSSIZE=500000B,NISIZE=4000B,UISIZE=40B
    
    ADALOD      ISNREUSE=YES,DSREUSE=YES,INDEXCOMPRESSION=YES
    
    ADALOD      ...
    
    ADALOD      SORTSIZE=100,TEMPSIZE=100
    
    

    LOB ファイルタイプは、ADALOD で、FDT が事前に定義された LOB ファイルをロードする必要があることを指定します。 空の LOB ファイルをロードする場合、//DDEBAND 入力データセットを指定する必要はありません。

    BASEFILE パラメータで、この LOB ファイルに対応する基本ファイルのファイル番号を指定します。 LOB に関連付けられた ADALOD パラメータの詳細については、「LOAD:ファイルのロード」を参照してください。

    注意:
    基本ファイルと LOB ファイルの組み合わせも、LB フィールド(基本ファイル)のあるファイルがすでに表示されている場合は、LOB ファイルをロードするだけで設定できます。

  4. ADAREP を使用してデータベースレポートを実行し、基本ファイルと LOB ファイルがどのように表示されるかを確認します。

  5. Adabas ニュークリアス(ADARUN)のパラメータ NISNHQ、NH、LP、LDEUQ、LWP、NAB、および LU を再評価して調整し、LB フィールドを処理するために十分なリソースをニュークリアスで使用できるようにします。 これらのパラメータの詳細については、「Adabas の初期化(ADARUN ステートメント)」を参照してください。 これらのパラメータの調整については、「旧バージョンの Adabas からの移行」を参照してください。

  6. LB フィールド値を含むデータを基本ファイルにロードするアプリケーションを作成または調整します。 バックグラウンドでは Adabas が LB フィールド値(非常に短いものを除く)を LOB ファイルに格納しますが、この処理はアプリケーションに対して透過的に行われます。 アプリケーションプログラムのコマンドは常に基本ファイルに対して発行され、LOB ファイルの存在を意識する必要はありません。

Top of page