国产数据库TPC-C基准性能测试应用与分析
及其内用户,读取该用户的最后一条订单,显示订单内每件商品的状态。该事物的主要特点为只读、较少、要求响应快。
· 发货:其主要事务内容为对于任意一个客户端,随机选取一个发货包,更新被处理订单的用户账户余额,并把修改后的订单从新订单中删除。该事物的主要特点为读写、频繁、响应快。
· 库存状态查询:其主要事务内容为对于任意一个客户端,从固定的仓库和辖区选取最后的20条订单,检查订单中所有货物的库存。计算并显示所有库存低于随机生成阈值的商品数量。该事物的主要特点为只读、较少、较为宽松的响应时间。
对于以上这5种类型的事务交易,前4种类型的交易要求响应时间在5秒钟以内;对于库存状况查询交易,要求响应时间在20秒以内。同时,这5种交易最终的比例还必须满足一定的要求,即支付操作的比例不得少于43%,订单状态查询、发货和库存状态查询的比例分别均不得少于4%。具体而言,5种事务要满足的时间、比例及隔离级别要求如表所示。
表 1 5种类型的事务交易-资料来源于中国评测
TPC-C测试的结果主要有两个指标,即流量指标(Throughput,简称tpmC)和性价比(Price/Performance,简称Price/tpmC)。
· 流量指标(Throughput,简称tpmC):按照TPC组织的定义,流量指标描述了系统在执行支付操作、订单状态查询、发货和库存状态查询这4种交易的同时,每分钟可以处理多少个新订单交易。所有交易的响应时间必须满足TPC-C测试规范的要求,且各种交易数量所占的比例也应该满足TPC-C测试规范的要求。在这种情况下,流量指标值越大说明系统的联机事务处理能力越高。
· 性价比(Price/Performance,简称Price/tpmC):即测试系统的整体价格与流量指标的比值,在获得相同的tpmC值的情况下,价格越低越好。
3、 数据性能对比测试
测试方法:通过上述的设计模型建立相关的表,对表中的数据按设计模型的规模进行填充。将主要的并发业务模型分别部署到不同的并发客户端上,通过主控台的统一控制控制测试的启动、执行和结束,最后统计各个客户端传来的性能数据,通过统计分析展现给测试人员,帮助分析数据库的性能。
测试场景:分别在Oracle和国产数据库测试1000个仓库持续2个小时,同时收集服务器端的系统资源占用、5个事务的响应时间,业务比例关系以及最终的流量指标(Throughput,简称tpmC)指标。
在测试过程中,我们采用两台配置完全相同的服务器分别安装Oracle数据库11g的版本和国产数据库管理系统。网络采用1000Gbps快速以太网交换机进行互联,测试端采用一体化分布式管理的方法,即一个主控管理台和多个分布式并发客户端,测试代码放在主控台上,通过分发到客户端实现大的并发访问。测试拓扑图如下:
图 3 测试拓扑图-资料来源于中国评测
结果分析对比:
1)Tpmc的数据对比:
上图的分析,Oracle在1000个仓库下产生的Tpmc值为11,840.90 tpmC
国产数据库管理系统在1000个仓库下产生的Tpmc值为12,840.01 tpmC
2)时间特性分析
3)服务器的资源特性分析
a)CPU的利用率对比
通过上图的对比,Oracle数据库服务器多核CPU的利用均等的方式别调用,而国产数据库管理系统服务器的CPU利用则重点在3个核CPU上,对多核处理的均等调用方式有待进一步提升。
b)内存的利用率对比
通过上图的对比分析,Oracle数据库在测试过程内存的使用迅速只剩下5000MB一下的可用空间,而国产数据库管理系统服务器的内存占用是渐进的方式的消耗。
c)网络的利用率对比
通过上图的对比分析,Oracle数据库服务器在测试过程中,服务器的发出流量达到6000KBytes/Sec,接收的流量达4000Kbytes/Sec;国产数据库服务器在测试过程中,服务器的发出流量达到2000KBytes/Sec,接收的流量达1500Kbytes/Sec。
d)磁盘的利用率对比
通过上图的对比分析,Oracle数据库服务器在测试过程中,数据库服务器的磁盘繁忙度达100%;而国产数据库管理系统的磁盘繁忙程度在逐渐下降。
4、 结论
本文介绍了一种测试数据库性能测试的方法TPC-C,通过仓库的商业模拟模拟数据库的在线处理方式。通过这种测试方法可以对国产数据库管理系统和国外的数据库在在线处理的性能上进行对比分析,帮助国产数据库管理系统的制造商改进其产品性能提供了客观的评价依据。
- 基于虚拟仪器的特性测试参数数据库的设计(06-24)
- 嵌入式数据库在Java中的应用(03-03)
- SQLite嵌入式数据库系统的研究与实现(02-20)
- 嵌入式移动数据库系统中的数据查询(02-21)
- Linux EXT3下删除MySQL数据库的数据恢复(05-26)
- 嵌入式移动数据库与Agent技术(03-01)