在《Oracle 和 MySQL 的 JDBC 到底有多慢》中我们测试过 Oracle的JDBC读出性能,现在再来测试一下写入情况。
1. 数据来源
使用TPCH生成的数据,选用其中的part表来做测试,数据记录为2000万行,9个字段。它生成的原始文本文件名为part.tbl,文件大小为2.4G。
测试时先将文本读入内存形成内存对象,然后再写入,文本读入的时间不计在内。
2. 测试环境
CPU 2个Intel3014 ,主频1.7G,共12核,内存64G。
所有测试均在本机上完成,没有消耗网络传输时间。
3. JDBC写入测试
通过Oracle提供的JDBC接口,用SQL语句执行数据写入。
Java写起来麻烦,用SPL脚本执行测试:
A | ||
1 | =file("/home1/tbl/part.tbl").import(;,"|") | /获得要写入的数据 |
2 | =now() | /记录时间 |
3 | =connect("oracle") | /连接数据 |
4 | =A3.execute(A1,"INSERT INTO PART (P_PARTKEY, P_NAME, P_MFGR, P_BRAND, P_TYPE, P_SIZE, P_CONTAINER, P_RETAILPRICE, P_COMMENT) VALUES (?,?,?,?,?,?,?,?,?)",#1,#2,#3,#4,#5,#6,#7,#8,#9) | /把A1中的记录逐条用SQL写入part表 |
5 | =A3.close() | /关闭连接 |
6 | =interval@s(A |