4. 統合テストが終了したら,pdobils コマンドを実行して,SQL オブジェクト用バッファの統計情報を 取得します。統合テストを繰り返し実行する場合は,出力ファイル名を変更して,実行してください。
10.1 ここは必ず設計しよう
ここでは,性能を向上させるために,設計が必須であるポイントについて説明します。
10.1.1 表およびインデクスの格納先 RD エリアの構成
1 つのユーザ用 RD エリアには,1 つまたは複数の表を格納できます。インデクスを格納する場合も同様 です。ここでは,性能を考慮した格納先 RD エリアの構成について,説明します。
(1) 表とインデクスの区別
表とインデクスでは,RD エリアのページサイズやグローバルバッファのヒット率の最適な値が異なりま す。したがって,表とインデクスを格納する RD エリアは区別してください。表とインデクスの格納先 RD エリアを区別する構成例を,次に示します。
図 10‒1 表とインデクスの格納先 RD エリアを区別する構成例
[説明]
• RDDATA1:表格納用 RD エリア
• RDINDX1:インデクス格納用 RD エリア
• TBL1,TBL2:表
• TBL1IDX1,TBL1IDX2:表 TBL1 のインデクス
• TBL2IDX1:表 TBL2 のインデクス
(2) 性能を優先する表の場合
グローバルバッファは RD エリア単位に割り当てるため,1 つの RD エリアに複数の表を格納すると,そ れらの表でグローバルバッファを共用します。したがって,性能を優先する表の格納先 RD エリアには,
グローバルバッファを占有できるように,その 1 表だけを格納してください。これによって,性能を優先 する表とほかの表で,グローバルバッファの設計およびチューニングを区別できます。
性能を優先する表に定義したインデクスの格納先 RD エリアも同様に,1 つの RD エリアにその 1 表のイ ンデクスだけを格納してください。
性能を優先する表の格納先 RD エリアの構成例を,次に示します。
図 10‒2 性能を優先する表の格納先 RD エリアの構成例
[説明]
• RDDATA1,RDDATA2:表格納用 RD エリア
• RDINDX1,RDINDX2:インデクス格納用 RD エリア
• TBL1,TBL2:表
• TBL3:性能を優先する表
• TBL1IDX1,TBL1IDX2:表 TBL1 のインデクス
• TBL2IDX1:表 TBL2 のインデクス
• TBL3IDX1,TBL3IDX2:性能を優先する表 TBL3 のインデクス
[注意事項]
すべての表ごとに格納先 RD エリアを分けてしまうと,RD エリアの数が多くなり,運用が複雑になり ます。性能面と運用面のトレードオフを考慮の上,格納先 RD エリアの構成を決定してください。
10.1.2 ページサイズとセグメントサイズ
ページサイズとセグメントサイズの設計方法については,次の説明を参照してください。
• ページサイズの設計方法を知りたい
マニュアル「HiRDB システム導入・設計ガイド」の「RD エリアの設計」の「ページ長の決定」を参 照してください。
• セグメントサイズの設計方法を知りたい
マニュアル「HiRDB システム導入・設計ガイド」の「RD エリアの設計」の「セグメントサイズの決 定」を参照してください。
[表特性別のポイント]
トランザクション表および履歴蓄積表のように,INSERT 文のレスポンスが求められる場合は,セグ メントサイズは大きくすることをお勧めします。セグメントサイズを大きくすると,新しいセグメント へデータを格納する際のオーバーヘッドが低減できます。