IOPS与吞吐量相对应

时间:2013-04-02 08:39:10

标签: storage throughput

  1. 大数据存储中的IOPS和吞吐量有什么区别?
  2. 文件大小是否会影响IOPS?为什么/为什么不呢?

4 个答案:

答案 0 :(得分:24)

这是我在谈论吞吐量和IOPS时想到的一个比喻。

认为是:

  1. 您有4个大小相同的水桶(磁盘块),它们要填充或倒空水。

  2. 您将使用一个水罐将水转移到水桶中。现在您的问题将是:

  • 在给定时间(每秒),您可以倒(写)多少水​​或取(读)多少水?这是IOPS

  • 在给定的时间(每秒),水罐可以连续进出水桶的水量(位,kb,mb,ect等)是多少?这就是吞吐量。

此外,倒水和/或抽水的过程都会延迟。这是延迟。

在谈论IOPS和吞吐量时,需要考虑三件事。

  • 大小(文件大小/块大小)
  • 模式(随机/顺序)
  • 混合(读/写)百分比

答案 1 :(得分:9)

IOPS测量每秒的读写操作次数,而吞吐量测量每秒读取或写入的位数。

虽然它们衡量的是不同的东西,但它们通常会相互跟随,因为IO操作的大小大致相同。

如果您有大文件,则只需要更多IO操作即可读取整个文件。文件大小对IOPS没有影响,因为它测量读取或写入的簇数,而不是文件数。

如果你有小文件,会有更多的开销,所以虽然IOPS和吞吐量看起来不错,但你可能会遇到较低的实际性能。

答案 2 :(得分:2)

磁盘IOPS描述了每秒钟磁盘上输入/输出操作的计数,无论块大小如何。

磁盘吞吐量描述了每秒可以传输多少数据,因此块大小在计算应用程序所需的吞吐量时起着重要作用

让我们将3000 IOPS和SQL数据库引擎作为示例,以db引擎为单位的块大小称为page size,对于SQL Server来说,它的大小为8 KB。如果要计算实际吞吐量,则在定义了IOPS的情况下,将得出以下公式:

throughput = [IOPS] * [block size] = 3000 * 8 = 24 000 KB/s = 24 MB/s

答案 3 :(得分:1)

IOPS - 对于像cassendra这样的Dbs中使用的OLTP事务,读写操作的数量最多。

吞吐量 - 是每秒传输的位数。每秒转移数据。 主要是高数据传输应用程序的单位,如大数据hadoop,kafka流媒体