TPC是一个专门负责制定计算机事务处理能力测试标准并监督其执行的第三方组织,其中被业界广泛使用的测试方式有四种,分别是有TPC-C、TPC-E、TPC-H和TPC-DS。前两者针对OLTP业务,后两者针对OLAP业务。
OLTP主要执行日常的事务处理,包括大量增删改查,其特点为高并发、高性能,且满足ACID特性。而OLAP主要用于数据仓库,支持非常复杂的查询,查询结果侧重于决策支持,其特点为对实时性要求不高,数据量大。
TPC-E与TPC-C的主要差别在于难度,TPC-E可以理解为是TPC-C的升级版,测试内容更复杂,要求更高。
TPC-C的业务模型为批发零售业务,主要业务为订单的处理能力,涉及5种事务、9张表以及4大常见的数据类型。
TPC-E模拟的是证券交易系统,实时性要求更高。它模拟了10种实时事务、2种批处理事务。
TPC-C模拟的是一个在线零售公司的业务场景,假设仓库里包含10万个产品,负责十个区域的供货,每个区域都有单独的订单系统,一个区域管理300个客户,因此仓库总共涉及到3万个客户。树状图如上。
上图为TPC-C涉及到的9张表。
其中New-Order表示未发货的订单,发货后即删除,初始值为每个仓库9000条;Order为总订单表,每新增一个客户订单会增加一条记录,不会删除,初始化为每个客户一条订单,初始值为仓库数*每个仓库的商品数量。
TPC-C业务数据模型
TPC-C测试的能力为每分钟处理完成的事务数,主要针对neworders表。事务数越大,说明处理能力越高。
TPC-C在部署时,数据仓库的数量也会影响业务的复杂程度。另外,TPC-C也可用于测试同样的硬件配置、同样的业务量下,Oracle和PolarDB的处理性能。
TPC-C测试完后,可以将字符的报告格式化成HTML形式,使其更具可读性。
接下篇:https://developer.aliyun.com/article/1223061?groupCode=polardbforpg