Timesten(TT)和ORACLE执行效率测试
TT是一个内存数据库,在某些方面执行要比oracle快,因为代码路径和优化器
都没有oracle那么复杂,即使把oracle的数据全部cache到sga中也没有TT快.详细
的讨论见我之前的blog中的讨论,因此在合适的时机用好TT很重要.
现在我们来测这两者倒底有多大的区别.
TT的版本:11.2.2.5.0 (perm 4G,非持久提交)
oracle版本:11.1.0.7(归档模式,16G SGA)
OS: rhel 5.5
在oracle中和TT建如下表:
create table t1
(a number(38) ,
b varchar2(100),
c varchar2(100),
d number(38),
primary key (a))
连接的方法TT使用的TTisql,oracle用的是sqlplus(beq),这样减少了网络开销,使用
工具本身的计时方法
首先看insert
SQL> declare
2 i int;
3 begin
4 for i in 1..5000000
5 loop
6 insert into t1 values(i,'asfsfsf','asdfaaaaaaaaaaaaaaaa',i+100);
7 end loop;
8 end;
9 /
PL/SQL procedure successfully completed.
Elapsed: 00:12:41.01 --oracle