TAMファイルのサイズの見積もり式について説明します。
TAMファイルは,レコードのデータ部以外に,管理部およびインデクス部が存在します。そのため,TAMファイルのサイズを算出する場合,管理部およびインデクス部のサイズも考慮する必要があります。また,インデクスタイプ(ツリー形式またはハッシュ形式)によってもサイズが異なります。
次にTAMファイルサイズ算出式を示します。
管理部サイズ+インデクス部サイズ+データ部サイズ
- (凡例)
- 管理部サイズ
- OpenTP1ファイルシステムのセクタ長
- インデクス部サイズ(ツリー形式の場合)
- ↑s((↑w(152+キー長)↑w)×最大レコード数)↑s
- インデクス部サイズ(ハッシュ形式の場合)
- ↑s((↑w(152+キー長)↑w)×(M+N))↑s
- データ部サイズ(ツリー形式の場合)
- ↑s((レコード長※+5)×最大レコード数)↑s
- データ部サイズ(ハッシュ形式の場合)
- ↑s((レコード長※+5)×(M+N))↑s
- M
- 最大レコード数×ハッシュエントリ使用率の計算結果を整数値に切り下げたもの(ただし,1未満となる場合は1)
- N
- 最大レコード数-1
- S
- OpenTP1ファイルシステムのセクタ長
- ↑s↑s
- OpenTP1ファイルシステムのセクタ長の整数倍に切り上げた値
- ↑w↑w
- 32ビットの場合:4の整数倍に切り上げた値
- 64ビットの場合:8の整数倍に切り上げた値
- 注※
- レコード長の単位:バイト