【TiDB 4.0 PCTA 学习笔记】- 2.3.4 将数据导入tidb@1班 - 江坤

课程名称:课程版本(201)+ 2.3.4 How to Benchmark(如何对 TiDB 进行基准测试)

学习时长:

20 min

课程收获:

学习使用 Sysbench 和 TPCC 对 TiDB 进行 OLTP 性能测试,并了解一些测试中常出现的问题

课程内容:

Advice for benchmark

  • 实例的选择原则
    • TiDB:计算优化
    • TiKV:存储优化,16C+,内存越大越好
    • PD:低CPU 高内存
  • 每个TiDB实例并发控制在500内
  • 对于TiDB集群
    • 每个TIDB结果求和
    • 使用负载均衡
  • 配置

Benchmark with Sysbench

  • 性能测试工具
  • 主要用于OLTP测试

Sysbench

  • 准备配置文件
  • 创建测试数据库
  • 乐观事务需要开启自动重试
  • 用指定配置启动 Sysbench
  • 使用命令进行表分析,数据预热
  • 使用指定配置进行基准测试 - 注意数据备份

TPC-C

  • 联机事务处理基准测试
  • 商品销售数据测试
  • 以 NewOrder 的 tpm 为准

TPC-C

  • 安装 java 和 ant
  • 修改 benchmarksql 支持 MySQL 协议
  • 修改配置文件
  • 创建测试数据库
  • 乐观事务需要开启自动重试
  • 初始化 tpcc 表
  • 启动 tpcc
  • 启动 benchmark
  • 查看结果
  • 检查一致性

*Common Issues

  • 高并发下,TiKV CPU 任然使用率较低
    • 负载是否均匀
    • 是否有大量写操作
    • 部分模块达到瓶颈
  • 高并发下,TiDB使用率低
    • NUMA造成
  • 整体性能上不去
    • 客户端达到瓶颈 - 检查TiDB 的 QPS
    • 代理有问题

学习过程中参考的其他资料