Hitachi

ノンストップデータベース HiRDB Version 10 構造型データベース機能


13.10.2 4V FMBのSDBデータベースのアンロードおよびデータロード(インナレプリカ機能を使用したオンライン再編成の場合)

例題

インナレプリカ機能を使用して,横分割されているSDBデータベースのオリジナルRDエリア側をアンロードします。そのあと,作成したアンロードデータファイルを入力データファイルにしてオリジナルRDエリア側にデータロードします。

これによって,データベースを再編成します。

ここでは,オリジナルRDエリアの再編成中はレプリカRDエリアでオンライン業務をする例を基に説明します。

〈この項の構成〉

(1) 構成および条件

SDBデータベースの構成

[図データ]

SDBデータベースの構造

[図データ]

条件
  • SDBデータベース種別は4V FMBです。

  • インナレプリカ機能を使用しています。

  • アンロードおよびデータロードの対象とするオリジナルRDエリアはRDAREA023に格納されているレコードと,RDエリアRDAREA027に格納されているインデクスです。

  • オリジナルRDエリアはRDAREA023とRDAREA027です。それに対応するレプリカRDエリアはRDAREA023_1とRDAREA027_1です。その世代番号は1です。

  • インデクスFMB2_IDX01が定義されています。

  • USERポインタフラグもアンロード対象にします。

(2) アンロードの実行例

pdsdbrogコマンドの実行例

 pdsdbrog /usr/control_rog_file

pdsdbrog制御文(/usr/control_rog_file)の例

 environment
   schema     = FMB2             ...1
   exectime   = 0                ...2
   recnomsg   = 1                ...3
   generation = 0                ...4
 unload
   record     = FMB2_RCA         ...5
   server     = BES2             ...6
   area       = RDAREA023        ...7
   unldfile   = /usr/unld_data   ...8
   unldinf    = /usr/unld_result ...9
   prefix     = 1                ...10
   unldkind   = lod              ...11
 dbinf
   userpflg   = (0)              ...12
[説明]
  1. SDBデータベース名を指定します。

  2. コマンドの実行時間の上限を指定します。0を指定した場合,上限は設定されません。

  3. アンロードが1万件完了するごとに経過メッセージを出力します。

  4. アンロード対象のオリジナルRDエリアの世代番号を指定します。

  5. ルートレコードのレコード型名を指定します。

  6. アンロード対象のRDエリアがあるバックエンドサーバを指定します。

  7. アンロード対象のRDエリアを指定します。オリジナルRDエリア名を指定してください。

  8. アンロードデータファイル名を指定します。

  9. 実行結果ファイル名を指定します。

  10. プリフィクス部の長さを指定します。

  11. データロードで使用できる入力データファイルの形式でアンロードデータファイルを出力します。

  12. USERポインタフラグの格納位置を指定します。

(3) データロードの実行例

pdsdblodコマンドの実行例

 pdsdblod /usr/control_lod_file

pdsdblod制御文(/usr/control_lod_file)の例

 environment
   schema     = FMB2             ...1
   logmode    = no               ...2
   purge      = yes              ...3
   exectime   = 0                ...4
   recnomsg   = 1                ...5
   divermsg   = put              ...6
   generation = 0                ...7
 load
   type       = tree             ...8
   record     = FMB2_RCA         ...9
   server     = BES2             ...10
   area       = RDAREA023        ...11
   data       = /usr/unld_data   ...12
   storinf    = /usr/load_result ...13
   errdata    = /usr/err_data    ...14
   prefix     = 1                ...15
   idxmode    = create           ...16
 dbinf
   userpflg   = (0)              ...17
 oreload
   midfile    = /usr/mid_file    ...18
[説明]
  1. SDBデータベース名を指定します。アンロード時に指定したSDBデータベース名を指定します。

  2. ログレスモードでデータロードを実行します。

  3. 既存レコードを削除してデータロードを実行します。必ずyesを指定してください。

  4. コマンドの実行時間の上限を指定します。0を指定した場合,上限は設定されません。

  5. データロードが1万件完了するごとに経過メッセージを出力します。

  6. ほかのRDエリアに格納するべきレコードは論理エラーとします。

  7. データロード対象のオリジナルRDエリアの世代番号を指定します。

  8. 4V FMBのSDBデータベースの場合はtreeを指定します。

  9. ルートレコードのレコード型名を指定します。アンロード時に指定したレコード型名を指定します。

  10. データロード対象のRDエリアがあるバックエンドサーバを指定します。アンロード時に指定したバックエンドサーバ名を指定します。

  11. データロード対象のRDエリアを指定します。アンロード時に指定したオリジナルRDエリア名を指定します。

  12. (2)で作成したアンロードデータファイルを入力データファイルとして指定します。

  13. 実行結果ファイル名を指定します。

  14. 論理エラー情報ファイル名を指定します。

  15. プリフィクス部の長さを指定します。

  16. インデクス一括作成モードでインデクスを作成します。

  17. USERポインタフラグの開始位置を指定します。アンロード時に指定した格納位置を指定します。

  18. 追い付き反映キー対応表の中間ファイル名を指定します。

(4) SDBデータベースの定義

*ENTRY DICTIONARY
  SCHEMA FMB2
    DBTYPE 4V FMB
    RECORD FMB2_RCA
      2 DBKEY
       3  KEYDATA1           XCHARACTER 1   TYPE  K,A
      2  USERDA0             CHARACTER 30   TYPE  U,D
    RECORD FMB2_RCB
      2  KEYDATA1            XCHARACTER 1   TYPE  K,A
      2  DBKEY               INTEGER        TYPE  K,N
      2  USERDB0             CHARACTER 20   TYPE  U,D
    SET SETAB
      OWNER FMB2_RCA
        ORDER LAST
      MEMBER FMB2_RCB
        INSERTION AUTOMATIC
        RETENTION FIXED
      SETOPTION
        OCCURRENCE NUMBER 2147483647
    SDBOPTION
      FUNCTION
        REFER     USE
        ADD       USE
        UPDATE    USE
        ERASE     USE
        ALLERASE  NOUSE
        DBLODUTL  USE
  END SCHEMA
*ENTRY DICTIONARY
  STORAGE SCHEMA FMB2 FOR FMB2
  DBTYPE 4V
  STORAGE RECORD FMB2_RCA
    SEQUENTIAL FMB2_IDX01 FOR RECORD
      ORDER KEY ASCENDING  KEYDATA1
      WITHIN ((RDAREA025),(RDAREA026),(RDAREA027),(RDAREA028))
    WITHIN ((RDAREA021) KEYDATA1=(X'F3'),
            (RDAREA022) KEYDATA1=(X'F4'),
            (RDAREA023) KEYDATA1=(X'F5'),
            (RDAREA024) KEYDATA1=(X'F6'))
  STORAGE RECORD FMB2_RCB
    CLUSTERED SETAB
      WITHIN ((RDAREA021),(RDAREA022),(RDAREA023),(RDAREA024))
  SET SETAB
    OWNER POINTER FOR FIRST LAST USER MEMBER
    MEMBER POINTER FOR NEXT PRIOR TENANT
  SDBOPTION
  END STORAGE SCHEMA
*ENTRY DIRECTORY
  DBSCHM FMB2