国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

Oracle和MySQL的JDBC到底有多慢?

发布时间:2019/09/21标签:   测试    点击量:

原标题:Oracle和MySQL的JDBC到底有多慢?
常常听人说,数据库的IO机能欠安,但说归说,并没有理性意识。咱们当初就来现实测试一下,罕用的Oracle和MySQL的JDBC读取机能怎样。之以是测试JDBC,是由于大局部利用是JAVA写的,也就只能用JDBC来拜访数据。这里仅测试用JDBC读出数据,并发生成Java的记载工具(究竟到了这一步才干在利用中应用),不作任何盘算。1. 数据起源应用TPCH天生的数据,选用此中的customer表来做测试,数据记载为3000万行,8个字段。它天生的原始文本文件名为customer.tbl,文件巨细为4.9G。应用数据库供给的数据导入东西将此文件数据导入到Oracle和MySQL的数据表中。2. 测试情况在一台Intel效劳器上实现测试,2个Intel2670 CPU,主频2.6G,共16核,内存64G。数据库表数据及文本文件均存储在统一块SSD硬盘上。全部测试均在效劳器本机上实现,没有耗费收集传输时光。3. 数据库读数测试经过Oracle供给的JDBC接口,用SQL语句履行数据读取。Java写起来费事,用SPL剧本履行测试:Oracle 和 MySQL 的 JDBC 到底有多慢?MySQL的测试代码相似,不再赘述。测试成果(时光单元:秒)Oracle 和 MySQL 的 JDBC 到底有多慢?第二次能够因为操纵体系有了硬盘缓存,以是更快。由于咱们重要是为了测试JDBC的读取时光,以是就以第二次为准,增加数据库自身从硬盘读数的影响。每秒读出行数也是按第二次时光来盘算的,也就是说,Oracle每秒能读出10万行少数据,MySQL大略濒临8万行。固然这个值和表的字段数及范例都无关(customer表有8个字段),只是一种参考。4. 文本文件对照只从下面的数据量还没有太多理性意识,咱们再读一下文本文件来对照。方法是一样的,从文件中读出数据,并剖析出记载,不作任何盘算。编写以下SPL剧本履行测试:Oracle 和 MySQL 的 JDBC 到底有多慢?测试成果是42秒!这象征着,读取文本要比读取Oracle快281/42=6.69倍,比MySQL要快381/42=9.07倍!咱们晓得,文本剖析是个十分费事的事件,但即便如许,从文本文件读取数据仍是远远快于从数据库中读数。Oracle和MySQL的IO切实是太慢了!5. 二进制方法咱们进一步再看应用二进制方法的存储格局的读取机能,并和文本比对。为了对照显明,此次换一个更大的表,用TPCH中的orders表,有3亿行数据,9个字段。文本读取的代码和下面相似,读取时光测试为438秒。而后,咱们将这个文本文件转换成SPL组表,再写代码测试:

版权信息Copyright © 银河官网 版权所有    ICP备案编号:鲁ICP备09013610号