17.10 - DefragLowCylProd - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データベース ユーティリティ

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
構成
Publication ID
B035-1102-171K-JPN
Language
日本語 (日本)

シリンダのデフラグメントを開始するときの空きシリンダの数を決定します。システムによってシリンダの断片化が動的に解消されます。

システムの空きシリンダの数がこの数を下回ると、空き領域が25%以上あるが、連続するセクターが足りないためにデータ ブロックを割り当てられないシリンダで、デフラグメントが行われます。

フィールド グループ

ファイル システム

有効な範囲

0 ~ 100 空きシリンダ

デフォルト

100 空きシリンダ

変更の反映

DBS制御レコードへの書き込みが行なわれた後。

使用上の注意

シリンダは、テーブル データの変更にともない断片化されます。 データ ブロック(DB)の作成、削除、あるいはDB変更によるサイズの変化により、新たに割り当てられたシリンダで、少数の大きな空き領域が大量の小さな空き領域となります。 シリンダ内で大量の空きセクターが依然として存在する可能性があるものの、時間経過にともない、新たなDBを格納するのに十分な、連続した空きセクターは少なくなります。 新しいDBがシリンダに格納できない場合、空きのある新たなシリンダを見つけて割り当てる必要があります。

デフラグメントのプロセスでは、データ ブロックを整理し、空いている領域をシリンダに新たなDBが割り当てられるだけの領域に合体します。これにより、新たなデータ ストレージに空きシリンダを割り当てる必要性が減ります。このデフラグメントのプロセスは、断片化したシリンダから新しいシリンダにデータ ブロックを移動します。その新しいシリンダで各ブロックがパックされて、連続する空きセクターの1個の大きなブロックになります。DBの移動元であるシリンダは解放され、新たな割り当てに利用できます。

コストを最小限に抑えるために、バックグラウンドのデフラグメントが使用可能になるのは、空きシリンダのカウントがDefragLowCylProdフィールドの現在の値より小さくなった場合です。

このフィールドの値を0に設定すると、デフラグメントは実行されなくなります。この場合、データ ブロックを割り当てるための連続セクターが不足して、 シリンダが新しく割り当てられることになります。

この方法の欠点は、空きシリンダが貴重なリソースであり、空きシリンダがなくなるとMiniCylPacksが開始するという点です。

操作はバックグラウンドで実行されます。

パフォーマンス上の影響

このフィールドの値を低く定義すると、断片化解消操作のパフォーマンスへの影響は小さくなります。ただし、低く設定しすぎると、シリンダが早く消費されて、MiniCylPacksの実行が増える可能性があります。デフラグメントはシリンダ パックよりパフォーマンスに与える影響が小さいため、DefragLowCylProdはMiniCylPackLowCylProdより高い値に設定します。