1. 性能测试环境

在单机环境(一台dataserver)和分布式环境(多台dataserver)下分别进行测试,或只在分布式环境下进行测试。

2. 性能测试指标

主要考量两个指标

(1)服务端的极限QPS

(2)单个操作的响应时间rt

当然其实还有其它不少指标,例如服务端的资源消耗情况、并发数等等。

3. 性能测试方法

主要针对tair ldb存储引擎在缓存了不同级别数据的前提下,添加了范围Bloomfilter支持的前后对 get_range接口测试的性能对比情况。考虑到网络方面的负载,每次操作应该重复N次取个稳定值。具体流程初步设计如下:

(1)当dataserver数据库为空时,通过tair客户端向dataserver服务端put一定量的数据。

(2)在(1)完成后,以单线程通过tair客户端进行get_range调用向dataserver获取数据,记录N次操作所消耗的时间。

(3)并发多个线程通过tair客户端的get_range调用向dataserver获取数据,每个线程完成N次的操作,记录服务器的QPS大小、响应时间等。

(4)不断增大dataserver的存储数据量,重复进行(1)~(3)的测试,形成未添加范围Bloomfilter支持的性能测试报告。

(5)对tair ldb添加范围Bloomfilter支持后,再重复进行(1)~(4)的操作,最终形成两者的性能对比测试报告并做具体的分析。

4. 性能测试工具

单机下常用的性能测试工具有: GNU的gprof,IBM的PurifyPlus,Intel的VTune,AMD的CodeAnalyst,还有Linux下的OProfile/perf,对于这些工具是否能应用到分布式系统中还不甚了解。专门针对分布式环境的性能测试工具,相关资料较少,只看到一个基于Java的Jmeter,淘宝的DST。

我们的需求相对较简单,使用这些工具反而增加了其复杂性,因此我们决定自己写一个简单的性能测试工具,基本思路是调用tair client的api,启动多线程去压。然后记录一些压测结果。类似rocksdb/tools下面的db_stress.cc就是这种思路。还有leveldb下的各个test测试也是值得参考的资料,比如db_bench.cc基测程序。

tair ldb存储引擎性能测试方案相关推荐

  1. Tair LDB基于Prefixkey的范围查找性能优化项目中期总结

    "Tair LDB基于Prefixkey的范围查找性能优化"这个项目刚好进行了一个月,这一个月主要是熟悉项目.掌握项目和提出设计方案的过程,下面从几个方面总结下个人在该项目上所做的 ...

  2. Tair存储引擎简单介绍以及常见API操作

    一.Tair存储引擎 Tair的存储引擎有一个抽象层(storage_manager),只要实现存储引擎接口,便可以替换Tair的底层存储引擎. 可插拔存储引擎-类似MySQL Tair默认包含四种存 ...

  3. Tair 对 Redis 引擎架构之争的看法

    Tair 对 Redis 引擎架构之争的看法 文章目录 Tair 对 Redis 引擎架构之争的看法 背景 Tair 引擎架构的发展 Tair 对引擎模型的思考 Tair 并发引擎设计 Tair 慢查 ...

  4. 如何写MySQL存储引擎

    mysql教程:如何写MySQL存储引擎 [日期:2009-04-02]     来源:  作者: 在MySQL 5.1中开发一个存储引擎已经是比较方便了.所谓存储引擎实际上是按照MySQL的约定,提 ...

  5. 淘宝tair--分布式 key/value 存储引擎

    1.简介 tair 是淘宝自己开发的一个分布式 key/value 存储引擎. tair 分为持久化和非持久化两种使用方式. 1.非持久化的 tair 可以看成是一个分布式缓存. 2.持久化的 tai ...

  6. Tair ldb(leveldb存储引擎)实现介绍

    简介 tair 是淘宝自己开发的一个分布式 key/value 存储引擎. tair 分为持久化和非持久化两种使用方式. 非持久化的 tair 可以看成是一个分布式缓存. 持久化的 tair 将数据存 ...

  7. 基于淘宝开源Tair分布式KV存储引擎的整合部署

    一.前言 Tair支撑了淘宝几乎所有系统的缓存信息(Tair = Taobao Pair,Pair即Key-Value键值对),内置了三个存储引擎:mdb(默认,类似于Memcache).rdb(类似 ...

  8. mysql表jiayi_MySQL Memory存储引擎:优势及性能测试

    MySQL Memory存储引擎:优势及性能测试 上一篇 / 下一篇  2012-08-10 18:29:44 Memory存储引擎将表的数据存放在内存中.Memory替代以前的Heap成为首选项,但 ...

  9. mysql memory优点_MySQL Memory存储引擎:优势及性能测试

    [IT168技术]需求源自项目中的MemCache需求,开始想用MemCached(官方站点:http://memcached.org/ ),但这个在Linux下面应用广泛的开源软件无官方支持的Win ...

最新文章

  1. 忽悠神经网络指南:教你如何把深度学习模型骗得七荤八素
  2. 1_Linux基础知识及命令————登陆登出及图形化界面的初始化
  3. 企业云桌面-06-安装数据库服务器-051-vCdb01
  4. 分布式定时任务调度系统技术选型--转
  5. PHP语言特性和各版本的差异
  6. unity3d 鼠标事件穿透GUI的处理
  7. (大整数类Biginteger)大斐波数
  8. python打包文件提示错误
  9. sip系统完整性是什么?SIP系统完整性保护关闭方法(含M1)
  10. 华为电脑管家最新(11.1.1.95)版安装教程(适合 未安装| 补充说明)
  11. C语言求素数的简化算法
  12. python爬取作品集_Python爬虫爬取哈利波特小说集,并用数据可视化剖析登场人物...
  13. Latex 插入的图片紧跟当前文字
  14. [学者笔谈]史占中:大国崛起:从中国制造到中国智造
  15. keil编译c语言检测,keil c中没有使用到的函数会编译时候会有警告
  16. uniapp样式选择器最全详解
  17. Lua(二)数据类型+变量
  18. Unity3d实现阿拉伯语适配,不规则特殊字符的处理
  19. 股票基础知识(入市必读)
  20. Retrofit使用教程(一)

热门文章

  1. qq飞车手游忘记哪个区了服务器也没显示,qq飞车手游大区查询方法,轻松几步让你知道你是哪个区...
  2. FaceNet 读书笔记
  3. Leco题目:两数相加
  4. python计算英文字符数
  5. 做笔记的方法—— 推荐笔记方法Word方式
  6. 网页上做笔记--Diigo
  7. 11.1-4日,RTE2022 第八届实时互联网大会邀您“聚享万象”,线上报名开启
  8. 《CSS菜鸟教程》学习
  9. Android 获取位置信息
  10. DL中常用的三种K-Lipschitz技术