使用sysbench测试postgresql和造数据

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
简介: 已经安装好sysbench

已经安装好sysbench

查看安装情况

scutech@infokist:~$ dpkg -l|grep sysbench
ii  sysbench                               1.0.20-1                                   amd64        Scriptable database and system performance benchmark
$ sysbench --help
......
pgsql options:
  --pgsql-host=STRING     PostgreSQL server host [localhost]
  --pgsql-port=N          PostgreSQL server port [5432]
  --pgsql-user=STRING     PostgreSQL user [sbtest]
  --pgsql-password=STRING PostgreSQL password []
  --pgsql-db=STRING       PostgreSQL database name [sbtest]
....

造数据

造数据


scutech@infokist:~$ sysbench  --db-driver=pgsql  --pgsql-host=192.168.17.40  --pgsql-user=scutech  --pgsql-password=dingjia \
> --pgsql-db=postgres  --oltp-table-size=10000  --rand-init=on  --threads=10  --time=120  --events=0 \
>  --report-interval=10  --percentile=99  /usr/share/sysbench/tests/include/oltp_legacy/oltp.lua  prepare
sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)
Creating table 'sbtest1'...
Inserting 10000 records into 'sbtest1'
Creating secondary indexes on 'sbtest1'...

清除数据


sysbench  --db-driver=pgsql  --pgsql-host=192.168.17.40  --pgsql-user=scutech  --pgsql-password=dingjia \
--pgsql-db=postgres  --oltp-table-size=10000  --rand-init=on  --threads=10  --time=120  --events=0 \
 --report-interval=10  --percentile=99  /usr/share/sysbench/tests/include/oltp_legacy/oltp.lua  cleanup


检查表

psql -U scutech -h 192.168.17.40 -d postgres
 postgres=# select * FROM pg_tables where schemaname='public';
 schemaname | tablename | tableowner | tablespace | hasindexes | hasrules | hastriggers | rowsecurity 
------------+-----------+------------+------------+------------+----------+-------------+-------------
 public     | sbtest1   | scutech    |            | t          | f        | f           | f
(1 row)
postgres=# 
postgres=# select count(*) from sbtest1;
 count 
-------
 10000
(1 row)

测试

scutech@infokist:~$ sysbench  --db-driver=pgsql  --pgsql-host=192.168.17.40  --pgsql-port=5432  --pgsql-user=scutech  --pgsql-password=dingjia  --pgsql-db=mydb  --oltp-table-size=10000  --threads=10  --time=120  --events=0  --report-interval=10  --percentile=99  /usr/share/sysbench/tests/include/oltp_legacy/oltp.lua  run
sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)
Running the test with following options:
Number of threads: 10
Report intermediate results every 10 second(s)
Initializing random number generator from current time
Initializing worker threads...
Threads started!
[ 10s ] thds: 10 tps: 300.40 qps: 6099.34 (r/w/o: 4278.15/1203.70/617.49) lat (ms,99%): 64.47 err/s: 4.40 reconn/s: 0.00
[ 20s ] thds: 10 tps: 256.33 qps: 5200.16 (r/w/o: 3646.09/1028.81/525.26) lat (ms,99%): 70.55 err/s: 4.00 reconn/s: 0.00
[ 30s ] thds: 10 tps: 245.79 qps: 4950.20 (r/w/o: 3467.29/980.74/502.17) lat (ms,99%): 669.89 err/s: 2.20 reconn/s: 0.00
[ 40s ] thds: 10 tps: 328.60 qps: 6646.79 (r/w/o: 4658.09/1315.00/673.70) lat (ms,99%): 57.87 err/s: 4.10 reconn/s: 0.00
[ 50s ] thds: 10 tps: 327.60 qps: 6634.91 (r/w/o: 4651.11/1312.30/671.50) lat (ms,99%): 57.87 err/s: 4.60 reconn/s: 0.00
[ 60s ] thds: 10 tps: 268.20 qps: 5438.79 (r/w/o: 3814.29/1074.10/550.40) lat (ms,99%): 116.80 err/s: 4.10 reconn/s: 0.00
[ 70s ] thds: 10 tps: 296.52 qps: 6004.58 (r/w/o: 4207.86/1190.07/606.64) lat (ms,99%): 61.08 err/s: 4.10 reconn/s: 0.00
[ 80s ] thds: 10 tps: 323.58 qps: 6563.00 (r/w/o: 4601.42/1297.02/664.56) lat (ms,99%): 59.99 err/s: 5.20 reconn/s: 0.00
[ 90s ] thds: 10 tps: 330.20 qps: 6679.35 (r/w/o: 4681.27/1321.39/676.70) lat (ms,99%): 57.87 err/s: 4.20 reconn/s: 0.00
[ 100s ] thds: 10 tps: 273.20 qps: 5515.64 (r/w/o: 3865.03/1091.11/559.50) lat (ms,99%): 64.47 err/s: 3.00 reconn/s: 0.00
[ 110s ] thds: 10 tps: 244.12 qps: 4950.41 (r/w/o: 3471.22/978.76/500.43) lat (ms,99%): 80.03 err/s: 3.60 reconn/s: 0.00
[ 120s ] thds: 10 tps: 234.88 qps: 4772.88 (r/w/o: 3347.70/942.52/482.66) lat (ms,99%): 87.56 err/s: 4.30 reconn/s: 0.00
SQL statistics:
    queries performed:
        read:                            486976
        write:                           137398
        other:                           70325
        total:                           694699
    transactions:                        34306  (285.77 per sec.)
    queries:                             694699 (5786.92 per sec.)
    ignored errors:                      478    (3.98 per sec.)
    reconnects:                          0      (0.00 per sec.)
General statistics:
    total time:                          120.0410s
    total number of events:              34306
Latency (ms):
         min:                                   18.69
         avg:                                   34.98
         max:                                 3026.66
         99th percentile:                       63.32
         sum:                              1200039.52
Threads fairness:
    events (avg/stddev):           3430.6000/22.74
    execution time (avg/stddev):   120.0040/0.01
scutech@infokist:~$
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
1月前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
2月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
38 11
|
2月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
55 10
|
2月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的数据文件
PostgreSQL的物理存储结构主要包括数据文件、日志文件等。数据文件按oid命名,超过1G时自动拆分。通过查询数据库和表的oid,可定位到具体的数据文件。例如,查询数据库oid后,再查询特定表的oid及relfilenode,即可找到该表对应的数据文件位置。
104 1
|
3月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
68 6
|
3月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段
在数据驱动时代,A/B 测试成为评估机器学习项目效果的重要手段。本文介绍了 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,强调了样本量、随机性和时间因素的重要性,并展示了 Python 在 A/B 测试中的具体应用实例。
47 1
|
3月前
|
关系型数据库 MySQL 测试技术
【赵渝强老师】MySQL的基准测试与sysbench
本文介绍了MySQL数据库的基准测试及其重要性,并详细讲解了如何使用sysbench工具进行测试。内容涵盖sysbench的安装、基本使用方法,以及具体测试MySQL数据库的步骤,包括创建测试数据库、准备测试数据、执行测试和清理测试数据。通过这些步骤,可以帮助读者掌握如何有效地评估MySQL数据库的性能。
154 5
|
4月前
|
机器学习/深度学习 监控 计算机视觉
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
本文介绍了如何使用YOLOv7进行目标检测,包括环境搭建、数据集准备、模型训练、验证、测试以及常见错误的解决方法。YOLOv7以其高效性能和准确率在目标检测领域受到关注,适用于自动驾驶、安防监控等场景。文中提供了源码和论文链接,以及详细的步骤说明,适合深度学习实践者参考。
958 1
目标检测实战(八): 使用YOLOv7完成对图像的目标检测任务(从数据准备到训练测试部署的完整流程)
|
4月前
|
存储 测试技术 数据库
数据驱动测试和关键词驱动测试的区别
数据驱动测试 数据驱动测试或 DDT 也被称为参数化测试。
64 1
|
4月前
|
机器学习/深度学习 并行计算 数据可视化
目标分类笔记(二): 利用PaddleClas的框架来完成多标签分类任务(从数据准备到训练测试部署的完整流程)
这篇文章介绍了如何使用PaddleClas框架完成多标签分类任务,包括数据准备、环境搭建、模型训练、预测、评估等完整流程。
258 0