2.3.6 データベース(HiRDB)の排他要求数を見積もる

HCSCサーバが使用するデータベースがHiRDBの場合,実行履歴を削除する際の排他要求数を見積もる必要があります。実行履歴の削除には,次の二つがあります。

実行履歴を削除する際の排他要求数を見積もる方法について,次に説明します。なお,見積もった排他要求数は,HiRDBの定義ファイルに定義する必要があります。HiRDBの定義ファイルおよび定義ファイルに定義するオペランドについては,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容を参照してください。

<この項の構成>
(1) プロセスインスタンスの実行履歴を削除する際の排他要求数の見積もり
(2) 電文の実行履歴を削除する際の排他要求数の見積もり

(1) プロセスインスタンスの実行履歴を削除する際の排他要求数の見積もり

見積もる対象となるSQLは,操作系SQLの「DELETE(LOCK TABLEなし,およびインデクスキー値無排他方式の場合)」です。「DELETE(LOCK TABLEなし,およびインデクスキー値無排他方式の場合)」については,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容を参照してください。

排他要求数の見積もりでは,すべてのテーブルの排他資源数を計算します。排他資源数は,表2-12に示した値を使用して計算してください。計算したら,排他資源数の中で最も大きい排他資源数に余裕値を加算して,排他要求数を見積もります。なお,見積もった排他要求数は,HiRDBの定義ファイルに定義します。

排他資源数の見積もり方法,および見積もった排他要求数の設定については,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容,および排他制御に関するオペランドの「pd_lck_pool_size」に関する内容を参照してください。

プロセスインスタンスの実行履歴を削除する際の排他資源数の見積もりに使用する値を次の表に示します。

表2-12 排他資源数の見積もりに使用する値(プロセスインスタンスの実行履歴を削除する場合)

項番項目指定値
ABCDEFGHI
1削除対象RDエリア数223222242
2削除行数1一つのビジネスプロセスに定義したアクティビティの数の最大値一つのビジネスプロセスに定義したリンクの数の最大値一つのビジネスプロセスに定義した相関セットの数の最大値一つのビジネスプロセスに定義したグローバル変数のstring型変数の数の最大値一つのビジネスプロセスに定義したグローバル変数のnumeric型変数の数の最大値一つのビジネスプロセスに定義したグローバル変数のboolean型変数の数の最大値一つのビジネスプロセスに定義したグローバル変数のメッセージ型変数の数の最大値一つのビジネスプロセスに定義したアクティビティの数の最大値の2倍
3分岐数111111111
4VARCHAR,NVARCHAR,MVARCHARの256バイト以上の列数000000000
51ページに格納できないBINARY型の列数000000100
6削除したLOBデータ数
7削除したLOBデータ格納セグメント数
8データ型プラグインまたはインデクス型プラグイン
9pd_inner_replica_controlオペランド(UNIX版HiRDBの場合)
10ルーチン
11前処理表2-13を参照してください。
(凡例)
A:CSCBP_<クラスタ名>_PROCESSテーブル
B:CSCBP_<クラスタ名>_ACTIVITYテーブル
C:CSCBP_<クラスタ名>_LINKテーブル
D:CSCBP_<クラスタ名>_CORRELATIONSETテーブル
E:CSCBP_<クラスタ名>_STR_VARIABLEテーブル
F:CSCBP_<クラスタ名>_NUM_VARIABLEテーブル
G:CSCBP_<クラスタ名>_BOOL_VARIABLEテーブル
H:CSCBP_<クラスタ名>_MSG_VARIABLEテーブル
I:CSCBP_<クラスタ名>_MSG_RELATIONテーブル
-:未定義,または未使用の項目です。

前処理の排他要求数の見積もりに使用する値を次の表に示します。前処理の排他要求数については,マニュアル「HiRDB システム定義」を参照してください。

表2-13 前処理の排他要求数の見積もりに使用する値(プロセスインスタンスの実行履歴を削除する場合)

項番項目指定値
ABCDEFGHI
1使用する表数111111111
2使用するビュー表数011011111
3列数7124844445
4インデクス数311211113
5表分割数
6インデクス分割数
7ユーザ定義型,または関数の使用
8最適化情報
9ビュー表の使用011011110
10ビュー表を構成する列数0146077770
11LOB列の定義
12ユーザ定義型の列の定義
13LOB属性
14上位型
15関数の使用
16プラグインの使用
17ルーチンの使用
(凡例)
A:CSCBP_<クラスタ名>_PROCESSテーブル
B:CSCBP_<クラスタ名>_ACTIVITYテーブル
C:CSCBP_<クラスタ名>_LINKテーブル
D:CSCBP_<クラスタ名>_CORRELATIONSETテーブル
E:CSCBP_<クラスタ名>_STR_VARIABLEテーブル
F:CSCBP_<クラスタ名>_NUM_VARIABLEテーブル
G:CSCBP_<クラスタ名>_BOOL_VARIABLEテーブル
H:CSCBP_<クラスタ名>_MSG_VARIABLEテーブル
I:CSCBP_<クラスタ名>_MSG_RELATIONテーブル
-:未定義,または未使用の項目です。

(2) 電文の実行履歴を削除する際の排他要求数の見積もり

見積もる対象となるSQLは,操作系SQLの「DELETE(LOCK TABLEなし,およびインデクスキー値無排他方式の場合)」です。「DELETE(LOCK TABLEなし,およびインデクスキー値無排他方式の場合)」については,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容を参照してください。

排他要求数の見積もりでは,表2-14に示した値を使用して,排他資源数を計算します。計算したら,排他資源数に余裕値を加算して,排他要求数を見積もります。なお,見積もった排他要求数は,HiRDBの定義ファイルに定義します。

排他資源数の見積もり方法,および見積もった排他要求数の設定については,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容,および排他制御のオペランドの「pd_lck_pool_size」の説明を参照してください。

電文の実行履歴を削除する際の排他要求数の見積もりに使用する値を次の表に示します。

表2-14 排他資源数の見積もりに使用する値(電文の実行履歴を削除する場合)

項番項目指定値
1削除対象RDエリア数次のテーブルおよびインデクスが作成されているRDエリアの数
テーブル
CSCMSG_C<クラスタ名>_EXECHISTORYテーブル
インデクス
CSCMSG_<individualname>_EXECHISTORY_I
2削除行数csmdeletehistoryコマンドで削除する際の削除対象件数※1
3VARCHAR,NVARCHAR,MVARCHARの256バイト以上の列数1
4分岐数1
51ページに格納できないBINARY型の列数1※2
6削除したLOBデータ数0
7削除したLOBデータ格納セグメント数0
8データ型プラグインまたはインデクス型プラグイン
9pd_inner_replica_controlオペランド(UNIX版HiRDBの場合)※3
10ルーチン
11前処理表2-15を参照してください。
(凡例)
-:未定義,または未使用の項目です。
注※1
csmlshistoryコマンドの-kオプションにcountを指定すると,指定した条件を満たす履歴情報の件数を調べることができます。自動運用によって,定期的に実行履歴を削除したい場合は,csmlshistoryコマンドの-kオプションにcountを指定して出力される実行履歴の数を見積もって,削除行数を計算してください。csmlshistoryコマンドについては,マニュアル「Cosminexus サービスプラットフォーム リファレンス」の「csmlshistory(電文の実行履歴情報の表示)」を参照してください。
注※2
ページ長を2,000バイト以下に設定した,データベースのRDエリアを作成した場合,「4」として計算してください。
注※3
pd_inner_replica_controlオペランドを指定した場合,見積もった排他要求数に削除対象RDエリア数として「1」を加算してください。pd_inner_replica_controlオペランドを指定した場合の詳細については,マニュアル「HiRDB システム定義」の排他資源数の見積もりに関する内容を参照してください。

前処理の排他要求数の見積もりに使用する値を次の表に示します。前処理の排他要求数については,マニュアル「HiRDB システム定義」を参照してください。

表2-15 前処理の排他要求数の見積もりに使用する値(電文の実行履歴を削除する場合)

項番項目指定値
1使用する表数1
2使用するビュー表数0
3列数30
4インデクス数2
5表分割数
6インデクス分割数
7ユーザ定義型の使用,または関数の使用
8最適化情報
9ビュー表の使用
10ビュー表を構成する列数
11LOB列の定義
12ユーザ定義型の列の定義
13LOB属性
14上位型
15関数の使用
16プラグインの使用
17ルーチンの使用
(凡例)
-:未定義,または未使用の項目です。