指定したデータベースおよびテーブルで、指定したデータ型を圧縮解除、またはテーブルを圧縮解除した場合に予想される結果を示します。指定した型のいずれかに当てはまるデータが最終的にテーブルまたはデータベースに追加される場合、圧縮されません。
構文規則
UNCOMPRESS [ /Y ] table_unique
[ PRIMARY | FALLBACK | FALLBACKANDCLOBS | { WITHOUT | ONLY } CLOBS ]
[ ESTIMATE | E ]
構文要素
- /Y
- 確認のメッセージが表示されないようにします。
- table_unique
- データ ブロックが圧縮解除されるテーブルの固有の識別子。
次のオプションは、圧縮解除するデータの種類を指定します。
- PRIMARY
- 指定のデータベースまたはテーブル内での圧縮の対象となるすべてのプライマリ基本テーブルとプライマリLOBデータ。
- FALLBACK
- 指定のデータベースまたはテーブル内での圧縮の対象となるすべてのフォールバック基本テーブル データとフォールバックLOBデータ。
- FALLBACKANDCLOBS
- 圧縮の対象となるすべてのフォールバック基本テーブル データ、フォールバックLOBデータ、および指定のデータベースまたはテーブル内での圧縮の対象となるプライマリLOBデータ。
- WITHOUT CLOBS
- 指定のデータベースまたはテーブル内での圧縮の対象となる、LOBデータを除くすべてのデータ。
- ONLY CLOBS
- 指定のテーブル内での圧縮の対象となるプライマリおよびフォールバックLOBデータのみ。他のテーブルのDBは対象となりません。
次のオプションでは、データの圧縮は解除されません。
- ESTIMATE
- E
- 圧縮解除の操作が実行された後のデータ ブロック(DB)の推定サイズと、必要となるCPU使用量(DBあたりの時間)を予想します。いずれのデータも圧縮解除されません。
使用上の注意
UNCOMPRESSコマンドは、Teradataのブロック レベル圧縮(BLC)機能の一部です。
BLCは、Teradataファイル システムのデータ ブロック(DB)レベルでのデータ圧縮を可能にします。圧縮により所定のデータ量に必要なストレージの量が低減されます。DBS制御のBlockLevelCompressionフィールドで、BLCを有効または無効にできます。
システム全体、またはテーブルのさまざまなカテゴリに対して、BLCを有効または無効にできます。永久データの場合、該当するのは、プライマリ インデックス、フォールバック インデックス、対象となるLOBデータ インデックス、結合インデックス、およびハッシュ インデックスのサブテーブルです。基本行のセカンダリ インデックスとセカンダリ インデックスのフォールバック コピーが圧縮されることはありません。
BLOCKCOMPRESSION値がCREATE TABLE文またはALTER TABLE文でALWAYSに設定されているテーブルは、UNCOMPRESSコマンドを使用して圧縮解除することはできません。
UNCOMPRESSコマンドは、データの圧縮解除時にストレージ領域を消費します。圧縮解除コマンド完了後に十分なスペースを確保するために、DBS制御でUncompressReservedSpace設定を使用し、予約するスペースの容量を指定します。圧縮解除操作は、利用可能なスペースが予約した容量を下回った時点で停止します。その時点で圧縮解除を行なっているテーブルは、部分的に圧縮された状態になる可能性があります。これにより表またはデータベースの機能が影響を受けることはありません。圧縮解除を再開するためには、一部のストレージ領域を解放するか、UncompressReservedSpaceの値を下げてから、UNCOMPRESSコマンドを再発行します。
Ferretは、UNCOMPRESS操作の開始と終了をログに記録します。操作中にデータベースがリセットされると、データベース再始動後に、回復処理の一部として圧縮解除操作が続行されます。ただし、圧縮解除が続行されて完了するのは、リセット時に圧縮解除が進行中であったテーブルに関してのみです。データベースのその他の部分については、リセット前の状態のままとなります。
1つのUNCOMPRESSコマンドのインスタンスのみを、任意のタイミングにシステム上で実行できます。COMPRESSまたはUNCOMPRESSコマンドを発行した場合にエラーを受信し、実行中のいずれかのコマンドのインスタンスが他にないことが確実な場合、RESETBLCTSKCNTコマンドを使用して、COMPRESSタスクおよびUNCOMPRESSタスクの実行数をゼロにリセットします。
圧縮解除中のテーブルが同時に他のプロセスにより変更されている場合、INQUIREコマンドによりレポートされるコマンド進行状況の割合は不正確となる可能性があります。
DBS制御のPermDBSize設定とJournalDBSize設定は、これらのタイプのDBで圧縮解除サイズに対して適用されます。
COMPRESSまたはUNCOMPRESSコマンドを発行した場合にエラーを受信し、実行中のいずれかのコマンドのインスタンスが他にないことが確実な場合、RESETBLCTSKCNTコマンドを使用して、COMPRESSタスクおよびUNCOMPRESSタスクの実行数をゼロにリセットします。
関連情報
詳細情報 | 参照先 |
---|---|
DBS制御圧縮設定 | DBS制御(dbscontrol) |
COMPRESSコマンド | COMPRESS |
クエリー バンド | Teradata Vantage™- SQLデータ定義言語 - 詳細トピック、B035-1184 |
RADIXコマンド | RADIX |
RESETBLCTSKCNTコマンド | RESETBLCTSKCNT |
TABLEIDコマンド | TABLEID |