代码拉取完成,页面将自动刷新
Tencent Transaction Processing Testbed System(简称3TS),是腾讯公司CynosDB(TDSQL)团队与中国人民大学数据工程与知识工程教育部重点实验室,联合研制的面向数据库事务处理的验证系统。该系统旨在通过设计和构建事务(包括分布式事务)处理统一框架,并通过框架提供的访问接口,方便使用者快速构建新的并发控制算法;通过验证系统提供的测试床,可以方便用户根据应用场景的需要,对目前主流的并发控制算法在相同的测试环境下进行公平的性能比较,选择一种最佳的并发控制算法。目前,验证系统已集成13种主流的并发控制算法,提供了TPC-C、PPS、YCSB等常见基准测试。3TS还进一步提供了一致性级别的测试基准,针对现阶段分布式数据库系统的井喷式发展而造成的系统选择难问题,提供一致性级别判别与性能测试比较。
如需更详细理解本项目目的,请参阅3TS开源声明。
make.sh
编译代码,编译成功后会生成3ts
二进制文件cp config/config.cfg.template config.cfg
,复制一份配置文件vi config.cfg
,填写配置,决定测试的行为./t3s --conf_path=config.cfg
,即可执行测试,测试完成后会在本地生成测试结果文件3TS框架由四部分构成:
Target
配置项下指定,如Target = ["FilterRun"]
。
FilterRun
:输出各个算法对各个history的检测结果,同时可以对检测结果进行筛选BenchmarkRun
:用于测试性能,输出不同事务数量、变量数量场景下,各个算法检测指定数量的history所需要消耗的时间"SerializableAlgorithm_ALL_SAME_RU"
// 未提交读策略"SerializableAlgorithm_ALL_SAME_RC"
// 已提交读策略(读取最新的已提交版本,天然避免了由脏读异常带来的不可串行化情况)"SerializableAlgorithm_ALL_SAME_RR"
// 可重复读策略(当事务第二次读到某一变量时,取第一次读到的版本,天然避免了由不可重复读异常带来的不可串行化情况)"SerializableAlgorithm_ALL_SAME_SI"
// 快照读策略(天然避免了由幻读异常带来的不可串行化情况)"SerializableAlgorithm_COMMIT_SAME_RU"
// 未提交读策略"SerializableAlgorithm_COMMIT_SAME_RC"
// 已提交读策略"SerializableAlgorithm_COMMIT_SAME_RR"
// 可重复读策略"SerializableAlgorithm_COMMIT_SAME_SI"
// 快照读策略"SerializableAlgorithm_FINAL_SAME_RU"
// 未提交读策略"SerializableAlgorithm_FINAL_SAME_RC"
// 已提交读策略"SerializableAlgorithm_FINAL_SAME_RR"
// 可重复读策略"SerializableAlgorithm_FINAL_SAME_SI"
// 快照读策略"ConflictSerializableAlgorithm"
"SSI"
"WSI"
"BOCC"
"FOCC"
其余配置项说明,请参考配置文件相关注释。
GPLv3 @ Tencent
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型