アプリケーションからのデータベースアクセスに伴い、RDBプロセス内に獲得するメモリ量です。
データベースアクセスの使用メモリ量の見積り対象は、アクセス対象の表を構成するDSI(表とインデックスのDSI)のうち、当該RDBシステムに偏在するDSIです。(当該RDBシステム配下に定義する表DSIとインデックスDSIが対象)
データベースアクセスの使用メモリ量の概算は、次の式で見積もってください。
データベースアクセスの使用メモリ量 = 排他情報の使用メモリ量 ‥ (A) + インデックス更新情報の使用メモリ量 ‥ (B) + 表更新情報の使用メモリ量 ‥ (C) (注)
注) 表更新情報の使用メモリ量は、SEQUENTIAL構造かつ、ORDER(1)を指定した場合に必要です。
データベースの排他制御で使用するメモリ量です。
排他情報の使用メモリ量の概算は、次の式で見積もってください。
排他情報の使用メモリ量
= ΣDSI単位の排他を使用するトランザクション単位の使用メモリ量
+ Σページ単位の排他を使用するトランザクション単位の使用メモリ量
+ Σ行単位の排他を使用するトランザクション単位の使用メモリ量
DSI単位の排他を使用するトランザクション単位の使用メモリ量
= アクセス対象のDSI数 × 128
ページ単位の排他を使用するトランザクション単位の使用メモリ量
= アクセス対象のページ数 × 256
行単位の排他を使用するトランザクション単位の使用メモリ量
= アクセス対象のレコード数 × 256
+ キー排他情報の使用メモリ量
キー排他情報の使用メモリ量
= ΣインデックスDSI単位のキー排他情報の使用メモリ量
インデックスDSI単位のキー排他情報の使用メモリ量
= 2068 + 更新キー値数 × 2128
更新キー値数
= 追加(INSERT)するキー値数
+ 更新(UPDATE)するキー値数
DSI単位の排他を使用するトランザクション単位の使用メモリ量の総和です。
DSI単位の排他を使用するトランザクション単位に使用メモリ量を求め、それらを合計します。
ページ単位の排他を使用するトランザクション単位の使用メモリ量の総和です。
ページ単位の排他を使用するトランザクション単位に使用メモリ量を求め、それらを合計します。
行単位の排他を使用するトランザクション単位の使用メモリ量の総和です。
行単位の排他を使用するトランザクション単位に使用メモリ量を求め、それらを合計します。
トランザクション内でアクセスするDSI数です。(表とインデックスのDSI数の合計)
トランザクション内でアクセスするページ数です。(表とインデックスのページ数の合計)
アクセスするページ数を見積もることは困難ですので、ページ単位の排他であっても、行単位の排他としてメモリ見積りすることをお勧めします。ページ単位の排他より、行単位の排他の方が見積り結果が大きくなることが予想されますが、多めに見積もる方が安全です。
トランザクション内でアクセスするレコード(行)数です。(表のレコード(行)数)
インデックスDSI単位のキー排他情報の使用メモリ量の総和です。
行単位の排他を使用するトランザクション内で更新するインデックスDSI単位に、キー排他情報の使用メモリ量を求め、それらを合計します。
当該インデックスDSIの更新キー値数です。
追加(INSERT)するキー値数と、更新(UPDATE)するキー値数の合計です。
キー排他情報では、削除(DELETE)するキー値数は、更新キー値数に含みません。
行単位の排他を使用し、インデックスのキー値を更新するときに使用するメモリ量です。
インデックス更新情報の使用メモリ量の概算は、次の式で見積もってください。
XML構造のインデックスを使用する場合は、“BTREE構造データ部のページ長”を“XML構造データ部のページ長”に置き換えて読んでください。
インデックス更新情報の使用メモリ量 = Σトランザクション単位のインデックス更新情報の使用メモリ量 トランザクション単位のインデックス更新情報の使用メモリ量 = ΣインデックスDSI単位のインデックス更新情報の使用メモリ量 インデックスDSI単位のインデックス更新情報の使用メモリ量 = 更新作業用インデックス部のページ数 ×(150 + BTREE構造データ部のページ長) + 更新作業用データ部のページ数 ×(150 + BTREE構造データ部のページ長)
トランザクション単位のインデックス更新情報の使用メモリ量の総和です。
行単位の排他を使用するトランザクション単位に、インデックス更新情報の使用メモリ量を求め、それらを合計します。
インデックスDSI単位のインデックス更新情報の使用メモリ量の総和です。
行単位の排他を使用するトランザクション内で更新するインデックスDSI単位に、インデックス更新情報の使用メモリ量を求め、それらを合計します。
更新作業用のインデックス部のページバッファ数です。
参照
“RDB運用ガイド(データベース定義編)”の“データベーススペースの所要量の見積り”の“BTREE構造のインデックス部”を参照し、更新作業用インデックス部のページ数を見積もってください。
ただし、“データ部のページ数”で計算する箇所を“更新作業用データ部のページ数”で、“インデックス部のページ長”で計算する箇所を“BTREE構造データ部のページ長”で計算してください。
XML構造のインデックスを使用する場合は、“RDB運用ガイド(XMLアダプタ編)”の“XMLデータのインデックスの容量見積り”を参照してください。
更新作業用のデータ部のページバッファ数です。
参照
“RDB運用ガイド(データベース定義編)”の“データベーススペースの所要量の見積り”の“BTREE構造のデータ部”を参照し、更新作業用データ部のページ数を見積もってください。
ただし、“表のレコード数”で計算する箇所を“更新キー値数”で計算してください。
XML構造のインデックスを使用する場合は、“RDB運用ガイド(XMLアダプタ編)”の“XMLデータのインデックスの容量見積り”を参照してください。
当該インデックスDSIの更新キー値数です。
追加(INSERT)するキー値数と、更新(UPDATE)するキー値数×2と、削除(DELETE)するキー値数の合計です。
更新キー値数 = 追加(INSERT)するキー値数 + 更新(UPDATE)するキー値数 × 2 + 削除(DELETE)するキー値数
当該インデックスDSI(BTREE構造)のデータ部のページ長です。(バイト)
更新作業用インデックス部のページ長、および更新作業用データ部のページ長は、当該インデックスDSI(BTREE構造)のデータ部のページ長となります。
表DSI単位の表更新情報の使用メモリ量の総和です。
SEQUENTIAL構造かつ、ORDER(1)を指定した表DSIに対して、行単位の排他を使用したトランザクション内で更新する表DSI単位に、表更新情報の使用メモリ量を求め、それらを合計します。
表更新情報の使用メモリ量の概算は、次の式で見積もってください。使用メモリ量は最大で使用する場合のメモリ量となります。
表更新情報の使用メモリ量 = 表DSI数(注1) × ((更新作業用表データ部のページ数 / 11,264(注2)) × 4K)
注1) SEQUENTIAL構造、かつORDER(1)を指定した表DSI数です。
注2) 小数点以下を整数に切り上げます。
表DSIに割付けたページ数です。
参照
更新作業用表データ部のページ数の見積りについては、“RDB運用ガイド(データベース定義編)”の“データベーススペースの所要量の見積り”を参照してください。