📜  Teradata-压缩(1)

📅  最后修改于: 2023-12-03 14:47:56.431000             🧑  作者: Mango

Teradata 压缩

Teradata 是一种用于数据仓库的关系型数据库管理系统(RDBMS)。由于数据量通常很大,因此在 Teradata 中进行数据压缩非常重要,可以减少存储空间、提高查询性能等。

Teradata 数据压缩类型

在 Teradata 中,可用的压缩类型包括:

  • 系统压缩(System Compression)
  • 统计压缩(Statistics Compression)
  • 压缩(Compression)
  • 字典压缩(Dictionary Compression)
  • 全部压缩(Full Compression)
系统压缩

系统压缩是在 Teradata 数据库表空间级别完成的压缩。它不需要对表进行任何修改,因此对应用程序是无感知的。使用系统压缩,可以将表的存储空间减少 40% ~ 60%。

可以通过以下命令启用系统压缩:

ALTER TABLE table_name MODIFY PRIMARY INDEX COMPRESS SYSTEM;
统计压缩

统计压缩是在表级别完成的压缩。它利用了 Teradata 数据库统计信息的一些特性,可以压缩较小的表,从而节省存储空间。

可以通过以下命令启用统计压缩:

COLLECT STATISTICS ON table_name INDEX(primary_index) COLUMN(column_name) COMPRESS;
压缩

压缩是在列级别完成的压缩。它基于列中数据的一些特性,例如数据类型、数据范围等等,来确定最佳的压缩算法。

可以通过以下命令启用压缩:

ALTER TABLE table_name MODIFY COLUMN column_name COMPRESS ;
字典压缩

字典压缩是在列级别完成的压缩。它使用了一个字典来存储所有可能的值,并将实际值替换为字典中的值。字典压缩适用于具有重复值的列。

可以通过以下命令启用字典压缩:

ALTER TABLE table_name MODIFY COLUMN column_name COMPRESS DICTIONARY;
全部压缩

全部压缩结合了以上几种压缩类型的优点,可以使表达到最大的压缩效果。全部压缩通常需要通过多次尝试来确定最佳压缩算法。

可以通过以下命令启用全部压缩:

ALTER TABLE table_name MODIFY PRIMARY INDEX COMPRESS ALL;
总结

通过使用 Teradata 压缩技术,可以减少存储空间、提高查询性能等。可以根据业务需求选择适合的压缩方式,实现最优的压缩效果。