《PolarDB-X开源分布式数据库实战进阶》——对PolarDB-X进行TP负载测试(2)

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 《PolarDB-X开源分布式数据库实战进阶》——对PolarDB-X进行TP负载测试(2)

《PolarDB-X开源分布式数据库实战进阶》——对PolarDB-X进行TP负载测试(1) https://developer.aliyun.com/article/1228682?groupCode=polardbforpg



 

image.png

 

上图列举了TPC-C的五种不同事务类型,包括New-Order下单、Payment支付、Delivery发货、Order-Status查询交易状况、Stock-Level查询库存状况。而最终衡量TPC-C性能结果使用tmpC,表示每分钟执行New-Order事务数,因为New-Order事务反映了下单场景中高频率且响应时间严格的读写混合事务的执行状况,是整个TPC-C workload的核心。Stock -Level库存查询状况中只包含一条查询,使用了子查询和join语句查询仓库的库存状况。

 

New-Order执行的步骤包括以下几步:

 

第一步,从warehouse 表和 customer 表中查询出信息。

 

第二步,更新对应的district地区信息。

 

第三步,向orders表和new_orders表插入一条新记录。

 

第四步,由于客户的一笔订单中会下单多件商品,需要针对购买的每一件商品更新stock表的库存信息,并向order_line表插入一行新记录。

 

第五步,提交事务。

从上述流程也可以体现出TPC-C和Sysbench的差别还在于TPC-C的事务遵循实际业务的规律与约束,而Sysbench则是纯随机的增删改查,不具备TPC-C测试的特性。因此,TPC-C具备数据完整性和一致性的概念,其规范包含了对数据完整性的约束。该约束与TPC-C的运行时间无关,比如orders表里持久化保存了所有下单记录,运行时间越来越长,orders表也会越来越大。从完整性约束中,可以推导出6条SQL(详情见后文),用于验证TPC-C的数据完整性。

 

image.png

 

TPC-H主要用于测评OLAP分析型查询的能力,而Sysbench和TPC-C则用于测评OLTP在线事务处理的能力。TPC-H包含了8张数据表、22条复杂的SQL查询,大多查询中还包含了多表join子查询、group-by等聚合操作。对于数据库的考验除了优化器的Join Reorder、join算法的选择,还有执行器、各种算子实现与多机并行执行等逻辑实现。

 

用户在使用上述3类测试工具的过程中会面临一系列问题,比如工具的编译、部署、执行结果如何收集统计、如何方便快捷地可视化呈现以及导入大规模数据应该如何选择合适的并发度等。

 

image.png

 

针对以上问题,我们推出了Benchmark Boot一站式压测平台,主打一站式、兼容性、易用性、可视化,一站式体现在内置了Sysbench、TPC-C、TPC-H三款精准测试工具,兼容性体现在可以在不同的系统平台安装部署,易用性则体现在整个压测流程均为白屏化操作,最终的测试结果也可以通过表格、折线图、柱状图等形式进行可视化展示。

 

相关安装使用文档点击此处查看网址

 

image.png

 

Benchmark Boot的部署安装步骤非常简单,我们提供了一键安装命令,也提供了Docker镜像,省去了处理依赖安装问题的麻烦。使用Benchmark Boot要求压测机需要有不低于4C8G的配置,因为压测机规格太低容易成为性能瓶颈。同时,还需要一台有浏览器的前端机器。

 

image.png



《PolarDB-X开源分布式数据库实战进阶》——对PolarDB-X进行TP负载测试(3) https://developer.aliyun.com/article/1228676?groupCode=polardbforpg

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
1月前
|
机器学习/深度学习 PyTorch 算法框架/工具
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
这篇文章介绍了如何使用PyTorch框架,结合CIFAR-10数据集,通过定义神经网络、损失函数和优化器,进行模型的训练和测试。
89 2
目标检测实战(一):CIFAR10结合神经网络加载、训练、测试完整步骤
|
1月前
|
关系型数据库 MySQL 分布式数据库
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶,邀请好友完成更有机会获得​小米Watch S3、小米体重称​等诸多好礼!
零基础教你用云数据库PolarDB搭建企业网站,完成就送桌面收纳桶!
|
7天前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
36 3
|
12天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
28 1
|
1月前
|
机器学习/深度学习 编解码 监控
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
这篇文章详细介绍了如何使用YOLOv8进行目标检测任务,包括环境搭建、数据准备、模型训练、验证测试以及模型转换等完整流程。
1192 1
目标检测实战(六): 使用YOLOv8完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
1月前
|
PyTorch 算法框架/工具 计算机视觉
目标检测实战(二):YoloV4-Tiny训练、测试、评估完整步骤
本文介绍了使用YOLOv4-Tiny进行目标检测的完整流程,包括模型介绍、代码下载、数据集处理、网络训练、预测和评估。
104 2
目标检测实战(二):YoloV4-Tiny训练、测试、评估完整步骤
|
1月前
|
Java 程序员 应用服务中间件
「测试线排查的一些经验-中篇」&& 调试日志实战
「测试线排查的一些经验-中篇」&& 调试日志实战
22 1
「测试线排查的一些经验-中篇」&& 调试日志实战
|
16天前
|
前端开发 数据管理 测试技术
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第27天】本文介绍了前端自动化测试中Jest和Cypress的实战应用与最佳实践。Jest适合React应用的单元测试和快照测试,Cypress则擅长端到端测试,模拟用户交互。通过结合使用这两种工具,可以有效提升代码质量和开发效率。最佳实践包括单元测试与集成测试结合、快照测试、并行执行、代码覆盖率分析、测试环境管理和测试数据管理。
32 2
|
17天前
|
前端开发 JavaScript 数据可视化
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第26天】前端自动化测试在现代软件开发中至关重要,Jest和Cypress分别是单元测试和端到端测试的流行工具。本文通过解答一系列问题,介绍Jest与Cypress的实战应用与最佳实践,帮助开发者提高测试效率和代码质量。
27 2
|
1月前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
309 0
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)

热门文章

最新文章

相关产品

  • 云原生数据库 PolarDB