原发布基于percona的tpcc-mysql分支版本摘要Percona发布的tpcc-mysql版本中,所有的表都没有使用自增列做主键,并且使用到大量外键,导致性能测试时可能无法发挥的更好。我对它进行了轻微改动,规避了这2个问题,欢迎测试体验!
1、关于项目简介
本项目是在percona的tpcc-mysql版本基础上衍生而来,根据InnoDB表结构设计规范建议做了小调整,可以作为官方版本的补充。
该分支版本项目已经托管在github上,地址是:https://github.com/yejr/tpcc-mysql
2、为什么要做改造
tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。
它生成的测试表我认为有2个问题:
1、没有自增列作为主键。如果仅作为基准测试问题不大,但和我们实际生产中的设计模式可能有一定区别,相信大多数人还是习惯使用自增列作为主键的,如果你没这个习惯,那么可以忽略本文了;
2、使用外键。个人认为MySQL对外键支持并不是太好,并且一定程度上影响并发性能,因此建议取消外键,仅保留一般的索引。
基于上面这2点,我微调了下tpcc-mysql的源码,主要改动有下面几个地方:
1、所有表都加上自增列做主键;
2、取消外键,仅保留普通索引;
3、降低tpcc测试过程中的输出频率,避免刷屏;
4、修改了表结构初始化DDL脚本以及load.c文件。
利用该分支版本进行tpcc压力测试的结果表明,有自增列主键时,其TpmC相比没有自增列主键约提升了10%,还是比较可观的。
3、快速使用
该分支版本的用法和官方版本完全一致,这里不再赘述。
4、最后
可以和percona官方分支版本进行对比测试,看看二者的TpmC结果相差多少。
题图布袋戏 布袋戏又称布袋木偶戏、手操傀儡戏、手袋傀儡戏、掌中戏、小笼、指花戏,是一种起源于17世纪中国福建泉州或漳州(大部分学者都认定布袋戏起源为泉州);主要在福建泉州、漳州、广东潮汕与台湾等地区流传的用布偶来表演的汉族地方戏剧剧种。
布偶的头是用木头雕刻成中空的人头,除出偶头、戏偶手掌与人偶足部外,布袋戏偶身之躯干与四肢都是用布料做出的服装;演出时,将手套入戏偶的服装中进行操偶表演。而正因为早期此类型演出的戏偶偶身极像“用布料所做的袋子”,因此有了布袋戏之通称。
早期许多的迎神庙会场合里,布袋戏是最常看到的汉族民间戏曲表演之一。