Teradata-compression

提供:Dev Guides
移動先:案内検索

Teradata-圧縮

圧縮は、テーブルで使用されるストレージを削減するために使用されます。 Teradataでは、圧縮により、NULLを含む最大255の異なる値を圧縮できます。 ストレージが削減されるため、Teradataはブロックにより多くのレコードを保存できます。 これにより、どのI/O操作でもブロックごとにより多くの行を処理できるため、クエリの応答時間が改善されます。 圧縮は、CREATE TABLEを使用したテーブル作成時、またはALTER TABLEコマンドを使用したテーブル作成後に追加できます。

制限事項

  • 列ごとに圧縮できる値は255個のみです。
  • プライマリインデックス列は圧縮できません。
  • 揮発性テーブルは圧縮できません。

多値圧縮(MVC)

次の表は、値1、2、および3のフィールドDepatmentNoを圧縮します。 列に圧縮が適用されると、この列の値は行とともに保存されません。 代わりに、各AMPのテーブルヘッダーに値が保存され、値を示すためにプレゼンスビットのみが行に追加されます。

CREATE SET TABLE employee (
   EmployeeNo integer,
   FirstName CHAR(30),
   LastName CHAR(30),
   BirthDate DATE FORMAT 'YYYY-MM-DD-',
   JoinedDate DATE FORMAT 'YYYY-MM-DD-',
   employee_gender CHAR(1),
   DepartmentNo CHAR(02) COMPRESS(1,2,3)
)
UNIQUE PRIMARY INDEX(EmployeeNo);

複数値圧縮は、有限の値を持つ大きなテーブルに列がある場合に使用できます。