美文网首页工作生活
白话分布式存储测试(一)明确测试目标

白话分布式存储测试(一)明确测试目标

作者: relaX_2363 | 来源:发表于2019-07-08 14:47 被阅读0次

之前工作中做了很多存储测试相关的事情,对存储测试有一些想法,最近想用几篇文章来介绍下分布式存储测试相关的一些内容,这部分内容对学习存储有很好的促进作用,欢迎大家关注~

  • 白话分布式存储测试(一)明确测试目标
  • 白话分布式存储测试(二)熟悉测试工具 【将发布在微信公众号】
  • 白话分布式存储测试(三)测试方法论 【将发布在微信公众号】
  • 白话分布式存储测试(四)测试结果分析 【将发布在微信公众号】

首先,我们需要明确我们为什么要做测试,或者说明确我们做测试的目标是什么?

从宏观上看,存储测试要考虑三个维度:

分别从这三个维度展开一下

一、测试工具

测试工具可以做什么?

测试工具提供了诸多参数选项,可以尽可能逼真地模仿用户程序的IO模式。比如有用户告诉你他的程序会多线程随机写4K大小的数据块,他想知道他的程序跑在我们的分布式存储上性能如何? 这时你可以拿用户程序去直接跑一下,或者你也可以用测试工具模拟下用户程序来预估性能,但是如果用户很多呢,如果用户程序没有那么易上手呢?势必费时费力。 所以,测试工具帮我们应对了这个问题,我们可以提前用测试工具跑出一些常见IO模式的存储性能报告,这样当用户咨询的时候,我直接根据性能报告来匹配用户程序的IO模式来进行预估。

通常,我们做存储测试就是为了获得特定IO模式或者常见IO模式的性能数据

存储测试时的IO模式一般要涵盖以下三个关注点:

关注点 解释
关注IO延时 不关心每秒可以完成多少次IO,而是关心单次IO从提到到返回结果最快能多快
关注IO吞吐 在可以接受的IO延时范围内,每秒最多能完成多少次IO
关注IO带宽 不关心每秒完成多少次IO,而是关心每秒可以读写多少MB的数据

测试工具调节IO模式的一些常见参数(以fio为例)有:
blocksize、numjobs、size、rw_pattern、ioengine、direct ...
通过调节这些参数,我们就可以测试出不同关注点的性能数据。

后面的文章将会介绍怎么通过调节这些参数来对不同的关注点进行测试

二、集群客户端

视线抬高,我们的关注点不再是某个用户的应用程序,而是很多用户的应用程序。这时,我们需要关注的是,一个集群客户端的性能瓶颈在哪。实际使用中,一个集群客户端可以承载多少用户应用程序的IO需求。未雨绸缪,提前规划好用户程序及集群客户端数。

三、存储集群

视线再抬高,关注点脱离单个集群客户端,这时,我们需要关注的是,多少个客户端满负荷工作能打满存储集群,也就是需要测试出整个存储集群的IO能力

对于机械磁盘,集群的IO能力通常是可以通过底层磁盘的IO能力来进行估算的,这是因为机械磁盘性能低下,存储集群程序IO栈及网络延时的影响有限,集群IO能力变化不大。

对于非机械磁盘,其性能越好,存储集群程序IO栈及网络延时的影响会体现地越发明显,这时测试存储集群IO能力也就更加有意义。

同样,未雨绸缪,有了存储集群IO能力的参考值,我们可以提前规划集群客户端及用户应用程序。

四、后续

本文简单介绍了存储测试的几个常见目标,后续文章会详细介绍常用测试工具(fio、dd)的使用方式、存储测试方法论、测试结果分析等内容,欢迎关注 : )

相关文章

  • 白话分布式存储测试(一)明确测试目标

    之前工作中做了很多存储测试相关的事情,对存储测试有一些想法,最近想用几篇文章来介绍下分布式存储测试相关的一些内容,...

  • postgres-xl分布式数据库测试2_分布式事务的强一致性

    postgres-xl分布式数据库测试1已经测试了pgxl的分布式存储(REPLICATION、ROUNDROBI...

  • MioIO读/写性能测试

    COSBench COSBench是Intel团队基于java开发,是一个测试云对象存储系统的分布式基准测试工具,...

  • Jmeter测试步骤

    ❗❗❗在进行测试之前,应当明确本次的测试目标,以便更有针对性的制定和实施相关测试方案。 ❗❗❗还原真实环境(被测试...

  • Android单元测试

    单元测试不是集成测试,单元测试只是测试一个方法单元,不是测试一整个流程。单元测试的目标函数主要有三种: 有明确的返...

  • 信息收集

    在渗透测试中一般分为以下几个流程:明确目标、信息收集、渗透测试、后渗透测试、报告文档,虽然各种书籍上对渗透测试的流...

  • 【全程软件测试3读书笔记】测试工作量估算

    确定了测试需求、明确了测试范围后,我们需要明确测试任务,估算测试工作量。基于质量需求和测试的工作量、测试环境、产品...

  • L2-13定义实用的测试性能指标

    建立和部署一套面向测试目标的测试过程性能指标,以测量测试过程的质量,同时也包括了测试性能指标相关的数据收集、存储和...

  • docker学习笔记-搭建分布式UI自动化测试框架(五)

    1、搭建浏览器集群,进行兼容性测试和分布式测试,提高测试效率 2、分布式UI自动化测试原理 Grid Hub是控制...

  • 软件测试的方法

    每次开展测试之前先问自己6个问题 测试的对象和范围?(明确需求的验收条件) 测试的目标是什么?(跟开发沟通哪些需要...

网友评论

    本文标题:白话分布式存储测试(一)明确测试目标

    本文链接:https://www.haomeiwen.com/subject/hixthctx.html