ページの先頭行へ戻る
Interstage Business Application ServerV10.1.0 チューニングガイド
Interstage

4.3 RDBシステムの構成で変動するメモリ量

RDBシステムの構成(ログ環境、ユーザログテーブル定義数、ユーザログテーブル容量など)で変動するメモリ量です。
RDBシステムの構成で変動するメモリ量の概算は、以下の式で見積もってください。

RDBシステムの構成で変動するメモリ量
      = ログ環境で変動するメモリ量
        + ユーザログテーブル構成で変動するメモリ量

    ログ環境で変動するメモリ量
          = ログインデックスの使用メモリ量
            + ロールバック用バッファ

        ログインデックスの使用メモリ量
              = ブロック長 + 2
                × BLK[248 × トランザクションエントリ数 + 304]

        ロールバック用バッファ
              = 100KB × min (トランザクションエントリ数 ÷ 2, 100)

    ユーザログテーブル構成で変動するメモリ量
          = RDBディクショナリのオブジェクト情報の使用メモリ量   ・・・ (A)
            + RDBディレクトリファイル情報の使用メモリ量         ・・・ (B)
ブロック長

テンポラリログファイル作成時に指定するブロック長です。
ブロック長は、rdblogコマンドのioオプションで指定します。ioオプションを省略する場合は512です。

参照

rdblogコマンドの指定方法の詳細は、“Interstage Business Application Server リファレンス”を参照してください。

トランザクションエントリ数

当該ロググループのテンポラリログファイル作成時に指定するトランザクションエントリ数です。

BLK[  ]

テンポラリログファイルのブロック長(512バイト)バウンダリで括弧“[ ]”内を切り上げます。

min()

列挙した引数のなかの最小値を表現します。

(A) RDBディクショナリのオブジェクト情報の使用メモリ量

RDBディクショナリのオブジェクト情報で使用するメモリ量です。
概算は、以下の式で見積もってください。

RDBディクショナリのオブジェクト情報の使用メモリ量
      = 基礎値 (2458KB)
        + オブジェクト管理情報の使用メモリ量                              ‥ (1)
        + ユーザログテーブルのオブジェクト情報の使用メモリ量
        + スキーマのオブジェクト情報の使用メモリ量
        + 表のオブジェクト情報の使用メモリ量

    ユーザログテーブルのオブジェクト情報の使用メモリ量
          = ユーザログテーブルのデータベース数 × 4KB

    スキーマのオブジェクト情報の使用メモリ量
          = スキーマ数 × 4KB

    表のオブジェクト情報の使用メモリ量
          = Σ表単位のオブジェクト情報の使用メモリ量                       ‥ (2)
ユーザログテーブルのデータベース数

定義するユーザログテーブルのデータベースの数です。

スキーマ数

定義するスキーマの数です。

Σ表単位のオブジェクト情報の使用メモリ量

表単位のオブジェクト情報の使用メモリ量の総和です。
定義する表単位にオブジェクト情報の使用メモリ量を求め、それらを合計します。

◆(1) オブジェクト管理情報の使用メモリ量

オブジェクト管理情報の使用メモリ量(概算)は、以下の式で見積もってください。

オブジェクト管理情報の使用メモリ量
      = ユーザログテーブルのデータベース数 × 1024
        + スキーマ数 × 1024
        + 表数 × 10240
        + 表DSO数 × 1024
        + 表DSI数 × 512
ユーザログテーブルのデータベース数

定義するユーザログテーブルのデータベースの数です。

スキーマ数

定義するスキーマの数です。

表数

定義する表の数です。

表DSO数

定義する表のDSOの数です。

表DSI数

定義する表のすべてのDSIの数です。

◆(2) 表単位のオブジェクト情報の使用メモリ量

表単位のオブジェクト情報の使用メモリ量(概算)は、以下の式で見積もってください。

表単位のオブジェクト情報の使用メモリ量
      = 4KB[10240 + DSO情報 + 表DSI情報 
        + デフォルト値情報]
        + 8KB

    DSO情報
          =(表DSO数 )
            ×(1024 + 40 )

        表DSO数 = 1

    表DSI情報
          = Σ表DSI単位の情報

        表DSI単位の情報
              = 512 

    デフォルト値情報
          = ΣDEFAULT句を指定する列単位の情報

        DEFAULT句を指定する列単位の情報 = 省略値のデータ長
4KB[  ]

4KB(4096バイト)バウンダリで括弧“[ ]”内を切り上げます。

Σ表DSI単位の情報

表DSI単位の情報量の総和です。
当該表の表DSI単位に情報量を求め、それらを合計します。

ΣDEFAULT句を指定する列単位の情報

DEFAULT句を指定する列単位の情報量の総和です。
当該表のDEFAULT句を指定する列単位に情報量を求め、それらを合計します。

省略値のデータ長

当該列のDEFAULT句で指定する省略値のデータ長です。
省略値のデータ長は、以下のとおりです。

(B) RDBディレクトリファイル情報の使用メモリ量

RDBディレクトリファイル情報で使用するメモリ量は、以下の式で見積もってください。

RDBディレクトリファイル情報の使用メモリ量 
      = RDBディクショナリ用のRDBディレクトリファイル情報の使用メモリ量     ‥ (1)
        + ユーザログテーブル用のRDBディレクトリファイル情報の使用メモリ量  ‥ (2)
        + メモリ管理情報の使用メモリ量                                     ‥ (3)

◆(1) RDBディクショナリ用のRDBディレクトリファイル情報の使用メモリ量

RDBディクショナリ用RDBディレクトリファイル情報の使用メモリ量は、以下のようになります。

RDBディクショナリ用のRDBディレクトリファイル情報の使用メモリ量
    =1(メガバイト)

◆(2) ユーザログテーブル用のRDBディレクトリファイル情報の使用メモリ量

ユーザログテーブル用のRDBディレクトリファイル情報の使用メモリ量は、以下の式で見積もってください。割り算の結果の小数点以下は、整数に切り上げます。

ユーザログテーブル用のRDBディレクトリファイル情報の使用メモリ量
      =(4                                              (メガバイト)
        +ユーザログテーブルのデータベース数 × 2.1
        +データベーススペース数 × 1.1
        +(CYCLIC構造のDSI数) × 1.4
        +ページ管理域)÷ 256

    ページ管理域 =(ΣDSI単位のページ数)÷ 8704

        DSI単位のページ数 = Σ(スペース割り付け量 ÷ ページ長)
ユーザログテーブルのデータベース数

定義するすべてのユーザログテーブルデータベースの数です。

データベーススペース数

定義するすべてのデータベーススペースの数です。

DSI数

定義するすべてのDSIの数です。

ページ管理域

ページ管理域の計算(割り算)結果の小数点以下は、整数に切り上げます。さらに、ページ管理域の計算(割り算)結果が、定義する全DSI数未満の場合は、DSI数に切り上げます。

ΣDSI単位のページ数

定義するDSI単位にページ数を求め、それらを合計した値です。

DSI単位のページ数

各ページ長に対する割り付け量から算出したページ数を合計した値です。格納構造により次のように算出します。なお、単位はすべてキロバイトです。

CYCLIC構造の場合:

“DATA部の割り付け量÷ページ長”の値です。

◆(3) メモリ管理情報の使用メモリ量

メモリ管理情報の使用メモリ量は、次の式で見積もってください。

割り算の結果の小数点以下は、整数に切り上げます。

メモリ上管理情報の使用メモリ量(メガバイト)
      =(7.3
        + ユーザログテーブルのデータベース数 × 0.1
        + データベーススペース数 ×0.1
        + (CYCLIC構造のDSI数) × 3.1
        )÷ 256
        + ローデバイス制御情報の使用メモリ量    (注)

    ローデバイス制御情報の使用メモリ量(メガバイト)
          =1.1+バッファ領域の使用メモリ量

        バッファ領域の使用メモリ量(メガバイト)
              = (2)のメモリ量が16メガバイト以下の場合:(2)の値
                 (2)のメモリ量が16メガバイト以上の場合:16メガバイト

注) RDBディレクトリファイルをローデバイスに配置している場合(RDB構成パラメタファイルにRDBDIRSPACEを指定)にだけ見積もってください。

ユーザログテーブルのデータベース数

定義するすべてのユーザログテーブルのデータベースの数です。

データベーススペース数

定義するすべてのデータベーススペースの数です。

DSI数

定義するすべてのDSIの数です。

ローデバイス制御情報の使用メモリ量

RDBディレクトリファイルをローデバイスに配置している場合(RDB構成パラメタファイルにRDBDIRSPACEを指定)、ローデバイス制御情報のメモリ量を追加します。RDBディレクトリファイルをUNIX系ファイルに配置している場合は、メモリ量は0です。

バッファ領域の使用メモリ量(メガバイト)

RDBディレクトリファイルをローデバイスに配置している場合、RDBシステムはバッファ領域を介してローデバイス上のRDBディレクトリファイルを参照・更新しています。
バッファ領域の使用メモリ量は、“◆(2) ユーザログテーブル用のRDBディレクトリファイル情報の使用メモリ量”によって変わります。

(2)のメモリ量が16メガバイト以上となる場合  :
バッファ領域は16メガバイト固定となります。
(2)のメモリ量が16メガバイト以下となる場合  :
バッファ領域は(2)のメモリ量となります。