oracle表压缩技术(BAISCvsOLTP)(二)

2014-11-24 09:16:51 · 作者: · 浏览: 2
----------------------------------------------- ---------- ---------- ---------------- ------------------------ T21 666 10 DISABLED T22 225 10 ENABLED OLTP T23 370 10 ENABLED OLTP T24 225 10 ENABLED OLTP T25 666 10 ENABLED OLTP T26 225 10 ENABLED OLTP
比较分析
OTLP压缩实现了对DML操作的压缩(T23表),主要原理如图所示,当向空块插入数据时,数据不压缩,只有当数据超过一个阀值时,此时oracle才对数据块进行压缩,而且可能对同一个数据块多次压缩

\

转化为压缩表的3方法

1. ALTER TABLE … COMPRESS FOR OLTP
此方法对现有数据不压缩,对以后的DML语句相关数据进行OLTP压缩

2. Online Redefinition (DBMS_REDEFINITION)
对现有和以后的数据均压缩。使用DBMS_REDEFINITION可以在线对表进行操作,可以使用并行操作。分区表的global index是个例外,需要在线重定义之后重建索引

3. ALTER TABLE … MOVE COMPRESS FOR OLTP
对现有和以后的数据均压缩。在move过程中,会对表加排它(X)锁,DML操作会被阻塞,可以使用并行提高性能。move操作会导致索引失效,因此move之后需要重建索引。move操作可以改变segment的表空间