云硬盘的基准性能测试场景

参考来源:
深入浅出云计算-05 | 云硬盘:云上IO到底给不给力

云硬盘的性能等级

当下的云硬盘经过了多次的软硬件迭代,尤其是SSD的迅速发展,吞吐量和随机读写能力等各项性能指标都已经不再是问题了。在现代云计算中,已经发展出了基于不同存储介质的、丰富的性能等级选择,你已经能够找到单盘IOPS在数十万量级甚至达到百万的云硬盘产品了。

所以,现在的云硬盘,性能上已经非常“给力”了。你更多的是要考虑如何根据应用场景,选择合适介质的硬盘等级,同时权衡好相应的成本。

那么下面,我们就分别来看一看主流云硬盘的不同性能等级,以及它们对应的磁盘类型和存储介质。

第一个等级的云硬盘,是基于传统HDD硬盘构建而成的。这类云盘的性能一般,最高IOPS大概在数百左右。在很多的云上,已经不把它作为推荐的选择了。但它并非一无是处,成本低就是它的最大优势,在不注重性能的测试环境,或者是个人自用的服务器,它就是一个很好的选择。

第二个等级,往往是基于混合硬盘,也就是结合HDD和SSD硬盘构建的云硬盘。它会综合发挥SSD的性能优势和HDD的容量优势。比如它可以用SSD部分来承载热点区域数据,或是作为缓存,来提高响应性能。在这个等级下,典型的IOPS为数千左右,是很多云上创建硬盘的默认选项,比较适合像是操作系统启动盘这样的常规负载。

第三个等级的云硬盘,它的存储介质就是纯SSD硬盘了。虽然贵一些,但一分价钱一分货,这个等级下的云硬盘能够提供非常稳定的IO能力,IOPS通常能够上万,也有相当不俗的吞吐量和较低的访问延时。你可以用它来承载生产环境中重要的关键业务应用,或是各类数据库等IO密集型应用。

第四个等级,也是当下业界的最高等级,就是进一步优化增强的最新SSD云盘。它一般会采用更新一代的企业级闪存硬件,配合自研或改进后的底层传输协议,和虚拟化技术栈的优化来提供服务。因此它能够达到惊人的性能水平,满足我们最为苛刻的性能场景需求,比如承载SAP HANA(SAP的高性能计算平台)、高并发OLTP数据库等等。这类SSD云盘的IOPS通常能够突破十万以上

各个云对于不同等级云硬盘的命名方法各有不同,我把相应的产品类型和名称整理成了一个表格,方便你去了解和查询:

用lsblk和df命令查看一下磁盘的情况

挂载了一个5G的硬盘,查看是否挂载正常

root@ub1804:/home/xiaoyue# lsblk /dev/sdb
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb    8:16   0   5G  0 disk 

将这块磁盘进行格式化,并创建ext4文件系统

root@ub1804:/home/xiaoyue# mkfs.ext4 /dev/sdb
mke2fs 1.44.1 (24-Mar-2018)
创建含有 1310720 个块(每块 4k)和 327680 个inode的文件系统
文件系统UUID:83b8c1b7-0397-4c8a-b4df-41adebf1d3ab
超级块的备份存储于下列块: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736

正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(16384 个块) 完成
写入超级块和文件系统账户统计信息: 已完成

挂载块设备

在/mnt下,创建一个data目录,并将这个新的块设备挂载到该目录

root@ub1804:/home/xiaoyue# mkdir /mnt/data
root@ub1804:/home/xiaoyue# mount /dev/sdb /mnt/data/

测试磁盘4K随机读方面的能力

使用fio工具,来测试下这块SSD盘4K随机读方面的能力和前面不同的是,这回我们要把测试文件路径定位到“/mnt/data”目录,因为这个目录指向的是刚刚创建的新硬盘:

root@ub1804:/home/xiaoyue# fio --name=mytest2 --filename=/mnt/data/testfile2 --rw=randread --refill_buffers --bs=4k --size=1G -runtime=10 -direct=1 -iodepth=128 -ioengine=libaio
mytest2: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=128
fio-3.1
Starting 1 process
mytest2: Laying out IO file (1 file / 1024MiB)
Jobs: 1 (f=1): [r(1)][100.0%][r=79.5MiB/s,w=0KiB/s][r=20.4k,w=0 IOPS][eta 00m:00s]
mytest2: (groupid=0, jobs=1): err= 0: pid=5141: Thu May 30 18:16:13 2024
   **read: IOPS=20.1k, BW=78.4MiB/s (82.2MB/s)(784MiB/10001msec)**
    slat (usec): min=26, max=4698, avg=42.81, stdev=21.81
    clat (usec): min=26, max=25145, avg=6318.94, stdev=635.86
     lat (usec): min=59, max=25479, **avg=6363.29**, stdev=639.43
    clat percentiles (usec):
     |  1.00th=[ 5538],  5.00th=[ 5669], 10.00th=[ 5735], 20.00th=[ 5866],
     | 30.00th=[ 5997], 40.00th=[ 6128], 50.00th=[ 6259], 60.00th=[ 6390],
     | 70.00th=[ 6521], 80.00th=[ 6718], 90.00th=[ 6915], 95.00th=[ 7111],
     | 99.00th=[ 7701], 99.50th=[ 7963], 99.90th=[15270], 99.95th=[17433],
     | 99.99th=[22676]
   bw (  KiB/s): min=71225, max=82568, per=99.72%, **avg=80091.84**, stdev=2520.48, samples=19
   iops        : min=17806, max=20642, **avg=20022.68**, stdev=630.10, samples=19
  lat (usec)   : 50=0.01%, 100=0.01%, 250=0.01%, 500=0.01%, 750=0.01%
  lat (usec)   : 1000=0.01%
  lat (msec)   : 2=0.01%, 4=0.02%, 10=99.71%, 20=0.22%, 50=0.02%
  cpu          : usr=0.03%, sys=99.72%, ctx=1395, majf=0, minf=137
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.1%
     issued rwt: total=200811,0,0, short=0,0,0, dropped=0,0,0
     latency   : target=0, window=0, percentile=100.00%, depth=128

Run status group 0 (all jobs):
   READ: bw=78.4MiB/s (82.2MB/s), 78.4MiB/s-78.4MiB/s (82.2MB/s-82.2MB/s), io=784MiB (823MB), run=10001-10001msec

**Disk stat**s (read/write):
  sdb: ios=200256/2, merge=0/1, ticks=18819/0, in_queue=8, util=99.20%
root@ub1804:/home/xiaoyue# 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/667915.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数仓建模—ChatETL

数仓建模—ChatETL 前面我们介绍过ChatBI ,就是让用户通过自然语言对话的方式可以获取到自己想要的数据,然后通过合适的报表展示出来,其实我们可以将其理解为应用层面的技术创新,但是这个实现的前提就是我们底层已经有加工好的大量的数据模型数据表,并且有完善的元数据建…

“论SOA在企业集成架构设计中的应用”必过模板,突击2024软考高项论文

考题部分 企业应用集成(Enterprise Application Integration, EAI)是每个企业都必须要面对的实际问题。面向服务的企业应用集成是一种基于面向服务体系结构(Service-OrientedArchitecture,SOA)的新型企业应用集成技术,强调将企业和组织内部的资源和业务功…

【自动化运维】不要相信人,把所有的东西都交给机器去处理

不积跬步,无以至千里;不积小流,无以成江海。 大家好,我是闲鹤,十多年开发、架构经验,先后在华为、迅雷服役过,也在高校从事教学3年;目前已创业了7年多,主要从事物联网/车…

【网络安全的神秘世界】MySQL

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 MySQL MySQL 教程 | 菜鸟教程 (runoob.com) 什么是数据库 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库 在do…

COLING 2024: 复旦发布AoR,层级聚合推理突破大模型复杂推理上限

“三个臭皮匠,顶个诸葛亮?” “一个模型不行,那就再堆一个?” 过去当我们在处理复杂任务的时候,往往会考虑集成策略(Ensembling Strategy),通过多个模型投票的方式,选出…

[手游] Florence逝去的爱弗洛伦斯

图片处理工具箱Hummingbird : Hummingbird使用智能压缩技术来减少文件的大小,支持:jpg、png、webp、svg、gif、gif、css、js、html、mp4、mov,可以设置压缩的同时等比例缩放图片或视频的尺寸。可以拖放文件夹压缩,一次最多可处理1…

茉莉香飘,奶茶丝滑——周末悠闲时光的绝佳伴侣

周末的时光总是格外珍贵,忙碌了一周的我们,终于迎来了难得的闲暇。这时,打开喜欢的综艺,窝在舒适的沙发里,再冲泡一杯香飘飘茉莉味奶茶,一边沉浸在剧情的海洋中,一边品味着香浓丝滑的奶茶&#…

短视频矩阵营销系统V2.3.0

抖音矩阵云混剪系统 源码短视频矩阵营销系统V2.3.0(免授权版)(感觉和上一个版本没什么区别)多平台多账号一站式管理,一键发布作品。智能标题,关键词优化,排名查询,混剪生成原创视频&…

《异常检测——从经典算法到深度学习》29 EasyTSAD: 用于时间序列异常检测模型的工业级基准

《异常检测——从经典算法到深度学习》 0 概论1 基于隔离森林的异常检测算法 2 基于LOF的异常检测算法3 基于One-Class SVM的异常检测算法4 基于高斯概率密度异常检测算法5 Opprentice——异常检测经典算法最终篇6 基于重构概率的 VAE 异常检测7 基于条件VAE异常检测8 Donut: …

p2p文件传输小工具

使用webRTC的相关技术栈可以很轻松的开发一个p2p文件传输工具,这里主要讲下使用datachannel开发的一个文件传输工具client程序的使用 客户端A:需要可以访问公网,运行client的主机 客户端B:可以访问公网,可以和客户端…

go微服务项目“商城项目实战开发”整理第一部环境的准备

文章目录 商城项目实战开发环境的准备01、微服务的简单概述02、为什么要用微服务?03、本次课程微服务的技术栈04、微服务的准备工作05、微服务项目的搭建和目录的划分06、微服务项目实战 - 用户服务-srv的搭建07、微服务项目实战 - 用户服务-api的搭建08、微服务项目实战 - 商…

深度神经网络——什么是梯度提升?

在数据科学竞赛中,梯度提升模型(Gradient Boosting)是一种非常强大的工具,它能够将多个弱学习模型组合起来,形成一个强学习模型。这个过程是通过逐步添加弱学习者来实现的,每个新加入的弱学习者都专注于当前…

sudo命令的隐患-要注意安全使用!!严格管理!!严格控制

前言 众所周知,sudo命令非常方便,而且有一定的优点。比如不需要知道root密码就可以执行一些root的命令。相比于su 必须知道root密码来说,减少了root密码泄露的风险。 但是sudo也是一把非常锋利的双刃剑,需要加以限制,…

Python 关于字符串格式化

在Python中,字符串格式化有以下几种方法: 1.可以使用字符串的str.center(width), str.ljust(width), 和 str.rjust(width)方法来实现字符串的居中、左对齐和右对齐操作。 居中对齐: text "Python" centered_text text.center(10…

最新扣子(Coze)实战教程:如何创建扣子插件,完全免费,快来学习吧~

🧙‍♂️ 诸位好,吾乃斜杠君,编程界之翘楚,代码之大师。算法如流水,逻辑如棋局。 📜 本教程是《AI应用开发系列教程之扣子(Coze)实战教程》,完全免费学习。 ⭐ 关注斜杠君,可获取完整…

Selenium+Java 环境搭建

selenium 介绍 Selenium 是 web 应用中基于 UI 的自动化测试框架,支持多平台、多浏览器、多语言。 早期的 selenium RC 已经被现在的 webDriver 所替代,可以简单的理解为selenium1.0webdriver 构成 现在的 Selenium2.0 。现在我们说起 selenium &#xf…

ESP32-C3模组上跑通OTA升级(10)

接前一篇文章:ESP32-C3模组上跑通OTA升级(9) 八、程序调试过程中遇到的问题及解决 前边各篇文章主要讲解了OTA的基础知识以及示例代码,但这其实是(远远)不够的,真正要在ESP32-C3芯片上跑通&…

Oracle创建用户/表空间/赋权常规操作

1. 登录oracle su - oracle sqlplus / as sysdba 2.查看库里存在的用户,防止冲突 SELECT username FROM all_users ORDER BY username; 3.查看库里存在的表空间,防止冲突 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space_MB f…

Windows 下 PostgreSQL 图形化界面安装、配置详解

相信大家对PostgreSQL都不陌生吧,自从MySQL被Oracle所控制后,PostgreSQL就成为了国内去O的首选数据库了,并且PostgreSQL目前不受任何商业公司控制,所以国内很多厂商都是基于PostgreSQL做二次开发来实现数据库自主可控的目标(国内很…

RH850F1KM——ADC模块

文章目录 前言一、Conversion time:转换时间二、参考电压三、分辨率scan group四、虚拟通道模数转换器-ADC基础 Autosar MCAL配置——ADC 前言 在RH850F1KM系列MCU中,ADCA模块即为ADC模块,如下是各个型号所具有的ADC物理单元。 时钟的频率决定ADC的触发频率,转换时间和采样…