Hitachi

ノンストップデータベース HiRDB Version 10 システム導入・設計ガイド(UNIX(R)用)


16.3.1 ステータスファイルの容量の計算方法

〈この項の構成〉

(1) ステータスファイルの容量の求め方

ステータスファイルの容量は,次に示す計算式で求めます。

計算式
ステータスファイルの容量(単位:バイト)=a×b
a:ステータスファイルのレコード数

ステータスファイルのレコード数の求め方」を参照してください。ここで求めた値をpdstsinitコマンドの-cオプションに指定します。

b:ステータスファイルのレコード長

pdstsinitコマンドの-lオプションに指定する値です。

(2) ステータスファイルのレコード数の求め方

ステータスファイルのレコード数は,次に示す計算式で求めます。

計算式
レコード数=↑{↑S÷(レコード長−40)↑+↑S÷100↑+S+2 }×1.2↑

注 Sについては,「Sの求め方」を参照してください。

(3) Sの求め方

(a) HiRDB/シングルサーバの場合

種別

Sの計算式

ユニット用

↑(2056+128×d)÷g↑+↑2512÷g↑+↑40÷g↑

+↑308÷g↑+↑4000÷g↑+↑43536÷g↑+↑32÷g↑

サーバ用

↑128÷g↑+↑3280※1÷g↑+↑(592※2+j×b)÷g↑

+↑8192÷g↑+↑(8192−128)÷g↑×{↑(a+m)÷k↑−1}

+↑[↑{(↑c÷127↑+1)×2048}÷8192↑×8192]÷g↑

+↑2048÷g↑+↑{244+64×(2×h+7)}÷g↑

+↑96÷g↑+↑{48+68×(2×h+7)}÷g↑

+↑[20480×{1+↑((152×e)−(16×f)−(80×A)+(8×B))

÷20476↑+↑(4f+4C)÷20480↑}]÷g↑

+↑(12×c+4)÷g↑

+w

+↑(4+16×c)÷g↑

●ステータスファイルのレコード長<4096の場合に加算します。

+↓MAX{3400÷r+0.7,1}↓×MAX(↓4096÷s↓,2)×n

+↓5662310÷r+0.7↓×MAX(↓4096÷s↓,2)×p

●4096≦ステータスファイルのレコード長<12288の場合に加算します。

+↓MAX{(3400÷↓(s−348)÷20↓)+0.7,1}↓×n

+↓(5662310÷↓(s−348)÷20↓)+0.7↓×p

●12288≦ステータスファイルのレコード長の場合に加算します。

+↓MAX{(3400÷↓(s−876)÷20↓)+0.7,1}↓×n

+↓(5662310÷↓(s−876)÷20↓)+0.7↓×p

●pd_log_auto_unload_pathオペランドを指定する場合に加算します。

+↑20848÷g↑

●高速系切り替え機能を使用する場合に加算します。

+↑(↑(256×i+4096)÷4096↑)×4096÷g↑

●pd_dbbuff_modifyオペランドにYを指定する場合に加算します。

+v

●HiRDB Staticizer Optionがセットアップ済みで,かつpd_max_reflect_process_countオペランドを指定する場合に加算します。

+↑(128+704)÷g↑

+↑256÷g↑

a:pdlogadfgオペランドの指定数

b:pdlogadfg -d spdオペランドの指定数

c:pd_max_rdarea_noオペランドの値

d:108(シングルサーバの場合)又は74(ユティリティ専用ユニットの場合)

e:pdbufferオペランドの指定数

f:pdbufferオペランドの-iオプション指定数

g:ステータスファイルのレコード長−40

h:pd_max_usersの値+pd_max_reflect_process_countの値

i:インナレプリカ機能を使用する場合はpd_max_file_noオペランドの値

インナレプリカ機能を使用しない場合はpd_max_rdarea_noオペランドの値

j:736

k:11

m:1

n:サーバ内のRDエリア数≦3400の場合は1

3401≦サーバ内のRDエリア数≦6800の場合は2

6801≦サーバ内のRDエリア数の場合は3

p:サーバ内のRDエリア数≦10200の場合は0

10201≦サーバ内のRDエリア数≦5672510の場合は1

5672511≦サーバ内のRDエリア数≦11334820の場合は2

11334821≦サーバ内のRDエリア数の場合は3

r:↓(s−348)÷20↓+↓g÷20↓×(MAX(↓4096÷s↓,2)−1)

s:ステータスファイルのレコード長

v:32ビットモードの場合:↑(24+28×(x+512)+32+112×D)÷g↑

64ビットモードの場合:↑(32+32×(x+512)+32+144×D)÷g↑

w:32ビットモードの場合:↑((12+(↑↑(c÷8)↑÷4↑)×4)×z)÷g↑

64ビットモードの場合:↑((12+(↑↑(c÷8)↑÷8↑)×8)×z)÷g↑

x:pd_max_add_dbbuff_shm_noオペランドの値

y:pd_max_add_dbbuff_noオペランドの値

z:pdbufferオペランドの-iオプション指定総数に,pd_max_add_dbbuff_noオペランドの値を加算した値(pd_dbbuff_modifyオペランドにY以外を指定した場合は0として計算します)

A:システム共通定義のpdbufferオペランドの-oオプション指定あり:1

システム共通定義のpdbufferオペランドの-oオプション指定なし:0

B:システム共通定義のpdbufferオペランドの-rオプション及び-bオプションに指定したRDエリアの総数

C:システム共通定義のpdbufferオペランドの-iオプションに指定したインデクスを格納しているRDエリアの総数

D:システム共通定義のpd_dbbuf_modifyオペランドにYを指定した場合:
  • システム共通定義のpd_max_add_dbbuff_noオペランドを指定したとき:e+y

  • システム共通定義のpd_max_add_dbbuff_noオペランドを省略したとき:1000

システム共通定義のpd_dbbuf_modifyオペランドにNを指定した場合:e

注※1 64ビットモードの場合は3456です。

注※2 64ビットモードの場合は688です。

(b) HiRDB/パラレルサーバの場合

種別

Sの計算式

ユニット用

↑[2056+128×{14×(p−P+q+N)+(p−P+q+r)

+(25+15×(p−P)+7×q+3×r)+(s×2+1)+(N×16)

+(38+4×(p−P+q+r+N)+d+z+3×(p−P+q+r+N))}]÷j↑

+↑944÷j↑+↑4816÷j↑+↑40÷j↑

+↑308÷j↑+↑4000÷j↑+↑43536÷j↑

+↑(16+8×M)÷j↑+↑16÷j↑

●ユニット内にシステムマネジャがある場合に加算します。

+↑(L+16×M)÷j↑

●影響分散スタンバイレス型系切り替え機能を使用しない場合に加算します。

+↑32÷j↑

●影響分散スタンバイレス型系切り替え機能を使用する場合に加算します。

+↑[20480×{1+↑((152×f)−(16×g)−(80×Q)+(8×R))÷20476↑+↑(4g+4S)÷20480↑}]÷j↑

フロントエンド

サーバ用

↑128÷j↑+↑3280※1÷j↑+↑(592※2+A×b)÷j↑

+↑8192÷j↑+↑(8192−128)÷j↑×{↑(a+C)÷B↑−1}

+↑8192÷j↑+↑2048÷j↑

+↑{244+64×(2×e+7)}÷j↑+↑96÷j↑+↑32÷j↑

●pd_log_auto_unload_pathオペランドを指定する場合に加算します。

+↑20848÷j↑

ディクショナリ

サーバ用

↑128÷j↑+↑3280※1÷j↑+↑(592※2+A×b)÷j↑

+↑8192÷j↑+↑8192÷j↑×{↑(a+C)÷B↑−1}

+↑[↑{(↑c÷127↑+1)×2048}÷8192↑×8192]÷j↑

+↑2048÷j↑+↑{244+64×(2×h+7)}÷j↑+↑96÷j↑

+↑{48+68×(2×h+7)}÷j↑

+↑[20480×{1+↑((152×f)−(16×g)−(80×Q)+(8×R))

 ÷20476↑+↑(4g+4S)÷20480↑}]÷j↑

+↑(12×c+4)÷j↑+↑32÷j↑

+H

+↑(4+16×c)÷j↑

●ステータスファイルのレコード長<4096の場合に加算します。

+↓MAX{3400÷D+0.7,1}↓×MAX(↓4096÷n↓,2)

●4096≦ステータスファイルのレコード長<12288の場合に加算します。

+↓MAX{(3400÷↓(n−348)÷20↓)+0.7,1}↓

●12288≦ステータスファイルのレコード長の場合に加算します。

+↓MAX{(3400÷↓(n−876)÷20↓)+0.7,1}↓

●系切り替え機能を使用する場合に加算します。

+↑(↑(256×c+4096)÷4096↑×4096)÷j↑

●pd_log_auto_unload_pathオペランドを指定する場合に加算します。

+↑20848÷j↑

●pd_dbbuff_modifyオペランドにYを指定する場合に加算します。

+G

バックエンド

サーバ用

↑128÷j↑+↑3280※1÷j↑+↑(592※2+A×b)÷j↑

+↑8192÷j↑+↑8192÷j↑×{↑(a+C)÷B↑−1}

+↑[↑{(↑c÷127↑+1)×2048}÷8192↑×8192]÷j↑

+↑2048÷j↑+↑{244+64×(2×i+7)}÷j↑+↑96÷j↑

+↑{48+68×(2×i+7)}÷j↑+↑(12×c+4)÷j↑

+↑[20480×{1+↑((152×f)−(16×g)−(80×Q)+(8×R))

 ÷20476↑+↑(4g+4S)÷20480↑}]÷j↑※3

+↑32÷j↑+H+↑(4+16×c)÷j↑

●ステータスファイルのレコード長<4096の場合に加算します。

+↓MAX{3400÷D+0.7,1}↓×MAX(↓4096÷n↓,2)×k

+↓5662310÷D+0.7↓×MAX(↓4096÷n↓,2)×m

●4096≦ステータスファイルのレコード長<12288の場合に加算します。

+↓MAX{(3400÷↓(n−348)÷20↓)+0.7,1}↓×k

+↓(5662310÷↓(n−348)÷20↓)+0.7↓×m

●12288≦ステータスファイルのレコード長の場合に加算します。

+↓MAX{(3400÷↓(n−876)÷20↓)+0.7,1}↓×k

+↓(5662310÷↓(n−876)÷20↓)+0.7↓×m

●系切り替え機能を使用する場合に加算します。

+↑(↑(256×y+4096)÷4096↑×4096)÷j↑

●影響分散スタンバイレス型系切り替え機能を使用する場合に加算します。

+↑2816÷j↑+↑80÷j↑

+↑32÷j↑

●pd_log_auto_unload_pathオペランドを指定する場合に加算します。

+↑20848÷j↑

●pd_dbbuff_modifyオペランドにYを指定する場合に加算します。

+G

●HiRDB Staticizer Optionがセットアップ済みで,かつpd_max_reflect_process_countオペランドを指定する場合に加算します。

+↑256÷j↑

+↑(128+704)÷j↑

a:pdlogadfgオペランドの指定数

b:pdlogadfg -d spdオペランドの指定数

c:pd_max_rdarea_noオペランドの値

d:3

ただし,1サーバマシンでのHiRDB/パラレルサーバの場合は2

e:(pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値)+1

ただし,1サーバマシンでのHiRDB/パラレルサーバの場合は(pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値)

f:pdbufferオペランドの指定数

g:pdbufferオペランドの-iオプション指定数

h:pd_max_dic_processオペランドの値+pd_max_reflect_process_countオペランドの値

i:pd_max_bes_processオペランドの値+pd_max_reflect_process_countオペランドの値

j:ステータスファイルのレコード長−40

k:サーバ内のRDエリア数≦3400の場合は1

3401≦サーバ内のRDエリア数≦6800の場合は2

6801≦サーバ内のRDエリア数の場合は3

m:サーバ内のRDエリア数≦10200の場合は0

10201≦サーバ内のRDエリア数≦5672510の場合は1

5672511≦サーバ内のRDエリア数≦11334820の場合は2

11334821≦サーバ内のRDエリア数の場合は3

n:ステータスファイルのレコード長

p:ユニット内のバックエンドサーバ数

q:ユニット内にディクショナリサーバがある場合は1,ない場合は0

r:ユニット内にフロントエンドサーバがある場合は1,ない場合は0

s:ユニット内にシステムマネジャがある場合は1,ない場合は0

y:インナレプリカ機能を使用する場合はpd_max_file_noオペランドの値

インナレプリカ機能を使用しない場合はpd_max_rdarea_noオペランドの値

z:次の場合は1
  • ユニット内にシステムマネジャがある場合

  • ユニット内にシステムマネジャがない場合で,pd_mlg_msg_log_unitオペランドにlocalを指定しているとき

ユニット内にシステムマネジャがない場合で,pd_mlg_msg_log_unitオペランドにmanagerを指定しているか,又は指定を省略しているときは0

A:736

B:11

C:1

D:↓(n−348)÷20↓+↓j÷20↓×(MAX(↓4096÷n↓,2)−1)

G:32ビットモードの場合:↑(24+28×(I+512)+32+112×T)÷j↑

64ビットモードの場合:↑(32+32×(I+512)+32+144×T)÷j↑

H:32ビットモードの場合:↑((12+(↑↑(c÷8)↑÷4↑)×4)×K)÷j↑

64ビットモードの場合:↑((12+(↑↑(c÷8)↑÷8↑)×8)×K)÷j↑

I:pd_max_add_dbbuff_shm_noオペランドの値

J:pd_max_add_dbbuff_noオペランドの値

K:pdbufferオペランドの-iオプション指定総数に,pd_max_add_dbbuff_noオペランドの値を加算した値(pd_dbbuff_modifyオペランドにY以外を指定した場合は0として計算します)

L:pd_system_expand_unitオペランドを指定した場合:16

pd_system_expand_unitオペランドを省略した場合:0

M:pd_system_expand_unitオペランドを指定した場合:pd_system_expand_unitオペランドに指定したユニット数

pd_system_expand_unitオペランドを省略した場合:0

N:pd_ha_max_act_guest_serversオペランドを指定した場合:pd_ha_max_act_guest_serversオペランドの指定値

pd_ha_max_act_guest_serversオペランドを省略した場合:0

P:ユニット内の代替BESの数(1:1スタンバイレス型系切り替え機能使用時の代替BES)

Q:システム共通定義のpdbufferオペランドの-oオプション指定あり:1

システム共通定義のpdbufferオペランドの-oオプション指定なし:0

R:システム共通定義のpdbufferオペランドの-rオプション及び-bオプションに指定したRDエリアの総数

S:システム共通定義のpdbufferオペランドの-iオプションに指定したインデクスを格納しているRDエリアの総数

T:システム共通定義のpd_buf_modifyオペランドにYを指定した場合
  • システム共通定義のpd_max_add_dbbuff_noオペランドを指定したとき:f+J

  • システム共通定義のpd_max_add_dbbuff_noオペランドを省略したとき:1000

システム共通定義のpd_buf_modifyオペランドにNを指定した場合:f

注※1 64ビットモードの場合は3456です。

注※2 64ビットモードの場合は688です。

注※3 影響分散スタンバイレス型系切り替え機能を使用する場合は,加算しないでください。