[学习笔记]Teradata数据压缩

版权声明:欢迎转载,注明出处即可 https://blog.csdn.net/yolohohohoho/article/details/87439118

工作上需要研究Teradata CLOB类型,因为去看了官方文档,自己做了点笔记如下:

Teradata数据压缩

概况

本章描述了几种数据压缩选项,它能够帮助你减少磁盘空间的使用,在某种情况下,还可以提高I/O性能。

  • 多值压缩(MVC)
  • 算法压缩(ALC)
  • 行压缩
  • 行标题压缩
  • 自动压缩
  • 哈希索引和连接索引行压缩
  • 块级压缩(BLC)

压缩的目标是利用最少的位数(bits)来准确的表示信息。
压缩方法可分为物理方法和逻辑方法。
物理方法独立于数据本身意义对其进行重新编码, 而逻辑方法则通过一个更紧凑的集合来替换。

压缩通过在单位物理容量中存储更多的逻辑数据来降低存储成本。压缩产生更小的行,因此每个可以数据块存储更多行以减少数据块数量。

压缩还可以提高系统性能,因为每个查询返回更少的物理数据,同时压缩过的数据在内存中保持压缩状态,因此FSG[1]缓存可容纳更多行,从而减少磁盘I/O的大小。

[1]FSG cache: File Segment cache, a Teradata caching approach.

算法压缩可以是有损或者是无损的,这取决于所选用的的算法。

TD的压缩一个很小的初始成本,但是即使对于小表的查询,主要选择的压缩方法能过减小表的大小,这就是一个净赢。

块级压缩

数据块是I/O基本物理单位,用于定义TD如何处理数据。
当你指定了块级压缩选项,TD将以压缩格式存储数据来减少存储空间。

BLC可以应用到这几种类型的表:

  • 主要数据,回退,甚至是无法重新启动的表

BLC还可以应用于这几种类型的子表:

  • BLOB, CLOB, XML, JOIN INDEX, HASH INDEX和Reference index.

BLC独立应用于其他任何应用于相同数据的压缩类型。
BLC可以使用更多的CPU来动态压缩和解压数据,所以查询性能是否随BLC而增强取决于性能是否受I/O带宽或CPU使用率的限制。

猜你喜欢

转载自blog.csdn.net/yolohohohoho/article/details/87439118