データ圧縮

データ圧縮により、順編成ファイルまたは索引ファイルのデータを圧縮できます。この COBOL システムでは 2 つの圧縮メカニズムがあります。1 つはランレングス エンコーディング (タイプ 1) で、もう 1 つは拡張ランレングス エンコーディング (タイプ 3) です。

ファイルをランレングス エンコーディングで定義すると、繰り返される文字列はいずれも、繰り返し回数を伴う 1 文字として格納されます。

データ圧縮は、DATACOMPRESS コンパイラ指令を使用して有効にします。

固定長構造の順編成ファイルに対してデータ圧縮を指定すると、可変長構造の順編成ファイルに変換されます。

ファイルで使用するデータ圧縮タイプは、そのファイルに対する SELECT 文の処理時に最後に処理された DATACOMPRESS 指令で決定されます。そのため、以下の形式の行を使用して、データ圧縮タイプを個々のファイルに対して指定できます。

$SET DATACOMPRESS

これは、SELECT 文の直前に記述します。別のファイルを処理する前には、必ず $SET NODATACOMPRESS で圧縮を無効にする必要があります。

DATACOMPRESS コンパイラ指令の詳細については、「DATACOMPRESS」トピックを参照してください。

注:

圧縮された順編成ファイルに REWRITE 文を使用することはお勧めしません。これは、REWRITE 処理が、圧縮された新しいレコードの長さと圧縮された古いレコードの長さが同じ場合にしか成功しないためです。