4.6.8 抽出側Datareplicatorのリソースの設計

抽出側Datareplicatorのディスク資源とメモリ資源の設計方法について説明します。

<この項の構成>
(1) 抽出側Datareplicatorのディスク資源の設計
(2) 抽出側Datareplicatorのメモリ資源の設計

(1) 抽出側Datareplicatorのディスク資源の設計

抽出側Datareplicatorのディスク資源の一覧を次の表に示します。

表4-36 抽出側Datareplicatorのディスク資源の一覧

ファイル名ファイル種別必要・任意[個数]容量の
説明先
ファイル満杯時の動作
RC
定義ファイル抽出システム定義ファイル×必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
(a)特にありません。
抽出環境定義ファイル×必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
送信環境定義ファイル×必要
[送信先識別子ごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに送信先識別子ごとに1個)]
抽出定義ファイル×必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
二重化定義ファイル×任意
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
抽出定義プリプロセスファイル2必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
(b)特にありません。
抽出情報キューファイル132必要
[抽出側システムごとに2~16個(抽出側HiRDBがパラレルサーバの場合には,BESごとに2~16個)]
(c)スワップします。1
ステータスファイル3抽出マスタステータスファイル2必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,MGRに1個)]
(d)特にありません。
抽出サーバステータスファイル12必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,BESごとに1個)]
エラー情報ファイル抽出マスタエラー情報ファイル×必要
[抽出側システムごとに2個(抽出側HiRDBがパラレルサーバの場合には,MGRに2個)]
(e)スワップします。
抽出ノードマスタエラー情報ファイル×必要
[抽出側システムごと2個(抽出側HiRDBがパラレルサーバの場合には,BESが存在するサーバマシンごとに2個)]
稼働トレースファイル抽出マスタトレースファイル×任意
[抽出側システムごとに2個]
(f)スワップします。
抽出ノードマスタトレースファイル×任意
[抽出側システムごとに2個(抽出側HiRDBがパラレルサーバの場合には,BESごとに2個)]
データ連動用連絡ファイル32必要
[抽出側システムごとに1個(抽出側HiRDBがパラレルサーバの場合には,BESごとに1個)]
(g)特にありません。
コマンドログファイル×任意
[抽出側システムごとに2個]
(h)スワップします。
(凡例)
BES:バックエンドサーバ(抽出対象のDBがないバックエンドサーバも含む)
R:UNIXの通常ファイル又はWindowsファイル
C:UNIXのキャラクタ型スペシャルファイル
○:作成できます。
×:作成できません。
注※1
スワップ先のファイルの送信が完了していない場合には,次の送信間隔まで待ちます。次の送信間隔時に送信が完了していれば,更新情報の抽出を開始します。送信間隔については,「4.6.4 送信方法の設計」を参照してください。
注※2
AIX版でキャラクタ型スペシャルファイルを使用する場合は,各ファイル容量の算出式に1,024バイト加算してください。また,抽出環境定義のqueuesizeオペランドには,算出した容量から1,024バイト減算した値を指定してください。
注※3
Datareplicatorファイルシステム領域を使用する場合は,「3.5.3(1) Datareplicatorファイルシステム領域を割り当てるときの規則」も参照してください。
(a) 定義ファイルの容量

抽出側Datareplicatorの定義ファイル(抽出システム定義ファイル,抽出環境定義ファイル,送信環境定義ファイル,抽出定義ファイル)の容量は,指定した定義オペランドの内容によって異なります。

(b) 抽出定義プリプロセスファイルの容量

抽出定義プリプロセスファイルには,抽出定義で定義した情報が内部形式に変換された情報が格納されます。

抽出定義プリプロセスファイルの容量の見積もり式を次に示します。

 

上記の算出式で使っている変数の意味を次に示します。

(c) 抽出情報キューファイルの容量

抽出情報キューファイルには,抽出した更新情報が蓄積されます。このため,抽出情報キューファイルの容量は,抽出する更新情報の量より多くする必要があります。

抽出情報キューファイルの容量の見積もり式(更新情報の算出式)を次に示します。ファイルの種別がOSの通常ファイルの場合でも,キャラクタ型スペシャルファイルの場合でも,抽出情報キューファイルの容量の見積もり式は同じです。

 

上記の算出式で使っている変数の意味を次に示します。

(d) ステータスファイルの容量

抽出側Datareplicatorのステータスファイル(抽出マスタステータスファイル,抽出サーバステータスファイル)の容量の算出式を次に示します。

ステータスファイルには,抽出側Datareplicatorの初期化時に必要なサイズが割り当てられます。実際のレプリケーション運用中にファイル容量が増加し満杯となることはありません。

 

(e) エラー情報ファイルの容量

抽出側Datareplicatorのエラー情報ファイル(抽出マスタエラー情報ファイル,抽出ノードマスタエラー情報ファイル)の容量の既定値は16キロバイトです。長時間のエラー情報を残したいときには,抽出システム定義を変更してファイルの容量を拡張してください。

(f) 稼働トレースファイルの容量

稼働トレースファイル(抽出マスタトレースファイル,抽出ノードマスタトレースファイル)の容量は,抽出システム定義のint_trc_fileszオペランドで指定します。

(g) データ連動用連絡ファイルの容量

データ連動用連絡ファイルの容量の算出式を次に示します。抽出側HiRDBがパラレルサーバの場合には,バックエンドサーバごとにデータ連動用連絡ファイルの容量を見積もります。

(h) コマンドログファイルの容量

128キロバイト固定です。

(i) その他のファイル容量

Windows版では,インストールディレクトリ下のtmpディレクトリ下に,ワークファイルを幾つか作成します。このため,ワークファイル分として4MBの容量を見積もってください。

(2) 抽出側Datareplicatorのメモリ資源の設計

抽出側Datareplicatorのメモリ資源の一覧を次の表に示します。

表4-38 抽出側Datareplicatorのメモリ資源の一覧

メモリ資源容量の説明先
抽出マスタプロセス(a)
抽出ノードマスタプロセス(b)
抽出プロセス(c)
送信プロセス(d)
送信マスタプロセス(e)
稼働トレース収集プロセス(f)
抽出処理監視プロセス(g)
Datareplicatorエージェントプロセス(h)
コマンド連絡用共用メモリサイズ(i)
ステータス情報連絡用共用メモリサイズ(j)
プロセス間連絡用共用メモリサイズ(k)
抽出定義格納用共用メモリサイズ(l)
メッセージ格納用共用メモリサイズ(m)
トランザクション管理情報格納用共用メモリサイズ(n)
セマフォ所要数(o)
メッセージキュー所要数(p)
更新情報編集バッファサイズ(q)

表4-39 抽出側Datareplicatorのメモリ見積もり式に使用する変数の一覧

変数名変数の内容
ATTR_NUMデータ連動の対象となる全抽象データ型の属性数の総和
COL_LEN抽出対象表の抽出対象列の合計長のうち,最大長。
ただし,以下に示す列の場合,以下の長さを適用し,合計長を算出する。
  • 繰返し列:1要素分の定義長
  • BLOB/BINARY列:
    35000バイト以下の場合:列定義長
    35000バイト超の場合 :35000バイト
  • ADTの場合:0
COL_NUM全抽出対象表の列数の合計数
COM_FILEデータ連動用連絡ファイルサイズ(バイト)
DATA_NUM送信間隔中に検知する最大更新情報件数。
バッチなど,処理時間が送信間隔より長いトランザクションが存在する場合,トランザクションが決着されるまで更新情報件数として蓄積する。
EMST_FILE抽出マスタステータスファイルサイズ(バイト)
EST_FILE抽出サーバステータスファイルサイズ(バイト)
EXT_FILE抽出環境定義ファイルサイズ(バイト)
LOB_MAX抽出対象のBLOB属性の列のうち,最大更新データ長(バイト)
(列定義長ではなく実データ長)
LOGIOSIZE抽出環境定義logiosize指定値
(注意 (KB)のまま指定する)
MSV_NUM
<抽出元がHiRDBの場合>
抽出対象の各ノード内のバックエンドサーバ数のうち,最大数
<抽出元がHiRDB以外の場合>
ND_NUM抽出対象の全ノード数
NSV_NUM該当ノード内のサーバ数
PRP_FILE抽出定義プリプロセスファイルサイズ(バイト)
QUE_NUM抽出環境定義qufileXXXの指定数
QUIOSIZE抽出環境定義quiosizeの指定値
(注意 (KB)のまま指定する)
RBUF_NUM送信環境定義readbufnumの指定値
RDAMAX_ALL連動対象表を格納しているRDエリアの最大ページ長(バイト)
RDAMAX_BINBINARYを格納しているRDエリアの最大ページ長(バイト)
RDAMAX_LOBLOBを格納しているRDエリアの最大ページ長(バイト)
RDAMAX_REP繰返し列を含む表を格納しているRDエリアの最大ページ長(バイト)
RDAMAX_VCHRvarchar型,もしくはnvarchar型,もしくはmvarchar型を含む表を格納しているRDエリアの最大ページ長(バイト)
SCH_NUM抽出対象の認可識別子の合計数
SND_FILE送信環境定義ファイルサイズ(バイト)
SND_NUM抽出システム定義sendidxxの指定数
SV_NUM
<抽出元がHiRDBの場合>
抽出対象の全バックエンドサーバ数
<抽出元がHiRDB以外の場合>
SYS_FILE抽出システム定義ファイルサイズ(バイト)
TBL_NUM抽出対象表の合計数
TRN_NUM送信間隔中に検知する最大トランザクション数。
バッチなど,処理時間が送信間隔より長いトランザクションが存在する場合,トランザクションが決着されるまでトランザクション数として蓄積する。
TYPE_NUM全抽出対象表の抽象データ型の合計数
UBUF 
<抽出側DBがHiRDBの場合>
  • 抽出システム定義sendcontrolにnodemstを指定した場合
    送信環境定義editbufsize指定値
  • 抽出システム定義sendcontrolにsendmstを指定した場合
    抽出システム定義smt_editbufsize指定値
<抽出側がXDM/DSの場合>
XDM/DS起動定義REFLECTBUFF指定値。
詳細は,マニュアル「VOS3 XDMデータ連動機能 XDM/DS 解説・定義」を参照してください。
(注意 (KB)のまま指定する)
UINF_NUM抽出システム定義extinfonumの指定値
(a) 抽出マスタプロセス
(b) 抽出ノードマスタプロセス
(c) 抽出プロセス
(d) 送信プロセス
●抽出システム定義のsendcontrolオペランドにnodemstを指定した場合
●抽出システム定義のsendcontrolオペランドにsendmstを指定した場合
(e) 送信マスタプロセス
(f) 稼働トレース収集プロセス
(g) 抽出処理監視プロセス
(h) Datareplicatorエージェントプロセス
注※
抽出システム又は反映側システムのどちらか一方で加算します。
(i) コマンド連絡用共用メモリサイズの見積もり方法

コマンド連絡用共用メモリサイズの見積もり式を次に示します。コマンド連絡用共用メモリは,抽出マスタプロセスが稼働するサーバマシン上で使います。

     コマンド連絡用共用メモリサイズ = 1360(単位:バイト)
(j) ステータス情報連絡用共用メモリサイズの見積もり方法

ステータス情報連絡用共用メモリサイズの見積もり式を次に示します。ステータス情報連絡用共用メモリは,抽出マスタプロセスが稼働するサーバマシン上で使います。

     1360+36+64+ND_NUM+60+SV_NUM+164×SV_NUM×SND_NUM
      +8×ΣSND(NSND_NUM)×SV_NUM
      +(ND_NUM+SV_NUM+SV_NUM×SND_NUM)×4(単位:バイト)

ΣSND:全送信先の送付

ND_NUM :全ノード数

SV_NUM :全サーバ数

SND_NUM :全送信先数

NSND_NUM:送信先当たりの送信抑止受信元識別子数

(k) プロセス間連絡用共用メモリサイズの見積もり方法

プロセス間連絡用共用メモリサイズの見積もり式を次に示します。プロセス間連絡用共用メモリは,抽出ノードマスタプロセスが稼働するサーバマシン上で使います。

     1048+(2969+4×SND_NUM+16×UINF_NUM)×NSV_NUM
      +1600×NSV_NUM+SND_NUM(単位:バイト)

SND_NUM :全送信先数

NSV_NUM :該当ノード内サーバ数

UINF_NUM:抽出システム定義のextinfonumオペランドの設定値

(l) 抽出定義格納用共用メモリサイズの見積もり方法

抽出定義格納用共用メモリサイズの見積もり式を次に示します。抽出定義格納用共用メモリは,抽出ノードマスタプロセスが稼働するサーバマシン上で使います。

     164+(40+SV_INFO)×SV_NUM(単位:バイト)

 

(m) メッセージ格納用共用メモリサイズの見積もり方法

メッセージ格納用共用メモリサイズの見積もり式を次に示します。メッセージ格納用共用メモリは,抽出ノードマスタプロセスが稼働するサーバマシン上で使います。

     メッセージ格納用共用メモリサイズ = 79200(単位:バイト)
(n) トランザクション管理情報格納用共用メモリサイズの見積もり方法

トランザクション管理情報格納用共用メモリサイズの見積もり式を次に示します。トランザクション管理情報格納用共用メモリは,抽出ノードマスタプロセスが稼働するサーバマシン上で使います。この共用メモリは,抽出システム定義のsendcontrolオペランドの指定がsendmstの場合にだけ必要になります。

     1048576​×NSV_NUM(単位:バイト)

NSV_NUM:該当ノード内サーバ数

(o) セマフォ所要数の見積もり方法

抽出側Datareplicatorが使うセマフォ数の見積もり式を次に示します。セマフォは,抽出ノードマスタプロセスが稼働するサーバマシン上で使います。

SND_NUM:全送信先数

NSV_NUM:該当ノード内サーバ数

 

上記の見積もり式で見積もった数のセマフォを抽出側システムで使えるように,必要に応じてカーネルパラメタのシステム全体のセマフォ最大数(SEMMNS)を変更してください。カーネルパラメタの更新方法については,該当するOSのマニュアルを参照してください。

(p) メッセージキュー所要数の見積もり方法

抽出マスタプロセスが稼働するサーバマシンに1個と,抽出ノードマスタプロセスが稼働するサーバマシンごとに各1個ずつ必要です。

(q) 更新情報編集バッファサイズの見積もり方法

更新情報編集バッファサイズの見積もり式を次に示します。抽出対象表ごとに更新情報編集バッファサイズを見積もり,最大値を「5.2 抽出システム定義」のsmt_editbufsizeオペランド,又は「5.4 送信環境定義」のeditbufsizeオペランドに指定してください。