Interstage Application Server Smart Repository運用ガイド
目次 索引 前ページ次ページ

付録D RDB(Symfoware/RDB)資源の見積もり式

D.7 テンポラリログファイルの見積もり式

 テンポラリログファイルの見積もり式について説明します。

 最初に同時実行アプリケーション数や更新BIログ量などにあわせて以下の項目を見積もります。

 次にBIログ域サイズやデータベースリカバリ処理時間(ダウンリカバリ時間)の目標値にあわせて以下の項目を見積もります。

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

 トランザクションエントリ数の見積もり式を以下に示します。
 なお、ロードシェア運用で、フラッシュトリートメントリカバリ運用を行う場合は、見積もり値を2倍にしてください。

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

 トランザクションエントリ数によって、テンポラリログインデックス域のサイズが決まります。以下の式によってログインデックス部のサイズを見積もってください。

Symfoware Server Enterprise Extended Editionの場合

テンポラリログインデックス域のサイズ = ブロック長 + 2 × BLOCK(248 × T + 304) (バイト)

  T          :  トランザクションエントリ数 
  ブロック長 :  テンポラリログ域のブロック長です。
                テンポラリログファイル作成時にioオプションで
                指定する値です。
                特に指定しない場合は、512バイトです。
  BLOCK( )   :  カッコ内の式を、ブロックバウンダリで切り上げます。

 

Symfoware Server Enterprise Edition、およびSymfoware Server Standard Editionの場合

テンポラリログインデックス域のサイズ = ブロック長 + 2 × BLOCK(240 × T + 304) (バイト)

  T          :  トランザクションエントリ数
  ブロック長 :  テンポラリログ域のブロック長です。
                テンポラリログファイル作成時にioオプションで
                指定する値です。
                特に指定しない場合は、512バイトです。
  BLOCK( )   :  カッコ内の式を、ブロックバウンダリで切り上げます。

 

 Symfoware Server Enterprise Extended Editionでブロック長が512(バイト)、トランザクションエントリ数が256の場合

テンポラリログインデックス域のサイズ = 512 + 2 × BLOCK(248 × 256 + 304) 
                             = 512 + 2 × 64,000
                             = 128,512 (バイト)

■トランザクションの更新データ量と多重度

 トランザクションの更新データ量は、“ログ量の見積もり式”を参照し、見積もってください。

 トランザクションの多重度は、同時に実行するトランザクション数の最大値をもとに、見積もってください。
 なお、テンポラリログファイルは、16Gバイト未満で作成してください。

 トランザクションが収集するログにトランザクション間でばらつきが大きい場合は、本見積もり式の誤差が大きくなるため、実際に動作させて、必要ならテンポラリログファイルを変更してください。

 運用を続けているうちにテンポラリログファイルの容量を変更しなければならなくなった場合は、rdblogコマンドで変更することができます。

■BIログ域サイズ

 BIログ域は、トランザクション多重度およびそのトランザクションが出力するBIログ量を観点にして見積もります。トランザクションが収集するログにトランザクション間でばらつきが大きい場合は、本見積もり式の誤差が大きくなるため、実際に動作させて、必要ならテンポラリログファイルを変更してください。
 なお、ロードシェア運用で、フラッシュトリートメントリカバリ運用を行う場合は、見積もり式の値を2倍にしてください。

BIログ域のサイズ = Lb × トランザクションエントリ数

  Lb :  トランザクションの更新ログ量の最大値(バイト数)

■ダウンリカバリ時間

 データベース運用中にシステムダウンが発生したときに、Symfoware/RDBの再起動または切替えの延長で行うデータベースのリカバリ処理の時間です。
 システムダウン発生後の再起動時間の目標値(お客さまの要件など)から、ダウンリカバリ時間を検討する必要があります。

■AIログ域サイズ

 AIログ域のサイズは、原則としてリカバリログ量を基準に決定します。AIログ域全体サイズは、リカバリログ量のおよそ2倍程度を目安にします。
 ただし、リカバリ時間を抑えたい場合でも、AIの全体サイズが少なすぎると、トランザクション実行中に枯渇が発生する危険がありますので全体サイズは、BIサイズ以下とならない容量が必要となります。
 なお、ロードシェア運用で、フラッシュトリートメントリカバリ運用を行う場合は、見積もり式の値を2倍にしてください。

X = リカバリログ量 × 2 
Y = BIログ域サイズ

AIログ域のサイズ = MAX(X,Y) ・・ X、Yどちらかの多い方を選択してください。

 Advanced Backup Controllerを使用する場合は、バックアップ取得期間のログ量が増加します。以下の見積もり式により算出した値を、AIログ域のサイズに加算してください。
 算出結果が負となった場合は、本ログ量について考慮する必要はありません。

AIログ増分 = O × P × n - R

  O:  1秒あたりの1データベーススペースへの書き込み回数 (注1)
  P:  ページ長(単位:バイト)
  n:  データベーススペース数
  R:  リカバリログ量(単位:バイト)

 注1) Oについては、sarコマンドによる実測データから統計的に算出することを推奨します。見積もり段階では以下を目安にしてください。

 算出例を以下に示します。

O:  1秒あたりの1データベーススペースへの書き込み回数 = 300 × 1 = 300
K:  トランザクションあたりの更新ページ枚数 = 1
T:  1秒あたりの平均トランザクション量 = 300
P:  ページ長 = 32,768(32Kバイト)
n:  データベーススペース数 = 3
R:  リカバリログ量 = 10,485,760(10Mバイト)

AIログ増分 = 300 × 32,768 × 3 - 10,485,760
           = 19,005,400(約19Mバイト)

 

■リカバリログ量

 リカバリログ量は、定常性能およびダウンリカバリ時間に影響を与えます。RDBシステムは、リカバリログ量を一定に保つように、一定間隔で、データベースバッファからディスクへの書込みを行います。

 リカバリログ量が少ない場合は、データベースバッファの書込み頻度が増えるため、定常性能に悪い影響を与える可能性があります。
 リカバリログ量が多い場合は、ダウンリカバリ時間が長くなります。
 したがって定常性能を重視する場合は、ダウンリカバリ時間が運用に問題ない程度までリカバリログ量を多くとるようにしてください。

 ただし、フラッシュトリートメントリカバリ機能を利用する場合は、ダウンリカバリ時間の計算方法が異なります。以下にフラッシュトリートメントリカバリ機能を利用した場合と、利用しない場合に分けて説明します。

 フラッシュトリートメントリカバリ機能についての詳細は、Symfoware Serverのマニュアル“クラスタ導入運用ガイド”を参照してください。

フラッシュトリートメントリカバリ機能を利用する場合

 フラッシュトリートメントリカバリ機能を利用する場合のダウンリカバリ時間は、以下の式で見積もります。

同期フラッシュトリートメントリカバリ運用の場合

 以下の式で見積もってください。

ダウンリカバリ時間 = リカバリログ量10Mバイトにつき約5秒

非同期フラッシュトリートメントリカバリ運用の場合

 以下の式で見積もってください。

ダウンリカバリ時間 = リカバリログ量10Mバイトにつき約3秒

 上記の非同期フラッシュトリートメントリカバリ運用の場合のダウンリカバリ時間は、仕掛りデータの閉塞処理にかかる時間であり、クラスタアプリケーションの切替えと非同期に実行するリカバリが完了しないと、データベースへのアクセスがエラーとなる可能性があります。

 すべてのデータがアクセス可能となる時間は、以下の式で見積もってください。

フラッシュトリートメントリカバリ機能を利用しない場合

 リカバリログ量の指定を省略した場合、デフォルト値は、AIログ量が1.25Mバイト以上では512Kバイトが設定され、1.25Mバイト以下ではAIログ域サイズの40%が設定されます。その場合のダウンリカバリの時間は、およそ1〜2秒です。

 リカバリログ量10Mバイトごとに5秒から15秒程度のダウンリカバリ時間がかかるとみて初期設定します。ただし、リカバリログ量と、ダウンリカバリ時間の関係は、ディスク性能、バッファのサイズにより大きく影響を受けます。

 したがって、より精度の高いリカバリログ量とするためには、実際の運用に沿った環境下でダウンリカバリ時間を実測し、rdblogコマンドの-Uオプション、-tオプションおよび-cオプションで、リカバリログ量を再設定してください。


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

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