EC2实例的读访问速度更快; “本地”驱动器或附加的EBS卷?
我有一些需要坚持的数据,所以把它放在EBS卷上。 我正在使用OpenSolaris,因此此卷已作为ZFS池附加。 但是,我有一大堆的EC2磁盘空间将被闲置,所以我正在考虑重新使用这个ZFScaching卷,但是我不想这样做,如果磁盘访问将会比EBS数量可能会产生不利影响。
只是为了加快EBS的共识…
这里要理解的重要一点是,实例的存储速度是不可预知的 – 亚马逊对此没有任何保证。
这些信息来自George Reese的“ Cloud Application Architectures ”一书(看起来相当不错)。它包含一个标题为“ 比较EC2数据存储选项” (第41页)的表格。 这里是该表的一个片段(在书中还有几个其他的特点比较):
S3 Instance EBS Speed Low Unpredictable High Reliability Medium High High Durability Super high Super low High
因此,实例存储有时可能在读取访问方面performance优于EBS,但是如果您想要持续高速访问,则确实需要使用EBS。 正如里斯所说:
另一个问题是实例存储中性能的不可预测性。 你可能会认为它应该比其他选项更快,有时候也是这样。 然而,有些时候,速度却令人难以置信 – 比通过10bT以太网连接的NFS挂载慢。 另一方面,EBS通过GB以太网连接始终如一地为您提供SAN的性能。
我们在系统探索这个问题和相关问题时,大约花费了1000美元的AWS费用,并进行了广泛的分析 。
对于随机(小)读取,我们发现“本地”(EC2实例)存储和EBS具有相似的性能,但是本地存储具有更好的延迟尾部。
对于顺序(批量)读取,EBS在m1.small上速度更快,但是m1.large上的本地速度更快。 我们并没有直接比较其他实例types的本地EBS和EBS,但是我们确实发现,增加实例的大小对本地商店性能的影响比EBS性能要大得多。
还有一个成本问题。 通过将EBS的I / O转移到本地磁盘,您将减lessAWS的费用。
如果你在亚马逊之后的数据库性能,你可能会发现这篇文章有用: http : //www.mysqlperformanceblog.com/2009/08/06/ec2ebs-single-and-raid-volumes-io-bencmark/
我自己研究的一般情况(几个星期来一直在读这个)是EBS是更快的select。
亚马逊已经模糊地声称,EBS通常会胜过EC2实例上的“本地”暂存分区。 我知道在自己使用的EBS卷上我已经经历了更高的吞吐量,但是我并没有考虑测量延迟。
如果您对特定用途的性能感到好奇,那么最好的方法就是设置一个testing实例。 我知道我会的。
我在EBS卷上运行了MySQL实例,并对它们的性能感到满意。 我也没有任何硬数据,但它performance得很好。