付録C HiRDBのシステム共通定義のオペランドpd_max_access_tablesの見積もり方法

ここでは,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メソッドの数です。