使用sysbench测试postgresql和造数据

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 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数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
24天前
|
安全 数据管理 测试技术
告别蛮力:让测试数据生成变得智能而高效
告别蛮力:让测试数据生成变得智能而高效
326 120
|
2月前
|
存储 测试技术 API
数据驱动开发软件测试脚本
今天刚提交了我的新作《带着ChatGPT玩转软件开发》给出版社,在写作期间跟着ChatGPT学到许多新知识。下面分享数据驱动开发软件测试脚本。
95 0
|
5月前
|
人工智能 缓存 自然语言处理
别再手搓测试数据了!AE测试数据智造系统揭秘
本文介绍如何通过构建基于大语言模型的测试数据智造Agent,解决AliExpress跨境电商测试中数据构造复杂、低效的问题,推动测试效率提升与智能化转型。
别再手搓测试数据了!AE测试数据智造系统揭秘
|
10月前
|
分布式计算 Shell MaxCompute
odps测试表及大量数据构建测试
odps测试表及大量数据构建测试
|
8月前
|
SQL 关系型数据库 PostgreSQL
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
【YashanDB 知识库】从 PostgreSQL 迁移到 YashanDB 如何进行数据行数比对
|
8月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】从PostgreSQL迁移到YashanDB如何进行数据行数比对
本文介绍了通过Oracle视图`v$sql`和`v$sql_plan`分析SQL性能的方法。首先,可通过`plan_hash_value`从`v$sql_plan`获取SQL执行计划,结合示例展示了具体查询方式。文章还创建了一个UDF函数`REPEAT`用于格式化输出,便于阅读复杂执行计划。最后,通过实例展示了如何根据`plan_hash_value`获取SQL文本及其内存中的执行计划,帮助优化性能问题。
|
11月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
155 11
|
11月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
185 10
|
12月前
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
405 6
|
11月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的数据文件
PostgreSQL的物理存储结构主要包括数据文件、日志文件等。数据文件按oid命名,超过1G时自动拆分。通过查询数据库和表的oid,可定位到具体的数据文件。例如,查询数据库oid后,再查询特定表的oid及relfilenode,即可找到该表对应的数据文件位置。
266 1

推荐镜像

更多