sysbench

云数据库POLARDB产品解读之二:如何做到高性价比

[亡魂溺海] 提交于 2019-11-29 03:49:38
现在做任何事情都要看投入产出比,对应到数据库上其实就是性价比。POLARDB作为一款阿里自研数据库,经常被问的问题是:性能怎么样?能不能支撑我的业务?价格贵不贵?很显然,在早期调研阶段,对稳定性、可靠性很难有量化的指标时,性能的好快就成了一个非常关键的决策因子。 POLARDB在一开始设计时就把性能作为一项关键的需求指标列入产品需求说明书,从架构设计到新硬件选型,再到代码实现,从驱动到分布式块存储,再到分布式文件系统和数据库引擎,打通整个技术栈做协同优化,最终才能保证性能上有数量级的提升。 高性能背后的技术 在2018杭州云栖大会上分享的这张架构图展示了POLARDB的内部细节。自下而上来看,POLARDB由__共享分布式存储PolarStore__,__分布式文件系统PolarFS__,__多节点的数据库集群PolarDB__和__提供统一入口的代理PolarProxy__这四部分组成。 PolarFS PolarFS设计中采用了如下技术以充分发挥I/O性能: PolarFS采用了绑定CPU的单线程有限状态机的方式处理I/O,避免了多线程I/O pipeline方式的上下文切换开销。 PolarFS优化了内存的分配,采用MemoryPool减少内存对象构造和析构的开销,采用巨页来降低分页和TLB更新的开销。 PolarFS通过中心加局部自治的结构

sysbench 数据库性能测试工具的使用

ぃ、小莉子 提交于 2019-11-29 01:56:18
sysbench 数据库性能测试 Mac上安装sysbench测试工具 brew install sysbench 测试sysbench 是否安装成功 //执行这条指令 sysbench cpu --cpu-max-prime=10000 run sysbench 1.0.17 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 859.16 General statistics: total time: 10.0008s total number of events: 8594 Latency (ms): min: 1.10 avg: 1.16 max: 24.47 95th percentile: 1.32 sum: 9990.99 Threads fairness: events (avg/stddev): 8594

sysbench压力测试工具简介

丶灬走出姿态 提交于 2019-11-28 11:32:24
sysbench压力测试工具简介 https://www.cnblogs.com/pdlife/p/6698957.html 一、sysbench压力测试工具简介: sysbench是一个开源的、模块化的、跨平台的多线程性能测试工具,可以用来进行CPU、内存、磁盘I/O、线程、数据库的性能测试。目前支持的数据库有MySQL、Oracle和PostgreSQL。以下操作都将以支持MySQL数据库为例进行。 1. sysbench 工具安装: 默认支持MySQL,如果需要测试Oracle/PostgreSQL,则在configure时需要加上–with-oracle或者–with-pgsql参数. 1.1 安装环境 CentOS release 6.3 (Final) MySQL 5.6.13 MySQL_HOME=/usr/local/mysql/ Sysbench 0.4.12 1.2 下载安装包 # wget http://sourceforge.net/projects/sysbench/sysbench-0.4.12.tar.gz 1.3 编译安装 # tar –zxvf sysbench-0.4.12.tar.gz 进入解压缩包sysbench-0.4.12,并执行脚本autogen.sh # cd sysbench-0.4.12 # ./autogen.sh 关键的三步

TiDB 压力测试报告

孤人 提交于 2019-11-27 14:06:01
TiDB 压力测试报告 (转载自公众号DBATech) 一、测试环境 1、tidb 集群架构: 测试使用最基本的TiDB架构。即 3个tidb-server节点+ 3个tikv节点 + 3个pd节点。 2、tidb集群的部署环境(混合部署): 192.168.xx.A 1*server +1*PD +1*tikv 192.168.xx.B 1*server +1*PD +1*tikv 192.168.xx.C 1*server +1*PD+1*tikv IDC机器环境: 0S :CentOS7 CPU :Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz *24 RAM :48GB DISK :SSD, 480GB RAID0 TiDB 重要配置参数 以下这些参数都是会对tidb造成性能影响的参数。设置尽量折中。较少对性能的影响。 tidb-server节点的设置: [log] level = "warn" [prepared-plan-cache] enabled = true log-level = "warning" [raftstore] sync-log = false tikv节点的设置: log-level = "warning" [rocksdb.defaultcf] [rocksdb.writecf] block-cache

解MySQL基准测试和sysbench工具

China☆狼群 提交于 2019-11-27 12:15:35
前言 作为一名后台开发,对数据库进行基准测试,以掌握数据库的性能情况是非常必要的。本文介绍了MySQL基准测试的基本概念,以及使用sysbench对MySQL进行基准测试的详细方法。 文章有疏漏之处,欢迎批评指正。 目录 一、基准测试简介    1、什么是基准测试    2、基准测试的作用    3、基准测试的指标    4、基准测试的分类 二、sysbench    1、sysbench简介    2、sysbench安装    3、sysbench语法    4、sysbench使用举例    5、测试结果 三、建议 一、基准测试简介 1、什么是基准测试 数据库的基准测试是对数据库的性能指标进行定量的、可复现的、可对比的测试。 基准测试与压力测试 基准测试可以理解为针对系统的一种压力测试。但基准测试不关心业务逻辑,更加简单、直接、易于测试,数据可以由工具生成,不要求真实;而压力测试一般考虑业务逻辑(如购物车业务),要求真实的数据。 2、基准测试的作用 对于多数Web应用,整个系统的瓶颈在于数据库;原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘灯、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于MySQL,由于数据一致性的要求,无法通过增加机器来分散向数据库写数据带来的压力;虽然可以通过前置缓存

sysbench测试

别来无恙 提交于 2019-11-27 02:18:36
什么是基准测试 数据库的基准测试是对数据库的性能指标进行定量的、可复现的、可对比的测试。 基准测试与压力测试 基准测试可以理解为针对系统的一种压力测试。但基准测试不关心业务逻辑,更加简单、直接、易于测试,数据可以由工具生成,不要求真实;而压力测试一般考虑业务逻辑(如购物车业务),要求真实的数据。 基准测试的作用 对于多数Web应用,整个系统的瓶颈在于数据库;原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘灯、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于MySQL,由于数据一致性的要求,无法通过增加机器来分散向数据库写数据带来的压力;虽然可以通过前置缓存(Redis等)、读写分离、分库分表来减轻压力,但是与系统其它组件的水平扩展相比,受到了太多的限制。 而对数据库的基准测试的作用,就是分析在当前的配置下(包括硬件配置、OS、数据库设置等),数据库的性能表现,从而找出MySQL的性能阈值,并根据实际系统的要求调整配置。 基准测试的指标 常见的数据库指标包括: TPS/QPS:衡量吞吐量。 响应时间:包括平均响应时间、最小响应时间、最大响应时间、时间百分比等,其中时间百分比参考意义较大,如前95%的请求的最大响应时间。 并发量:同时处理的查询请求的数量。 基准测试的分类 对MySQL的基准测试

sysbench测试

戏子无情 提交于 2019-11-27 02:18:26
安装sysbench wget http://www.lefred.be/files/sysbench-0.5-3.el6_.x86_64.rpm wget http:// nchc.dl.sourceforge.net/project/sysbench/sysbench/0.4.12/sysbench-0.4.12.tar.gz tar xvf sysbench-0.4.12.tar.gz cd sysbench-0.4.12 mkdir /usr/sysbench ./configure --prefix=/usr/sysbench --with-mysql-includes=/mysql/include --with-mysql-libs=/mysql/lib cp /usr/bin/libtool /root/sysbench-0.4.12/libtool make&&make install #vim /etc/ld.so.conf 增加一行 /mysql/lib #ldconfig 磁盘I/O性能测试 --file-num=N 创建测试文件的数量。默认是128 --file-block-size=N 测试时文件块的大小。默认是16384(16K) --file-total-size=SIZE 测试文件的总大小。默认是2G --file-test-mode=STRING

如何用sysbench做好IO性能测试

余生长醉 提交于 2019-11-27 02:18:16
sysbench 是一个非常经典的综合性能测试工具,通常都用它来做数据库的性能压测,但也可以用来做CPU,IO的性能测试。而对于IO测试,不是很推荐sysbench,倒不是说它有错误,工具本身没有任何问题,它的测试方法导致测试的数据会让人有些困惑:性能数据到底是不是这样呢,跟云厂商承诺的性能有关系嘛。一般我们都用FIO来进行性能测试,云厂商都推荐用FIO进行性能测试,通过FIO性能测试,都能轻易达到云厂商承诺的性能。 插曲:关于sysbench的版本,现在主要有0.4.12和1.0.版本。截止2006年sysbench好长时间没有发展,2017年之前都是用旧版本0.4.12(所以网上一搜一大堆文章都是0.4.的教程),然后作者估计修了几个bug,变成0.5版本,然后就跟过去做了告别,从2017重新开发了一个新版本sysbench 1.0.*,这里讲述的性能测试都是用了最新版。 1. sysbench fileio测试 言归正传,sysbench怎么做IO的性能测试呢, sysbench fileio help ,参数如下: #/usr/local/sysbench_1/bin/sysbench fileio help sysbench 1.0.9 (using bundled LuaJIT 2.1.0-beta2) fileio options: --file-num=N

sysbench 压力测试

ⅰ亾dé卋堺 提交于 2019-11-27 02:17:36
/*--> */ /*--> */ 介绍 sysbench是一个模块化、跨平台、多线程基准测试工具,主要用于测试不同系统参数下的数据库负载情况,本文主要介绍0.4版本的使用。sysbench主要用于以下性能测试: 文件I/O性能 调度 内存分配和传输 POSIX线程 数据库 安装 1.安装插件 yum install libtool -y 2.安装 ./configure --prefix=/usr/local/sysbench-0.4.12 --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib make make install cp -r sysbench/tests /usr/local/sysbench-0.4.12 ln -s /usr/local/sysbench-0.4.12/bin/sysbench /usr/local/sysbench-0.4.12/sysbench 修改环境变量,在环境变量中加入 export LD_LIBRARY_PATH=/usr/local/mysql/lib 注意:如果安装目录中没有configure那么需要执行以下操作: chmod +x autogen.sh ./autogen.sh 如果想要让 sysbench

mysql sysbench 1.0.X

流过昼夜 提交于 2019-11-26 01:45:58
1.安装sysbench yum install sysbench 2.download source code sysbench-1.0.14\src\lua,所有文件上传Linux /opt目录 3.准备mysql CREATE DATABASE tdb01; CREATE USER 'root'@'192.168.0.130' IDENTIFIED BY 'root123'; GRANT ALL PRIVILEGES ON tdb01.* TO ‘'root'@'192.168.0.130'; FLUSH PRIVILEGES; 4.执行步骤 / prepare / sysbench /opt/lua/oltp_read_write.lua --db-driver=mysql --mysql-host=192.168.0.130 --mysql-db=tdb01 --mysql-user=root --mysql-password=root123 --table_size=5000000 --tables=10 --threads=300 --time=60 --report-interval=10 prepare / run / sysbench /opt/lua/oltp_read_write.lua --db-driver=mysql --mysql-host=192