HammerDB简介

HammerDB是基准测试和负载测试套件,支持当前流行的Oracle数据库、SQL Server、IBM DB2、MySQL、MariaDB、PostgreSQL和Redis等。它支持基于TPC-C和TPC-H的工作负载,但是HammerDB支持的TPC-C/TPC-H和标准的TPC-C/TPC-H测试数据集略有不同,它更灵活轻量。

TPC被称为事务处理性能委员会,负责定义诸如TPC-C、TPC-H、TPC-W等基准测试之类的事务处理与数据库性能基准测试,并依据这些基准测试想昂木发布客观的性能数据。

TPC-C是衡量OLTP(联机事务处理)的系统工业标准,是行业中公认的最权威和最复杂的在线事务处理基准测试。它通过模拟仓库和订单管理系统,测试广泛的数据库性能,包括查询、更新和队列是小批量业务。TPC-C基准测试的评价是一种模拟订单录入每分钟商业事务 (tpmC)吞吐量。

TPC-C的测试模型是一个大型批发销售公司,在地里分布的多个区域有业务,并且使用仓库管理。当业务扩展的时候,公司将添加新的仓库,每个仓库负责10个区域的供货,每个区域3000个客户服务,每个仓库维护10万种商品的库存记录。

它包含五种不同类型和复杂性的并发事务的混合体,这些事务可以在线执行或排队等待延迟执行。这五种事务包括:

· 新订单:客户输入新订单交易,占比45%。

· 付款:更新账户余额以反映其付款状态,占比43%。

· 交货:批量交易,占比4%。

· 订单状态:查询客户最近交易的状态,占比4%。

· 库存级别:查询仓库的库存状态,以便及时补货,占比4%。

TPC-H是决策支持基准,也叫OLAP(联机分析处理)基准,它是在TPC-D上发展起来并取代了TPC-D,它模拟决策支持系统中的数据库操作,测试数据库系统复杂查询的响应时间,以每小时执行的查询数(TPC-H QphH@Siz)作为度量指标。

在TPC-H模型中,定义了8张表,22个复杂查询(SELECT)和2个更新(带有INSERT和DELETE的程序段)操作,被测试数据库的数据量从1GB~10000GB有8个级别供用户选择。测试时,将22个查询随机组成查询流,2个更新操作组成一个更新流,查询流和更新流并发执行数据路访问,查询流数目随数据量增加而增加。

数据库的应用一般有两种:以TPC-C为代表的联机事务处理和以TPC-H为代表的数据挖掘/联机分析处理。TPC-C的结果对于数据库系统有一定的参考价值,银行、证券、税务报税系统、电子商务网站、电信业务都是比较典型的联机事务处理应用。TPC-H的结果针对决策分析,也具有普遍的商业实用意义,目前在银行信贷分析和信用卡分析、电信运行分析、税收分析、烟草行业决策分析中都有广泛的应用。