ここでは,HiRDBのシステム共通定義のオペランドである,pd_max_access_tablesの見積もり方法について説明します。
なお,HiRDBのシステム共通定義の詳細については,マニュアル「HiRDB システム定義」を参照してください。
pd_max_access_tablesに指定する値は,次に示す式で求めた値を目安としてください。
<目安の値>=50×N+M1×L
次に,N,M1およびLに代入する値について説明します。
- N:
- 1トランザクションの間にコールするメソッドの個数です。ただし,次のメソッドおよび関数は除きます。
- 各クラスのコンストラクタメソッドおよびデストラクタメソッド
- CdbrCompoundクラスのメソッド
- CdbrCoreクラスのメソッド
- CdbrDMAクラスの次に示すメソッド
GetOIID,GetType,ReleaseObject,SetOIID
- CdbrEqlStatementクラスのメソッド
- CdbrSession::GetClassTypeメソッド以外のCdbrSessionクラスのメソッド
- CdbrVariableArrayクラスのメソッド
- dbrDelete関数
- M1:
- 検索をCdbrEqlStatementクラスの機能によって実現している場合,この値を使用します。
- CdbrEqlStatement::Executeメソッドをコールすることによって発行されるSQLが参照するHiRDBの表数です。
- CdbrEqlStatement::Executeメソッドに指定するedmSQL文ごとに,次の式で値を求め,その中でいちばん大きな値をM1としてください。
M1=主問い合せのクラス結合数+副問い合せのクラス結合数
+SELECT句に指定しているextracts関数の数
+SELECT句に指定した別表のVariableArray型プロパティの数+10
- L:
- 1トランザクションの間にコールするCdbrEqlStatement::Executeメソッドの数です。