Articles of iops

在新的ZFS镜像(raid1)中,可怕的(〜1.4倍vs预期〜2x)随机读取性能

我正在使用FIO(灵活I / Otesting器)testingZFS镜像,以了解ZFS镜像的随机读取可扩展性。 主要和次要caching已经被设置为none,因为我使用的应用程序执行它自己的caching。 出于testing目的,我使用磁盘/dev/sdb和/dev/sdc ,它们具有〜100个随机读取IOPS。 当使用单个磁盘ZFS安装时,单个磁盘数字是从FIO获得的。 我对ZFS镜像的理解应该经历大约200(100 + 100)个随机读取IOPS。 当testing时,我只遇到大约140随机读取IOPS。 完整的结果如下: test@pc:/mnt/zfs-raid1# fio –name=randread –ioengine=libaio –iodepth=16 –rw=randread –bs=4k –direct=0 –size=512M –numjobs=8 –runtime=240 –group_reporting randread: (groupid=0, jobs=8): err= 0: pid=4293: Wed Nov 16 21:02:08 2016 read : io=137040KB, bw=584482B/s, iops=142, runt=240091msec slat (usec): min=222, max=2246.9K, avg=56047.94, stdev=85252.98 clat (usec): min=2, max=5142.9K, avg=838922.05, stdev=443521.12 lat (msec): […]

为什么存储的性能在不同的队列深度发生变化?

我正在市场上为我们的服务器进行存储升级。 我正在研究各种PCIe SSD设备的基准testing,并且在比较中我看到IOPS在不同的队列深度发生变化。 这怎么可能,为什么会这样呢? 我理解的方式是:我有一个最大(理论)10k IOPS的设备。 如果我的工作负载持续产生100001 IOPS,那么我的队列深度为1,我是否正确? 然而,从我在基准testing中看到的一些设备在较低的队列深度下运行速度较慢,然后在4-64的深度加速,然后在更大的深度再次减速。 不是队列深度是操作系统(或者可能是存储控制器)的属性,那为什么会影响IOPS?

AWS EBS中IO操作(IOP)的大小是多less?

我的研究表明,现代文件系统(ext4,xfs)的标准和最大(内核限制)块大小都是4KB。 但是, AWS允许IO的操作大到256KB,并说 对于32 KB或更小的I / O操作,只要您驱动足够的I / O来保持驱动器繁忙,则应该会看到已设置的IOPS数量。 对于较小的I / O操作,甚至可能会看到IOPS值高于您设置的IOPS值(在客户端测量时),这是因为客户端可能会将多个较小的I / O操作合并为一个较小的数字大块。 Linux在哪里暴露和/或允许configuration“设备块大小?” 当说一个在postgres(8KB块大小)的全表扫描时,你可以在哪里看到和/或configuration操作系统问题的“IO操作”的大小?

高艾奥瓦因不明原因

我很难找出在我的服务器上导致高iowait的原因。 这是iostat -xm 5 5日志 Linux 2.6.32-358.6.1.el6.x86_64 (prod-1.localdomain) 09/28/2013 _x86_64_ (16 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 6.98 0.05 3.72 3.54 0.00 85.71 Device: rrqm/s wrqm/sr/sw/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util sdb 0.08 120.88 30.27 1.72 0.96 0.48 92.20 0.34 10.67 3.79 12.13 sda 7.63 37.19 8.96 4.89 0.35 0.16 76.40 […]

使用Windows PerfMon估算Amazon EBS卷的IOPS

我正在评估将老化的基础设施迁移到亚马逊的AWS,并试图估算成本。 我知道我们当前的磁盘空间要求,带宽以及其他影响成本的其他variables。 那个让我难倒的是EBS卷上的IOPS。 我的想法是从我们现有的服务器(使用PolyMon)捕获性能监视器数据,但我不确定哪些PhysicalDisk指标与Amazon的IOPS计数相匹配。 我的两个猜测是磁盘读/写或平均磁盘读/写。 有什么想法吗? 谢谢!

使用24x SSDarrays设置低成本图像存储服务器以获得高IOPS?

我想build立让我们把它命名为一个低成本的Ra *圣将主办我们的社会网站的图像(数百万),我们有5 KB大小的每张图片的3 KB,7 KB,15 KB,25 KB和80 KB的每张照片。 我的想法是在Raid 6中构build一个24x用户240 GB SSD的服务器,这将为我提供5 TB的磁盘空间来存储照片。 有HA,我可以添加第二个,并使用drdb。 我期望获得超过150'000 IOPS(4K随机读取)。 由于我们大多只有读取权限,很less删除照片,我认为与消费者的MLC SSD。 我阅读了许多耐力评论,只要我们不重写单元格,就没有看到问题。 你对我的想法有什么想法? – 我不确定Raid 6或Raid 10(更多的IOPS,成本SSD)。 ext4文件系统是否正常 – 您是否使用1或2 Raid控制器,以及Extender Backplane 如果有人已经意识到类似的事情,我会很乐意得到真实世界的数字。 UPDATE 我已经购买了12台OCZ Talos 480GB SAS SSD硬盘,将它们放置在一个12-bay DAS中,并连接到PERC H800(1GB NV Cache,LSI制造的快速path)控制器,我计划安装Raid 50与ext4。 如果有人想知道一些基准,让我知道你想看到什么。

我可以使用bonnie ++来确定磁盘arrays上的IOPS吗?

我想测量RAID6arrays与RAID10arrays的读写性能。 我知道bonnie ++可以用来计算磁盘性能,但是bonnie ++产生的数字不包括像“IOPS”这样的术语。 这些天,许多磁盘性能文章和howtos提到“IOPS”。 如何使用bonnie ++来计算磁盘arrays的IOPS。 如何确保我的testing正在testing磁盘的实际I / O而不是系统caching? 以下是我的一台服务器的一些示例统计信息。 这些字段中的一个会报告与IOPS类似的数字吗? # bonnie++ -q -d /data -u root Version 1.96 ——Sequential Output—— –Sequential Input- –Random- Concurrency 1 -Per Chr- –Block– -Rewrite- -Per Chr- –Block– –Seeks– Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP hosta.example. 11680M 680 99 281780 […]

从我在AWS EC2上的应用程序中查找EBS卷的当前IOPS使用情况

我对AWS和磁盘性能比较陌生。 我正试图弄清楚我的应用程序需要执行多less预configuration的IOPS。 目前,我的PHP和MySQL应用程序被托pipe在附有简单EBS卷的EC2实例上。 EBS卷的监视提供了读取吞吐量和写入其他一些matrix的吞吐量。 如何从读取吞吐量(〜400 Ops / s)和写入吞吐量(〜4000 Ops / s)数据中find当前EBS卷的IOPS? 如果我以每秒的操作单位进行操作,则IOPS达到约4.5K,我认为这不是一个正确的,因为简单的EBS卷只能在100 IOPS和偶尔有几百个操作系统上运行。

亚马逊:如何知道我是否需要预置IOPS?

我们最近转移到amazon web services器,并仍在学习我们的方式。 我们的EC2 Web实例和我们的RDS MySQL实例(现在我们每个只有一个)似乎没有问题。 但是我想知道我们能否取得更好的performance。 我们运行的是一个非常小的站点,但由于MySQL端的大量聚合,某些页面仍然需要一段时间才能加载。 以下是我们目前的统计信息: EC2 Webserver的使用(c3.large) RDS(MySQL)用法(db.m1.large) 其中只有DB(db.m1.large)是“Provisioned IOPS Optimized”。 非“PIOPS优化”实例是否仍然受益于预置IOPS? 或者我们应该为我们的EC2 Webserver考虑一个不同的实例types? 有了这些统计数据,我们是否还需要预置IOPS? 我们会看到任何好处吗? 如果预置IOPS将有所帮助,我怎么知道我需要多less? 我怎么能testing这个?

RAID级别对IOPS的影响

关于IOPS,我在网上看到了几个来源,提示给定数量磁盘的IOPS仅仅是单个磁盘的IOPS乘以磁盘的数量。 如果我对IOPS的理解是正确的(而且我一点都不确定),那么我会认为现实将取决于RAID级别,其中包括许多其他因素。 使用RAID 1/10时,所有数据都至less被复制到两个磁盘上,从而减less某些IO模式在特定磁盘上的争用。 但是,在条带化的RAID级别(如RAID 0/5/6)中,数据是分布式的而不是重复的,这意味着连续的读取请求可能针对同一个主轴,从而导致在前一个IO完成时阻​​塞。 写作甚至更有争议。 我还要补充一点,我认识到,由于各种优化和其他因素,现实情况要复杂得多。 我的问题实际上只是在一个非常基本的层面上,即我是否理解IOPS意味着什么是正确的。 这可能是因为我认为IOPS甚至会受到RAID级别的影响,这说明对这个概念有一个基本的误解。