Symfoware Server RDB運用ガイド(データベース定義編) - FUJITSU -
目次 索引 前ページ次ページ

第4章 格納構造> 4.1 表の格納構造の特徴

4.1.4 ページ長の選択基準

ページとは、Symfoware/RDBがデータベースに対してI/Oを行うときの単位です。また、動作環境ファイルの実行パラメタDSO_LOCKにページ排他を指定していない、または、R_LOCKを指定していないときは、ページがロックの単位となります。ページのサイズは1、2、4、8、16、32キロバイトの6種類からDSI単位に選択できます。指定できるページサイズは、格納構造ごとに異なります。以下に格納構造ごとのページ長設定の注意事項を示します。

構造

ページサイズの注意事項

SEQUENTIAL

  • 表の1行に対応するデータを1ページに収めます。ただし、BLOB型のデータは除きます。

RANDOM

  • 表の1行に対応するデータを1ページに収めます。

  • 平均入出力回数(ページ内のデータ数に依存)を考慮して、プライム部のページ長を設定する必要があります。

OBJECT

  • ページ長には必ず32を指定します。

  • 表の1行に対応するデータを1ページに収めます。

BTREE

  • インデックスのキーと実表データとの対応情報の組の値を、インデックス部およびデータ部の1ページに2件以上収めます。ページの使用率を高めるためには、余裕をもったページ長の指定が必要です。

  • ページスプリットの頻発は処理効率悪化となることから、データの追加が多いような場合、データ部のページ内に収まるデータ数が多くなるように考慮する必要があります。
    ページスプリットとは、データ部のページにデータが収まらなくなり、新しいページを切りだし、そのページと元のページとの間でデータを分配して格納する現象です。
    インデックスは、表より小さなページサイズを目安に選択します。

適切にページ長を設定することにより、柔軟な業務が適用できる反面、いくつのページサイズが最適なのか迷うこともあります。主な選択基準は以下の通りですが、一概に判断することは困難です。

要素

ページ長
1K      32K

説明

I/O効率

悪い ←---→ 良い

参照系主体の場合は大きい方が適している。

格納効率
ヒット率

低い ←---→ 高い

同一ページ内アクセス時は大きい方が有利になる。

排他競合

少ない ←-→ 多い

ページ排他では、以下のことがいえる。

  • 参照系主体の場合、大きい方が適している

  • 競合が多い場合、小さい方が適している

行排他では競合が行となるためページ長に依存しない。トータル的に大きい方が適している。

一般的にページサイズが大きいほどI/O効率が良く、ページサイズが小さいほど、排他待ちの発生は少なくなります。

ページ長を決定する場合は、選択した格納構造、格納効率、インデックスの高さ、共用バッファのチューニングとの関係、データベースのアクセス方式、ロック単位、およびトランザクションモード(独立性水準)を総合的に評価し、その表、そのインデックスにあった長さを採用してください。しかし、多くの場合、これらの要素をすべて考えたうえで決めることはまれであり、まず、以下の観点から簡単に決められます。

資源

運用形態表

設定の目安

表(注1)

参照系主体

16KB〜32KB

更新系主体

4KB〜8KB

参照・更新同程度

8KB〜16KB

インデックス(注2)

参照系主体

BASE部:16KB〜32KB
INDEX部:8KB〜16KB

更新系主体

BASE部:8KB〜16KB
INDEX部:4KB〜8KB

参照・更新同程度

BASE部:8KB〜16KB
INDEX部:4KB〜8KB

注1) 表の1行に対応するデータが、1ページ内に収まること。ただし、BLOBは除きます。

注2) インデックスのキーと実表を示す情報の組の値を、1ページに2件以上収めます。

備考. 排他の単位がページロックの場合です。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006