スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

21.1 HP-UXのオペレーティングシステムパラメタの見積もり

ここでは,HP-UXのオペレーティングシステムパラメタ(カーネルパラメタ)の見積もりについて説明します。オペレーティングシステムパラメタの値が小さいと,HiRDBが正しく動作しないことがあります。HP-UXのオペレーティングシステムパラメタの指定値の目安を次の表に示します。

なお,HP-UX 11i版の場合,HiRDBの稼働中にオペレーティングシステムパラメタを変更しないでください。動的調整できるオペレーティングシステムパラメタを変更した場合でも,HiRDBの動作に影響を及ぼすことがあります。

表21-1 HP-UXのオペレーティングシステムパラメタの指定値の目安

オペレーティングシステムパラメタ 指定値の目安
maxdsiz(32ビットモード)
maxdsiz_64bit(64ビットモード)
●HiRDB/シングルサーバの場合
次の二つの条件を満たす値を目安にしてください。ただし,(シングルサーバプロセスが使用するプロセス固有領域※1)÷gより小さい場合は,この値以上を指定してください。
32ビットモードのとき
  • HiRDBの再開始用メモリサイズ※2+52428800(バイト)以上
  • pd_work_buff_sizeの値×1024+134217728(バイト)以上
64ビットモードのとき
  • HiRDBの再開始用メモリサイズ※2+52428800(バイト)以上
  • pd_work_buff_sizeの値×1024+134217728(バイト)以上
●HiRDB/パラレルサーバの場合
次の二つの条件を満たす値を目安にしてください。ただし,(各サーバプロセスが使用するプロセス固有領域※3)÷gより小さい場合は,この値以上を指定してください。
32ビットモードのとき
  • 各サーバのHiRDBの再開始用メモリサイズ※2+52428800(バイト)以上
  • pd_work_buff_sizeの値×1024+134217728(バイト)以上
64ビットモードのとき
  • 各サーバのHiRDBの再開始用メモリサイズ※2+52428800(バイト)以上
  • pd_work_buff_sizeの値×1024+134217728(バイト)以上
maxssiz
maxssiz_64bit(64ビットモード)
80メガバイト以上を指定してください。単位がメガバイトのため,値を変更するときは注意してください。ただし,サーバマシン上で稼働するほかのプログラムが必要とする値の方が大きい場合は,その値を指定してください。
maxfiles HiRDBが計算して設定するため,指定する必要はありません。
maxfiles_lim MAX(MAX(1024,960+ユニット数)+320,pd_max_open_fdsの値,n)以上を指定してください。
nfile MAX{1600,320×(h−g−i)+[a+(b×c)+320]×g+848×i+h×2+227+k×m+C}以上の値を指定してください。
この計算式で求めた値が,システムの上限を超える場合は,システムの上限値を指定してください。
nflocks a+(b×c)+3+(320×g)以上を指定してください。
maxuprc MAX(pd_max_server_processの値+e,512)以上を指定してください。
ただし,サーバマシン上で稼働するほかのプログラムが必要とする値の方が大きい場合は,その値を指定してください。
maxusers 推奨値は128以上です。
nproc MAX(pd_max_server_processの値+20,576)以上を指定してください。
msgmni サーバマシン上で稼働する全プログラムが必要とするメッセージキュー識別子数を指定します。HiRDBが必要とするメッセージキュー識別子数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
msgtql (k×ユニット数)+

Σ{Ai+Bi}以上の値を指定してください。
i=1
N:ノード内ユニット数

A=

Σ{
i=1
サーバiに割り当てたグローバルバッファプール数※6
サーバiのシンクポイントダンプ有効化の
  スキップ回数※7×2+
 サーバiで実行するpdload,pdrorg,pdrbal,
  ログレスUAPの最大同時実行数+1
}

Bは非同期READ機能使用時(pd_max_ard_processに0以外指定時)のみ加算します。
非同期READ機能を使用しない場合は0で見積もります。
B=

Σ{
i=1
 サーバiに割り当てたグローバルバッファプールのpdbuffer -m指定値の合計

M:
<シングルサーバの場合>
 1
<パラレルサーバの場合>
  ユニット内のバックエンドサーバ数+
  ユニット内のディクショナリサーバ数+
  ユニット内のゲストBES数※8
semmni サーバマシン上で稼働する全プログラムが必要とするセマフォ識別子数を指定します。HiRDBが必要とするセマフォ識別子数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
推奨値は1024以上です。
semmns サーバマシン上で稼働する全プログラムが必要とするセマフォ数を指定します。HiRDBが必要とするセマフォ数については,「21.5 メッセージキュー及びセマフォ所要量の見積もり」を参照してください。そこで求めた値を加算してください。
推奨値は7200以上です。
semmnu 512以上を指定してください。
semume 512以上を指定してください。
shmmax 200000000以上で,MAX(p+q,r,s,t)よりも大きい値を指定してください。
グローバルバッファの動的変更機能使用時は,追加するグローバルバッファのサイズを考慮し,設定値より追加分のサイズが大きくなる可能性があれば,予想される追加分のサイズを指定してください。
ただし,プロセス間メモリ通信機能を使用する場合(クライアント環境定義でPDIPC=MEMORYを指定した場合)は,MAX(p+q,r,s,PDSENDMEMSIZEの値,PDRECVMEMSIZEの値)よりも大きい値を指定してください。
なお,HiRDBシステム定義のSHMMAXオペランドには,ここで求めたshmmaxの値以下を指定してください。
shmmni 1000以上を指定してください。
  • セキュリティ監査機能使用時は1を加算してください。
  • グローバルバッファの動的変更機能使用時は次の値を加算します。
    HiRDB/シングルサーバの場合
    pd_max_add_dbbuff_shm_noオペランドの値
    HiRDB/パラレルサーバの場合
    n
    Σ 各サーバ定義に指定したpd_max_add_dbbuff_shm_noオペランドの値
    i=1
    n:サーバマシン内のバックエンドサーバ数+ディクショナリサーバ数
  • プロセス間メモリ通信機能を使用する場合(クライアント環境定義でPDIPC=MEMORYを指定した場合)は,次に示す計算式で求めた値を加算してください。
    A×2×1.2
    Aはプロセス間メモリ通信機能を使用するクライアントの最大同時実行数です。Aが分からない場合は,プロセス間メモリ通信機能を使用する全クライアント数又はkを代入してください。
  • インメモリデータ処理の使用時は次の値を加算します。
    HiRDB/シングルサーバの場合
    pd_max_resident_rdarea_shm_noオペランドの値
    HiRDB/パラレルサーバの場合
    pd_max_resident_rdarea_shm_noオペランドの値×バックエンドサーバ数
shmseg 120以上を指定してください。
  • セキュリティ監査機能使用時は1を加算してください。
  • グローバルバッファの動的変更をする場合は,各サーバ定義で指定したpd_max_add_dbbuff_shm_noオペランドの値の最大値を加算してください。
  • インメモリデータ処理をする場合は,pd_max_resident_rdarea_shm_noオペランドの値を加算してください。

a:データベース作成ユティリティで使用する入力データファイル数と分割入力データファイル数,又はデータベース再編成ユティリティで使用するアンロードデータファイル数

b:インデクスの横分割数の最大値(データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティの処理対象のインデクス)

c:インデクス数(データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティの処理対象のインデクス)

d:次のどちらかの値
  • HiRDB/シングルサーバの場合
    pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値
  • HiRDB/パラレルサーバの場合
    pd_max_bes_processオペランドの値+pd_max_reflect_process_countオペランドの値

e:同時実行するコマンド(ユティリティを含む)の最大数

f:次のどれかの値
  • HiRDB/シングルサーバでpd_lck_release_detect=pipeの場合:1
  • HiRDB/パラレルサーバでpd_lck_release_detect=pipeの場合:16
  • そのほかの場合:0

g:次のどちらかの値
  • HiRDB/シングルサーバの場合:pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値
  • HiRDB/パラレルサーバの場合:ユニット内の全バックエンドサーバ,ディクショナリサーバの次に示す値の合計値
    pd_max_bes_processオペランドの値+pd_max_reflect_process_countオペランドの値
    pd_max_dic_processオペランドの値+pd_max_reflect_process_countオペランドの値

h:pd_max_server_processオペランドの値

i:ユニット内のサーバ数

j:次のどれかの値
  • HiRDB/シングルサーバでpd_lck_release_detect=pipeの場合:4
  • HiRDB/パラレルサーバでpd_lck_release_detect=pipeの場合:35
  • そのほかの場合:0

k:pd_max_usersオペランドの値+pd_max_reflect_process_countオペランドの値

m:次のどちらかの値
  • HiRDB/パラレルサーバでユニット内にフロントエンドサーバがあり,かつpd_lck_release_detect=pipeの場合:2
  • そのほかの場合:0

n:データベース作成ユティリティ,データベース再編成ユティリティ,又はリバランスユティリティで,インデクス作成方法にインデクス一括作成モード若しくはインデクス情報出力モードを指定する場合,次の計算式の値
MIN(MAX(576,システム内のHiRDBサーバ数+448)+b×c,pd_max_open_fdsオペランドの最大値)
pd_max_open_fdsオペランドの最大値については,マニュアル「HiRDB Version 8 システム定義」を参照してください。

p:ユニットコントローラが使用する共用メモリの大きさ

q:シングルサーバ又は各サーバが使用する共用メモリの大きさ

r:HiRDBシステム定義のSHMMAXオペランドの指定値

s:グローバルバッファが使用する共用メモリの見積もり値※4

:セキュリティ監査情報用バッファ用共用メモリの見積もり値※5

HiRDB/シングルサーバの場合:MAX(256,(システム内HiRDBサーバ数+32))×(g+k)+(h−k)×MAX(システム内HiRDBサーバ数,ユニット数)
HiRDB/パラレルサーバの場合:MAX(256,(システム内HiRDBサーバ数+32))×(g+k)+(h−g−k)×MAX(システム内HiRDBサーバ数,ユニット数)

注※1
シングルサーバプロセスが使用するプロセス固有領域については,「16.1.2 メモリ所要量の計算式」を参照してください。

注※2
HiRDBの再開始用メモリサイズの見積もりについては,HiRDB/シングルサーバの場合は「16.1.2 メモリ所要量の計算式」を,HiRDB/パラレルサーバの場合は「16.2.2 メモリ所要量の計算式」を参照してください。

注※3
各サーバプロセスが使用するプロセス固有領域については,「16.2.2 メモリ所要量の計算式」を参照してください。

注※4
グローバルバッファが使用する共用メモリの見積もりについては,HiRDB/シングルサーバの場合は「16.1.5 グローバルバッファが使用する共用メモリの計算式」を,HiRDB/パラレルサーバの場合は「16.2.5 グローバルバッファが使用する共用メモリの計算式」を参照してください。

注※5
セキュリティ監査情報用バッファ用共用メモリの見積もりについては,HiRDB/シングルサーバの場合は「16.1.2 メモリ所要量の計算式」を,HiRDB/パラレルサーバの場合は「16.2.2 メモリ所要量の計算式」を参照してください。

注※6
pdbufls コマンドで表示されるバッファプール名をサーバ単位に集計することで確認できます。

注※7
pd_spd_syncpoint_skip_limitに0以外の値を指定している場合はpd_spd_syncpoint_skip_limit指定値で見積もります。pd_spd_syncpoint_skip_limitを省略しているか,0を指定している場合は,マニュアル「HiRDB Version 8 システム運用ガイド」の「UAPの状態監視(シンクポイントダンプ有効化のスキップ回数監視機能)」の「全システムログファイルの容量から計算する方法」を参照し見積もってください。

注※8
影響分散スタンバイレス型系切り替え適用ユニットの場合に加算します。