实例存储与EBS优化的EC2或RAID卷的性能

时间:2017-03-16 19:29:17

标签: performance amazon-web-services optimization amazon-ec2

根据我自己的经验和我所读到的内容,很少有人不想在实例存储上使用EBS。但是,实例存储通常对磁盘读/写速度更快,因为它实际连接到EC2。我不知道,速度有多快,是否在所有情况下都更快。

所以,我很好奇,如果有人对这些中的任何人有过一些经验,那就是相对速度/性能:

  1. 使用实例存储的EC2与使用EBS(任何存储类型)的非存储优化的EC2

  2. 使用实例存储的EC2与使用EBS的存储优化(I3)EC2

  3. 使用实例存储的EC2与使用某种EBS RAID的非存储优化的EC2

  4. 非存储优化的EBS支持的EC2与存储优化的EC2与具有EBS RAID配置的EC2相比

  5. 以上所有与任何类型的EBS优化实例。

  6. 答案越具体和可量化越好 - 谢谢!

2 个答案:

答案 0 :(得分:2)

Now Available – I3 Instances for Demanding, I/O Intensive Applications声称i3个实例上的实例存储:

  

可以在4 KB的块上提供高达 330万IOPS ,并且可以提供高达16 GB /秒的顺序磁盘吞吐量。

Coming Soon – The I2 Instance Type – High I/O Performance Via SSD声称i2个实例上的实例存储:

  

提供 350,000随机读取IOPS和320,000随机写入IOPS

Amazon EBS Volume Types列出:

  • 通用SSD:最高10,000 IOPS /卷
  • 预配置IOPS SSD:最大20,000 IOPS /卷
  • 吞吐量优化硬盘:最大吞吐量 500 MiB / s(针对吞吐量而非IOPS进行了优化,适用于大型连续读取)

答案 1 :(得分:0)

在比较EBS与实例存储的某些情况下,我们做了一套详尽的基准测试,即

  1. EBS SSD通用iops(1TB卷约3k)
  2. EBS SSD预置的iops(对于1TB的卷约为5,000k)
  3. 实例存储本地磁盘(一个磁盘RAID 0)
  4. 实例存储本地磁盘(两个磁盘带区RAID 1)

我们有以下要点,

    由于低延迟和iops是限制因素,本地磁盘选项在随机访问方面比EBS更好。尽管大多数应用程序都试图避免随机读取,但很难完全避免,因此在该领域的良好性能是一大优势。
    顺序读取也比EBS好得多,主要是因为EBS的速率限制,特别是吞吐量。通常,您将获得对本地磁盘的完整,不受限制的访问,其延迟要比网络存储(EBS)低得多。
  1. Raid1的读取比单磁盘高出2倍(毫不奇怪)。由于需要同时写入两个磁盘,因此写入相同。但是,在较大的系统上,您可以有4个以上的磁盘并执行raid10(镜像条带化),这也可以改善写入。
  1. 不幸的是,如开头所述,本地磁盘选项是临时的,将在实例的终止/停止时丢失您的数据。即便如此,还是值得考虑使用一个高可用性架构。
  1. EBS 50K的性能肯定比3K更好,尽管您通常需要经过4个以上的线程才能看到真正的区别(例如数据库)。单线程进程不会更快(例如文件副本,zip等)。 EBS 50k受实例最大iops(30k)限制,因此通常要注意实例大小也可能是EBS性能的限制因素。
  1. 也可以突袭EBS,但请记住,它是网络存储,因此可能会成为任何性能提升的真正瓶颈。值得单独测试以进行比较。

有关基准的完整详细信息,请参见

https://www.scalebench.com/blog/index.php/2020/06/03/aws-ebs-vs-aws-instance-storelocal-disk-storage/