Hitachi

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


5.13.3 更新可能なオンライン再編成の準備作業

更新可能なオンライン再編成の準備作業の流れを次の表に示します。

表5‒6 更新可能なオンライン再編成の準備作業の流れ

項番

作業項目

実行するコマンド

実行するタイミング

1

RDエリアの物理配置の検討

最初に1回だけ実行

2

更新可能なオンライン再編成に関するオペランド(システム定義)の追加

3

関連RDエリアの確認

pdrdreflsコマンド

4

HiRDBファイルシステム領域の世代登録

pdmodコマンド

5

レプリカRDエリアの定義

6

次の表を格納するRDエリアの作成

  • 追い付き反映キー対応表

  • 追い付き状態管理表

7

追い付き反映キー対応表の作成または初期化

pdsdborcrtコマンド

更新可能なオンライン再編成の実行前に毎回実施

8

適用条件のチェック

pdorcheckコマンド

9

ペアボリュームの定義

最初に1回だけ実行

10

追い付き状態管理表の作成

pdorcreateコマンド

11

SDBディレクトリ情報の最終更新日時のチェック

pdsdbarc -aコマンド

更新可能なオンライン再編成の実行前に毎回実施

(凡例)

−:なし

更新可能なオンライン再編成の準備作業の手順を例題形式で説明します。なお,例題の説明は,インナレプリカ機能についての知識があることを前提にしています。

例題

SDBデータベースを更新可能なオンライン再編成するための準備作業を行います。SDBデータベースを格納しているRDエリアなどの構成は次のとおりです。

[図データ]

ポイント
  • 追い付き状態管理表はシステムで1つ必要です。

  • 追い付き反映キー対応表はBESごとに必要です。

〈この項の構成〉

(1) RDエリアの物理配置の検討

更新可能なオンライン再編成を実行するRDエリアのボリューム内の物理配置を検討してください。ポイントを次に示します。

また,次のRDエリアの物理配置も検討してください。

検討のポイントについては,「(6) 追い付き反映キー対応表,追い付き状態管理表を格納するRDエリアの作成(pdmodコマンド)」を参照してください。

(2) 更新可能なオンライン再編成に関するオペランド(システム定義)の追加

次のオペランドを追加してください。各オペランドの詳細については,マニュアル「HiRDB システム定義」を参照してください。

なお,システム定義を変更したあとに,pdconfchkコマンドでシステム定義のチェックを実施してください。

指定例

 set pd_max_reflect_process_count = 8
 set pd_log_org_reflected_logpoint = keep
 set pd_log_org_no_standby_file_opr = stop
 set pd_lv_mirror_use = Y

また,次のオペランドの指定値を見積もり直してください。

(3) 関連RDエリアの確認(pdrdreflsコマンド)

pdrdreflsコマンドで,更新可能なオンライン再編成の対象となる関連RDエリアを確認します。

pdrdreflsコマンドの-tオプションにレコード型名を指定すると,指定したレコード型の関連RDエリアが表示されます。pdrdreflsコマンドの-rオプションにRDエリア名をすると,指定したRDエリアの関連RDエリアが表示されます。

注意事項

更新可能なオンライン再編成を実行する場合,ここで確認した関連RDエリアを漏れなくカレントRDエリアの切り替え対象にする必要があります。すべての関連RDエリアのカレントRDエリアの変更を同じタイミングで実施しないと,オンライン業務のアクセスがエラーになります。

(4) HiRDBファイルシステム領域の世代登録(pdmodコマンド)

pdmodコマンドのcreate generation文で,HiRDBファイルシステム領域の世代登録を実行します。RDエリアおよびHiRDBファイルシステム領域の構成を次に示します。

RDエリア名

世代番号

HiRDBファイルシステム領域

RDエリアの種類

FMB01

0

/sdb/area

格納レコード用RDエリア

オリジナルRDエリア

FMBIDX

インデクス格納用RDエリア

FMB01_1

1

/sdb/area1

格納レコード用RDエリア

レプリカRDエリア

FMBIDX_1

インデクス格納用RDエリア

pdmodコマンドの実行例
 pdmod -a /usr/pdmod/crtgen

[オプションの説明]

-a:pdmodコマンドの制御文のパス名を指定します。制御文の内容を次に示します。

 create generation for HiRDB file system area "/sdb/area1"   ...1
 server name bes1                                            ...2
 generation number 1                                         ...3
 reproduce "/sdb/area";                                      ...4
  1. レプリカRDエリアのHiRDBファイルシステム領域名(/sdb/area1)を指定します。

  2. RDエリアがあるBES名を指定します。

  3. 1.のHiRDBファイルシステム領域の世代番号を指定します。

  4. オリジナルRDエリアのHiRDBファイルシステム領域名(/sdb/area)を指定します。

(5) レプリカRDエリアの定義(pdmodコマンド)

pdmodコマンドのreplicate rdarea文で,レプリカRDエリアの定義を実行します。「(3) 関連RDエリアの確認(pdrdreflsコマンド)」で確認したRDエリアのレプリカRDエリアを漏れなく定義してください。

この例では,レプリカRDエリアFMB01_1とFMBIDX_1を定義します。

pdmodコマンドの実行例
 pdmod -a /usr/pdmod/reparea

[オプションの説明]

-a:pdmodコマンドの制御文のパス名を指定します。制御文の内容を次に示します。

 replicate rdarea FMB01_1     ...1
    globalbuffer glbuf01      ...2
    reproduce FMB01           ...3
    generation number 1;      ...4
 replicate rdarea FMBIDX_1    ...1
    globalbuffer glbuf02      ...2
    reproduce FMBIDX          ...3
    generation number 1;      ...4
  1. レプリカRDエリア名(FMB01_1,FMBIDX_1)を指定します。

  2. レプリカRDエリアに割り当てるグローバルバッファを指定します。

  3. オリジナルRDエリア名(FMB01,FMBIDX)を指定します。

  4. レプリカRDエリアのHiRDBファイルシステム領域の世代番号を指定します。

なお,レプリカRDエリアに割り当てるグローバルバッファは,通常,オリジナルRDエリアと同じものを割り当てます。メモリ資源に余裕がある場合は,オリジナルRDエリアと同じ面数のグローバルバッファを用意して,競合しないようにすることを推奨します。レプリカRDエリアに別のグローバルバッファを割り当てるためには,HiRDBを正常終了する必要があります。

注意事項

HiRDBの次回開始以降は,ここで指定したグローバルバッファは割り当てられません。そのため,HiRDBの終了後,システム共通定義のpdbufferオペランドでグローバルバッファを割り当ててください。

(6) 追い付き反映キー対応表,追い付き状態管理表を格納するRDエリアの作成(pdmodコマンド)

pdfmkfsコマンドでHiRDBファイルシステム領域を作成したあとに,pdmodコマンドで次のRDエリアを作成します。

( )内は,HiRDBファイルシステム領域名です。

次の手順で作成します。

  1. HiRDBファイルシステム領域を作成する

     pdfmkfs -n 50 -l 10 -k DB -i /rdb/rmt
     pdfmkfs -n 50 -l 10 -k DB -i /rdb/crt

    [オプションの説明]

    -n:HiRDBファイルシステム領域の領域長をメガバイト単位で指定します。

    -l:HiRDBファイルシステム領域内に作成するHiRDBファイル数の上限値を指定します。

    -k:HiRDBファイルシステム領域の用途を指定します。

    -i:HiRDBファイルシステム領域の全領域を初期化する場合に指定します。

    /rdb/rmt:作成するHiRDBファイルシステム領域の名称を指定します。

    /rdb/crt:作成するHiRDBファイルシステム領域の名称を指定します。

    注意事項

    追い付き反映キー対応表,およびそのインデクスを格納するRDエリア用のHiRDBファイルシステム領域(この例では/rdb/crt)には,更新可能なオンライン再編成の対象RDエリアを配置することはできません。

  2. RDエリアを作成する

    pdmodコマンドによるRDエリアの作成方法については,マニュアル「HiRDB システム運用ガイド」の「RDエリアを作成する方法(RDエリアの追加)」を参照してください。

    注意事項
    • pdmodコマンドのcreate rdarea文のdata modelオペランドには,relationalを指定してください。

    • 追い付き反映処理を実行するBESごとに,追い付き反映キー対応表を格納するRDエリアを作成し,追い付き反映キー対応表を格納します。

    • 追い付き反映処理を実行するBESごとに,追い付き反映キー対応表のインデクスを格納するRDエリアを作成し,追い付き反映キー対応表のインデクスを格納します。

    • 追い付き反映処理を実行するBESごとに,追い付き状態管理表を格納するRDエリアを作成することを推奨します(必須ではありません)。

    • 追い付き反映キー対応表と追い付き状態管理表は,別々のRDエリアに格納することを推奨します。

    • RDエリアは公用RDエリアとして作成してください。

(7) 追い付き反映キー対応表の作成または初期化(pdsdborcrtコマンド)

pdsdborcrtコマンドで,追い付き反映キー対応表を作成します。

 pdsdborcrt -k crt -r RDCRT -i RDIDX
[オプションの説明]

-k crt:追い付き反映キー対応表を作成するときに指定するオプションです。

-r:追い付き反映キー対応表を格納するRDエリアを指定します。

-i:追い付き反映キー対応表のインデクスを格納するRDエリアを指定します。

注意事項
  • 更新可能なオンライン再編成の対象RDエリアが,複数のBESに存在する場合,BESごとにpdsdborcrtコマンドを実行し,各BESに追い付き反映キー対応表を作成してください。

  • 追い付き反映キー対応表,およびそのインデクスは,更新可能なオンライン再編成の対象RDエリアとは別のRDエリアに格納してください。

なお,追い付き反映キー対応表は一度作成しておけば,次回の更新可能なオンライン再編成時に再度作成する必要はありません。ただし,この場合,追い付き反映キー対応表をpdsdborcrtコマンドで初期化する必要があります。初期化していない場合,pdorcheckコマンドの実行時にエラーとなります。

初期化する場合のコマンドの実行例
 pdsdborcrt -k init -s bes1

[オプションの説明]

-k init:追い付き反映キー対応表を初期化するときに指定するオプションです。

-s:初期化対象の追い付き反映キー対応表があるBESを指定します。

(8) 適用条件のチェック(pdorcheckコマンド)

pdorcheckコマンドで,更新可能なオンライン再編成が実行できる条件を満たしているかどうかをチェックします。

 pdorcheck -r "FMB01","FMBIDX"
[オプションの説明]

-r:更新可能なオンライン再編成の対象RDエリア(オリジナルRDエリア)を指定します。「(3) 関連RDエリアの確認(pdrdreflsコマンド)」で確認したRDエリアを漏れなく指定してください。

注意事項

pdorcheckコマンドによるチェックは必ず実施してください。更新可能なオンライン再編成を適用できないRDエリアがあると,追い付き反映処理がエラーとなり,業務をオリジナルRDエリアに戻すことができなくなります(レプリカRDエリアで業務を続行することになります)。

(9) ペアボリュームの定義

更新可能なオンライン再編成の対象となるオリジナルRDエリアとレプリカRDエリアが,それぞれ定義されているボリューム(HiRDBファイルシステム領域)をペア化します。オリジナルRDエリアが定義されているボリューム(/sdb/area)への更新が,レプリカRDエリアが定義されているボリューム(/sdb/area1)に反映される状態にします。

操作方法については,使用しているミラーリング機能のマニュアルを参照してください。日立ディスクアレイサブシステムを使用している場合は,最初にマニュアル「インナレプリカ機能 HiRDB Staticizer Option」の「日立ディスクアレイサブシステム使用時の注意事項および操作手順」を参照してください。

(10) 追い付き状態管理表の作成(pdorcreateコマンド)

pdorcreateコマンドで,追い付き状態管理表を作成します。

 pdorcreate -o RDRMT
[オプションの説明]

-o:「(6) 追い付き反映キー対応表,追い付き状態管理表を格納するRDエリアの作成(pdmodコマンド)」で作成した追い付き状態管理表を格納するRDエリアを指定します。

注意事項

追い付き状態管理表は,更新可能なオンライン再編成の対象RDエリアとは別のRDエリアに格納してください。更新可能なオンライン再編成の対象RDエリアに,追い付き状態管理表を格納すると,追い付き反映処理が正常に実行できません。

追い付き反映処理を実行するためには,追い付き反映処理を管理するための表(追い付き状態管理表)を作成する必要があります。

(11) SDBディレクトリ情報の最終更新日時のチェック(pdsdbarc -aコマンド)

pdsdbarc -aコマンドで,常用常駐領域中のSDBディレクトリ情報の最終更新日時をチェックします。

 pdsdbarc -a
注意事項

pdsdbarc -aコマンドによるチェックは必ず実施してください。SDBディレクトリ情報の最終更新日時が不整合な状態で更新可能なオンライン再編成を実行すると,データベースの不整合が発生するおそれがあります。