官方文档
专栏文章
贡献者:@alexshen
本文介绍了两种强大的性能测试工具:Sysbench 和 PProf,它们在 TiDB 性能测试和优化中发挥着重要作用。Sysbench 通过模拟各种数据库操作场景,帮助我们评估 TiDB 在不同负载下的性能指标。而 PProf 则深入到代码层面,通过分析 TiDB 的 CPU 和内存使用情况,帮助我们定位性能瓶颈。通过这些工具的应用,我们可以更深入地理解 TiDB 的行为,从而做出更明智的优化决策。无论是进行基准测试还是比较不同数据库的性能,这些工具都能提供有价值的洞察。
贡献者:@数据源的TiDB学习之路
本文分享了在海光服务器上进行 TiDB 性能测试的实践经验,重点探讨了几种简单而有效的优化手段。NUMA 绑核被证明是提升性能的关键策略,通过减少跨 NUMA 节点的内存访问,可以显著提高数据库性能。此外,TiFlash 实例的数量与性能并非正相关,适度减少 TiFlash 实例并增加单个实例的资源,反而能够提升性能。Scatter 功能通过均衡数据分布,也能在特定场景下带来意外的性能提升。这些优化方法直观易懂,相比复杂的参数调优,能更快地带来性能改善,是性能测试和优化过程中的实用技巧。
贡献者:@田帅萌7
文章通过对比 TiDB 4.0 和 5.0-rc 版本在 4 台高配置服务器上的 OLTP 读写性能测试,揭示了新版本在性能上的显著提升。
贡献者:@TiDBer_小阿飞
文章详细介绍了 TiDB 6.5 版本的离线实施和性能测试过程。通过在硬件资源、系统软件资源、拓扑结构、安装部署、集群初始化、扩容缩容以及性能测试等方面的全面说明,为读者提供了一套完整的 TiDB 部署和测试指南。文章还通过 sysbench 和 TPC-C 测试,展示了 TiDB 在不同负载下的性能表现,并分析了扩容缩容对性能的影响。这些实践案例和测试结果对于评估 TiDB 的性能和规划数据库的部署具有重要参考价值。
贡献者:@h5n1
本文详细记录了 TiDB 5.0.3 版本在 ARM 平台上的性能测试过程和结果。通过在 3 台配置高端的服务器上进行一系列测试,包括在线扩容、TPS 和 TPCC 测试,文章展示了 TiDB 在不同配置下的性能表现。测试结果表明,TiDB 具备强大的水平扩展能力,无论是增加 TiDB 服务器实例还是 TiKV 存储节点,都能显著提升系统吞吐量并降低平均延迟。特别是在开启异步提交和聚簇索引功能后,性能提升更为明显。此外,文章还分享了在测试过程中遇到的磁盘性能问题和热点问题,并提供了相应的解决方案。这些宝贵的实践经验对于在生产环境中优化 TiDB 性能具有重要的参考价值。
贡献者:@18515065291
文章提供了 TiDB 4.0.0-rc 版本的详尽性能测试报告。在配备高性能硬件的测试环境中,通过sysbench 工具,对不同并发水平下的 QPS 和 Latency 进行了测试。结果显示,随着并发数的增加,QPS整体呈上升趋势,但在高并发情况下,延迟相应增加。测试环境由 2 个 S04 和 1 个 S01 节点的 TiDB 实例,以及 3 个 S04 节点的 TiKV 实例组成,PD 与 TiDB 混合部署。监控情况通过Grafana 展示,提供了测试过程中的系统性能视图。测试结果对于评估 TiDB 4.0.0-rc 版本在高并发场景下的性能表现具有重要参考价值。
贡献者:@Fly-bird
文章对比了 TiDB 数据库 v5.4.3 和 v6.5.3 版本的性能差异。通过在相同的硬件环境下使用 Sysbench 进行压力测试,作者发现 v6.5.3 版本在不同线程数下的 TPS 和 QPS 均有所提升,总体性能提升了约 10 %。测试涉及了 512、1024 和 1280 线程数,表大小为 1000 万,测试时长为 5 分钟。结果显示,在 1000 左右的并发量下,两个版本的 TPS 和 QPS 都达到了峰值。文章为计划升级 TiDB 版本的用户提供了实用的性能数据参考。
贡献者:@Jayjlchen
文章分享了从 MySQL 同步数据到 TiDB 的性能优化案例。初始情况下,使用 Kettle 进行数据同步的速度仅为 12 条/秒。通过一系列优化措施,包括改善网络交互、调整 Kettle 部署位置、更改组件设置、提高任务并行度、优化 JDBC 参数和调整 commit 策略,最终将同步速度提升了 243 倍以上,达到了 38666 条/秒。这些优化主要涉及减少网络延迟、提高数据库交互效率、增加并行处理能力以及调整 JDBC 参数和内存配置。该案例展示了通过细致的调优,可以显著提升数据迁移和同步的性能。
贡献者:@mydb
文章对 TiDB 的 v5.1.4 和 v6.0.0 DMR 版本进行了 Sysbench 性能对比测试。测试环境由6台配置相同的浪潮服务器组成,每个服务器有 4 个 NUMA 节点。测试结果显示,v6.0.0 版本在 oltp_read_write、oltp_point_select、oltp_update_index 和 oltp_update_non_index 场景下的性能相比 v5.1.4 版本分别提升了 2.67%、5.06%、4.50% 和 1.72%。文章强调了在部署集群时将 TiDB、PD、TiKV 与 NUMA 节点一对一绑定的重要性,以及在测试中遇到的问题和建议。总体而言,v6.0.0 版本在性能上有所提升,值得关注和期待。
贡献者:@luzizhuo
文章对比了 TiDB 5.0 和 MySQL 8.0 在相同硬件配置下的性能表现。测试环境包括TiDB集群(3 个TiDB 实例、3 个 PD 和 3-5 个 TiKV 节点)和 MySQL 8.0 主从环境,均配置为 16 核心 16GB 内存。通过 Sysbench 工具,导入 10 张表,每张表包含 1000 万行数据,并进行不同线程数的压力测试。测试结果显示,在单个 TiDB 节点下,TiDB 的 QPS 远低于 MySQL 8.0。然而,在通过HAProxy 对 TiDB Server 节点进行负载均衡后,TiDB 的 QPS 显著提高,资源使用率和网络吞吐量也有所提升。文章建议在生产环境中使用负载均衡模式,以提高 TiDB 的性能表现。
贡献者:@Hacker_URrvEGHH
文章分享了 TiDB 性能优化的实践过程。在三台物理机上部署了 TiDB 集群,并使用 sysbench 进行OLTP_Read_Only 测试。初始测试结果显示 TiDB 的 TPS 为 4365,QPS 为 69838。通过调整 gogc 参数至 1000,性能提升了65%。进一步通过NUMA绑定优化,性能又提升了20%,TPS达到8635,QPS 为 138154。