スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(Windows(R)用)
HiRDB/シングルサーバの開始から終了までの間にユニットコントローラが使用する共用メモリは,次に示すHiRDBのプロセスの項目すべてを加算した値です。
なお,ユニットコントローラ全体の共用メモリサイズは2ギガバイト以内になるようにしてください。
プロセスの種類 | 共用メモリの計算式(単位:バイト) |
---|---|
スケジューラ | pd_utl_exec_modeの値が0の場合 {↑(432+304×n)÷1024↑+352+x}×1024 pd_utl_exec_modeの値が1の場合 {↑(432+304×n)÷1024↑+↑(m×2000+136)÷1024↑+y}×1024 x:シングルサーバの場合:116+5×(m+3)+14 y:シングルサーバの場合:5×(m+3)+14 m:pd_max_usersの値
|
ロックサーバ | (192+48+c+d+48+4096+g+48+i+48+4096+48+n+16+t+u+16) ×pd_lck_pool_partitionの値 c:pd_lck_hash_entryを省略,又は0を指定している場合: (↓(8+4×MAX(((p+3)×(pd_max_access_tablesの値+4+5×2) +↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×6)÷10,11261))÷16↓+1)×16 pd_lck_hash_entryに2以上の素数でない値を指定している場合: (↓(8+4×pd_lck_hash_entryの値を超えない最大の素数)÷16↓+1) ×16 pd_lck_hash_entryに1,又は素数を指定している場合: (↓(8+4×pd_lck_hash_entryの値)÷16↓+1)×16 d:((p+3)×(pd_max_access_tablesの値+4+5×2)+ ↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×6)×96 g:pd_utl_exec_modeの値=1,かつp>32の場合: ((p+3)×3+p)×256 pd_utl_exec_modeの値=0,又はp≦32の場合: ((p+3)×3+32)×256 i:pd_utl_exec_modeの値=1,かつp>32の場合: ((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×8+((p+3) ×(pd_max_access_tablesの値+4))×2) +p×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×64 pd_utl_exec_modeの値=0,又はp≦32の場合: ((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×8+((p+3) ×(pd_max_access_tablesの値+4))×2) +32×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×64 n:pd_utl_exec_modeの値=1,かつp>32の場合: ((p+3)×3+p)×48 pd_utl_exec_modeの値=0,又はp≦32の場合: ((p+3)×3+32)×48 p:pd_max_usersの値 t:pd_utl_exec_modeの値=1,かつp>32の場合: 32+((p+3)×3+p)×↑pd_max_open_holdable_cursorsの値÷16↑×4 pd_utl_exec_modeの値=0,又はp≦32の場合: 32+((p+3)×3+32)×↑pd_max_open_holdable_cursorsの値÷16↑×4 u:pd_utl_exec_modeの値=1,かつp>32の場合: 32+((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×8 +((p+3)×(pd_max_access_tablesの値+4))×2) +p×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×↑pd_max_open_holdable_cursorsの値÷16↑×4 pd_utl_exec_modeの値=0,又はp≦32の場合: 32+((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×8+ ((p+3)×(pd_max_access_tablesの値+4))×2) +32×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×↑pd_max_open_holdable_cursorsの値÷16↑×4 |
トランザクションサーバ | 288+32+192×m×2+1028 +(420+564+256+384×2+128)×(m×2+7)+256×2 m:pd_max_usersの値 |
タイマサーバ | 32×(pd_max_usersの値+3)×(1+ユニット内ユティリティサーバ数+1)+1440 ユニット内ユティリティサーバ数:26+12 |
統計ログサーバ | 384+128×16+32+288×2+1024+128×3+pd_stj_buff_sizeの値×1024×3+64+4096+8192 |
プロセスサーバ | 160+512×a+96+256+(pd_max_server_processの値+50)×(256+144)+16+8×16+16+16+48+48×(pd_module_trace_maxの値+1) a:シングルサーバの場合:125 |
システムマネジャ | 640+(44+4)×a×2+(100+4)×(b+30+2)+(100+4)×(c+1)+40×b×14+256+256+36×d+12×e+8+5844+212+f+16+1024+272×h a:シングルサーバの定義数 b:ユニット内のシングルサーバ数 c:ユニット数 d:pdunitオペランドの-cオプションの指定数 e:pdcltgrpオペランド指定数 f:2052+128×(g+3) g:シングルサーバの場合:92 h:pd_security_host_groupオペランドに指定したホストに対応するIPアドレスの数 pd_security_host_groupオペランドを指定していない場合は0 |
ネームサーバ | 169984 |
ノードマネジャ | ↑(1152+288×全ユニット数+80×全サーバ数+1536+800 +56×ユニット内のサーバ数+240×A+44×A+28×A+16×B+32) ÷1024↑×1024
|
I/Oサーバ | ↑(28+(↑(32+A)÷32↑×32))÷128↑×128
|
ログサーバ | 32+48+128×19+384+128×7+1024+512 +↑(128+256+160+8+64)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +64+4096×2+(736+512)×B +128×pd_log_write_buff_countの値 +(pd_log_write_buff_countの値+A) ×↑{pd_log_max_data_sizeの値+(68+44+96+160)}÷4096↑×4096 +C+↑{(B+1)÷12}↑× 8320 A:16 B:pdlogadfg -d sysオペランドの指定数 C:512 |
シンクポイントダンプサーバ | ↑(368+1456×2)÷1024↑×1024 +↓{(96+80+208+208)+192×(pdlogadfg -d spdの指定数) +416×(pdlogadpf -d spdの指定数)+1023} ÷1024↓×1024 |
ユニット共通 | a+b+64+(m+3)×c+64+48+d+e +(pd_max_server_processの値+100)×(48+16)+32 +(pd_max_server_processの値+100+384)×32+32+f+g+h+i +(pd_max_server_processの値+127)×48+32 a:25360+p×4 b:2988 c:1952 d:32×32 e:64+64×{(m+3)×2 +MAX(5,↓[m+3]÷10↓)+7} f:512×(13+3)×2 g:{↓(96+pd_lck_until_disconnect_cntの値×112+4095)÷4096↓} ×4096×2 h:↓(pd_registered_portで指定したポート番号の数×16+32 +1023)÷1024↓×1024 pd_registered_portを指定していない場合は0 i:kが2以上の場合は32+(8+8×k)×n それ以外の場合は0 k:pd_lck_pool_partitionの値 m:pd_max_usersの値 n:(m+3)×2+MAX{5,↓(m+3)÷10↓}+7 p:pd_dbbuff_modifyにYを指定している場合:16+pd_max_add_dbbuff_shm_noの値+pd_max_resident_rdarea_shm_noの値 上記以外:16+pd_max_resident_rdarea_shm_noの値 |
トランザクションログサーバ | 1024+512×A +{ 128×B+128 +[F+↑(128+256+8+224)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +↑(pd_log_max_data_sizeの値+68+44+96+160) ÷pd_log_rec_lengの値↑×pd_log_rec_lengの値]×D +E+(48+8)×B×2 }×ユニット内のサーバ数 +584×B+128×B+64×B×C+128 +{ F+↑(128+256+8+224)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +↑(pd_log_max_data_sizeの値+68+44+96+160) ÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 } +E+(48+8)×(B×2+2) A:2 B:7+pd_max_usersの値×2 C:1 D:シングルサーバの場合,pd_log_rollback_buff_countの値が0のときは8, それ以外のときはpd_log_rollback_buff_countの値 E:512 F:512 |
ステータスサーバ | ↑64÷32↑×32 |
監査証跡管理サーバ | ↑A÷1024↑×1024 A:pd_aud_file_nameオペランドの指定がない場合は640 pd_aud_file_nameオペランドの指定がある場合は640+(304×200)+B+C B:pd_aud_async_buff_sizeオペランドの値が0の場合は0 pd_aud_async_buff_sizeオペランドの値が4096以上の場合は次の計算値 (160×pd_aud_async_buff_countオペランドの値) +{(↑pd_aud_async_buff_sizeオペランドの値÷4096↑×4096) ×pd_aud_async_buff_countオペランドの値}+4096 C:pd_aud_auto_loadingオペランドにNを指定している場合は0 pd_aud_auto_loadingオペランドにYを指定している場合は256×2+240 |
HiRDB/シングルサーバの開始から終了までの間にユニットコントローラが使用する共用メモリは,次に示すHiRDBのプロセスの項目すべてを加算した値です。
プロセスの種類 | 共用メモリの計算式(単位:バイト) |
---|---|
スケジューラ | pd_utl_exec_modeの値が0の場合 {↑(432+304×n)÷1024↑+352+x}×1024 pd_utl_exec_modeの値が1の場合 {↑(432+304×n)÷1024↑+↑(m×2000+136)÷1024↑+y}×1024 x:シングルサーバの場合:116+5×(m+3)+14 y:シングルサーバの場合:5×(m+3)+14 m:pd_max_usersの値
|
ロックサーバ | (272+80+c+d+64+8192+g+80+i+64+8192+64+n+16+t+u+16) ×pd_lck_pool_partitionの値 c:pd_lck_hash_entryを省略,又は0を指定している場合: (↓(8+8×MAX(((p+3)×(pd_max_access_tablesの値+4+5×2) +↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×4) ÷10,11261))÷16↓+1)×16 pd_lck_hash_entryに2以上の素数でない値を指定している場合: (↓(8+8×pd_lck_hash_entryの値を超えない最大の素数)÷16↓+1) ×16 pd_lck_hash_entryに1,又は素数を指定している場合: (↓(8+8×pd_lck_hash_entryの値)÷16↓+1)×16 d:((p+3)×(pd_max_access_tablesの値+4+5×2)+ ↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×4)×128 g:pd_utl_exec_modeの値=1,かつp>32の場合: ((p+3)×3+p)×320 pd_utl_exec_modeの値=0,又はp≦32の場合: ((p+3)×3+32)×320 i:pd_utl_exec_modeの値=1,かつp>32の場合: ((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×5 +((p+3)×(pd_max_access_tablesの値+4))×2) +↓(↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓)÷3↓ +p×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×112 pd_utl_exec_modeの値=0,又はp≦32の場合: ((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×5 +((p+3)×(pd_max_access_tablesの値+4))×2) +↓(↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓)÷3↓ +32×(pd_max_rdarea_no値+1)+(p+3)×2×2×5) を偶数に切り上げた値×112 n:pd_utl_exec_modeの値=1,かつp>32の場合: ((p+3)×3+p)×80 pd_utl_exec_modeの値=0,又はp≦32の場合: ((p+3)×3+32)×80 p:pd_max_usersの値 t:pd_utl_exec_modeの値=1,かつp>32の場合: 32+((p+3)×3+p)×↑pd_max_open_holdable_cursorsの値÷16↑×4 pd_utl_exec_modeの値=0,又はp≦32の場合: 32+((p+3)×3+32)×↑pd_max_open_holdable_cursorsの値÷16↑×4 u:pd_utl_exec_modeの値=1,かつp>32の場合: 32+((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×5 +((p+3)×(pd_max_access_tablesの値+4))×2) +↓(↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓)÷3↓ +p×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×↑pd_max_open_holdable_cursorsの値÷16↑×4 pd_utl_exec_modeの値=0,又はp≦32の場合: 32+((↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓×5 +((p+3)×(pd_max_access_tablesの値+4))×2) +↓(↓pd_lck_pool_sizeの値÷pd_lck_pool_partitionの値↓)÷3↓ +32×(pd_max_rdarea_noの値+1)+(p+3)×2×2×5) を偶数に切り上げた値×↑pd_max_open_holdable_cursorsの値÷16↑×4 |
トランザクションサーバ | 304+32+192×m×2+1048 +(416+720+256+392×2+128)×(m×2+7)+256×2 m:pd_max_usersの値 |
タイマサーバ | 32×(pd_max_usersの値+3)×(1+ユニット内ユティリティサーバ数+1) +1440+(48−32)×2 ユニット内ユティリティサーバ数は26+12 |
統計ログサーバ | 424+128×16+32+288×2+1168+144×3 +pd_stj_buff_sizeの値×1024×3+64+4096+8192 |
プロセスサーバ | 176+528×a+96+256+(pd_max_server_processの値+50)×(256+160)+ 16+8×16+16+16+64+64×(pd_module_trace_maxの値+1) a:シングルサーバの場合:125 |
システムマネジャ | 672+(48+8)×a×2+(112+8)×(b+30+2)+(104+8)×(c+1)+40×b×14+256+256+40×d+16×e+8+5864+236+f+16+1024+272×h a:シングルサーバの定義数 b:ユニット内のシングルサーバ数 c:ユニット数 d:pdunitオペランドの-cオプションの指定数 e:pdcltgrpオペランド指定数 f:2056+128×(g+3) g:シングルサーバの場合:92 h:pd_security_host_groupオペランドに指定したホストに対応するIPアドレスの数 pd_security_host_groupオペランドを指定していない場合は0 |
ネームサーバ | 169984 |
ノードマネジャ | ↑(1312+320×HiRDBシステムの全ユニット数 +96×HiRDBシステムの全サーバ数+2048+960 +72×ユニット内HiRDBサーバ数+240×A+44×A+28×A+16×B+48) ÷1024↑×1024
|
I/Oサーバ | ↑(56+(↑(56+A)÷32↑×32))÷128↑×128
|
ログサーバ | 32+48+128×19+432+128×7+1168+512 +↑(128+256+160+8+64)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +64+4096×2+(768+512)×B +144×pd_log_write_buff_countの値 +(pd_log_write_buff_countの値+A) ×↑{pd_log_max_data_sizeの値+(68+44+96+160)}÷4096↑×4096 +C+↑{(B+1)÷12}↑× 8320 A:16 B:pdlogadfg -d sysオペランドの指定数 C:512 |
シンクポイントダンプサーバ | ↑(384+1536×2)÷1024↑×1024 +↓{(128+80+240+240)+192×(pdlogadfg -d spdの指定数) +416×(pdlogadpf -d spdの指定数)+1023} ÷1024↓×1024 |
ユニット共通 | a+b+80+(m+3)×c+64+48+d+e +(pd_max_server_processの値+100)×(64+16)+32 +(pd_max_server_processの値+100+384)×32+32+f+g+h+i +(pd_max_server_processの値+127)×48+32 a:34768+p×4 b:3480 c:2760 d:48×32 e:80+96×{(m+3)×2 +MAX(5,↓[m+3]÷10↓)+7} f:512×(13+3)×2 g:{↓(128+pd_lck_until_disconnect_cntの値×112+4095)÷4096↓} ×4096×2 h:↓(pd_registered_portで指定したポート番号の数×16+32+1023) ÷1024↓×1024 pd_registered_portを指定していない場合は0 i:kが2以上の場合は32+(8+8×k)×n それ以外の場合は0 k:pd_lck_pool_partitionの値 m:pd_max_usersの値 n:(m+3)×2+MAX{5,↓(m+3)÷10↓}+7 p:pd_dbbuff_modifyにYを指定している場合:16+pd_max_add_dbbuff_shm_noの値+pd_max_resident_rdarea_shm_noの値 上記以外:16+pd_max_resident_rdarea_shm_noの値 |
トランザクションログサーバ | 1168+688×A +{ 128×B+144 +[G+↑(128+256+8+224)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +↑(pd_log_max_data_sizeの値+68+44+96+160) ÷pd_log_rec_lengの値↑×pd_log_rec_lengの値]×D +E+(48+8)×B×2 }×ユニット内のサーバ数 +600×B+128×B+64×B×C+144 +{ G+↑(128+256+8+224)÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 +↑(pd_log_max_data_sizeの値+68+44+96+160) ÷pd_log_rec_lengの値↑×pd_log_rec_lengの値 } +E+(48+8)×(B×2+2) A:2 B:7+pd_max_usersの値×2 C:1 D:シングルサーバの場合,pd_log_rollback_buff_countの値が0のときは8, それ以外のときはpd_log_rollback_buff_countの値 E:512 G:512 |
ステータスサーバ | ↑64÷32↑×32 |
監査証跡管理サーバ | ↑A÷1024↑×1024 A:pd_aud_file_nameオペランドの指定がない場合は704 pd_aud_file_nameオペランドの指定がある場合は704+(320×200)+B+C B:pd_aud_async_buff_sizeオペランドの値が0の場合は0 pd_aud_async_buff_sizeオペランドの値が4096以上の場合は次の計算値 (176×pd_aud_async_buff_countオペランドの値) +{(↑pd_aud_async_buff_sizeオペランドの値÷4096↑×4096) ×pd_aud_async_buff_countオペランドの値}+4096 C:pd_aud_auto_loadingオペランドにNを指定している場合は0 pd_aud_auto_loadingオペランドにYを指定している場合は256×2+256 |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.