Exadata 混合列压缩之query low
database, Exadata September 17th, 2011做好《购买准备》,恰好也购买了exadata之后,如果就立马上线了,那我觉得除了佩服你之外,再无话可说了。工欲善其事,必先利其器。所以不花上很大的精力做些测试,终究是不得法的。
前几日碰到一朋友,购买的是Exadata2-8,好家伙,那可是exadata目前的顶配阿。但本身工作就很繁忙的DBA们,没有时间花大力气来做这些各种各样的测试怎么办呢?从最大化资源利用率和资本效率的角度来看,outsourcing可能是最优的方式,相比起上线之后总觉得还差点什么相比,前期的付出永远是值得的。
闲话到此,我们先进行ehcc的测试。对于datawarehouse来说,动辄上百TB甚至PB的数据量,如果能在不影响查询性能的前提下,大幅降低存储空间,那对于IT部门成本的节约就不是几块磁盘那么简单了。
本次测试的基本情况如下:
基础表:boypoo 记录数:约9500万行
测试表: boypoo_ehcc 记录数:完全复制boypoo
测试内容(所有测试都在同一台exadata机器上):
a.建表速度
b.数据加载速度没有测试
c.同一个复杂SQL语句的查询速度(出于业务安全的目的,不贴出具体的SQL语句)
d.差异之处:原表是分区表,ehcc后没有分区
e.SQL脚本名:非压缩表SQL boypoo_test.sql ,压缩表SQL: boypoo_ehcc_test.sql
原始SQL的执行情况:
SQL> set autot trace statics timing on
SQL> @boypoo_test.sql
12 rows selected.
Elapsed: 00:01:48.08
Statistics
———————————————————-
2872 recursive calls
0 db block gets
26147198 consistent gets
2270136 physical reads
1108 redo size
1291 bytes sent via SQL*Net to client
524 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
2 sorts (memory)
0 sorts (disk)
12 rows processed
创建压缩表:
SQL> create table boypoo_ehcc compress for archive low as select * from boypoo;
Table created.
Elapsed: 00:29:28.94
查看压缩后的SQL查询:
SQL> @boypoo_ehcc.sql
12 rows selected.
Elapsed: 00:01:16.74
Statistics
———————————————————-
27 recursive calls
0 db block gets
22071073 consistent gets
569532 physical reads
6508 redo size
1301 bytes sent via SQL*Net to client
524 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
12 rows processed
压缩前后的空间占用比:
SQL> select segment_name,sum(bytes) from dba_segments where segment_name like ‘BOYPOO%’ group by segment_name;
SEGMENT_NAME SUM(BYTES)
——————————————————————— —————-
BOYPOO_EHCC 4676648960
BOYPOO 25761415168
Elapsed: 00:00:00.00
通过以上测试,我们可以看出:
响应时间(秒) 逻辑读 物理读 SIZE(MB)
boypoo : 108 26147198 2270136 24568
boypoo_ehcc: 76 22071073 569532 4460
变化*倍数 : 29% 15% 75% 82%
*注:变化是用公式(ehcc-boypoo)/boypoo 计算得出,响应时间和SIZE是减少,其余两个是提高。
也许表的类型、字段类型不同,上述比值会有差异,不过从上面的对比我们可以看出,ehcc还是值得尝试的。
PS:最后一个表格的编辑很浪费时间哦

Recent Comments