我们有一个在Azure虚拟机上托pipe的SQL服务器。 我们的应用程序之一是在数据库上非常读\写密集,我们看到可怜的磁盘性能。 磁盘队列长度为10或更大。
我一直在试图find一种提高磁盘性能的方法。 我在这里发现了一个technetvideo,提到了一个磁盘配额,跨越4个存储帐户增加了磁盘I / O。 任何人都可以确认这个磁盘限制器或推荐这种跨越技术?
Azure磁盘存储为Azure存储中的页面blob。 存储帐户具有特定的比例目标。 当您通过虚拟机驱动繁重的磁盘I / O负载时,可以推动这些存储目标的限制。 本地冗余存储帐户具有10Gbps入口/ 15Gbps出口的性能目标,而地理冗余帐户具有5Gbps入口/ 10Gbps出口的目标。 一个特定的blob(持有一个磁盘)的目标是60MBytes / sec。
这就是为什么您会看到在多个存储帐户中使用多个磁盘的build议(例如TechNetvideo),以超出特定于帐户的存储规模目标。
这里有一篇关于虚拟机大小和相关最大IOP 的文章 。 你会看到每个VM大小都是最大的。 相当于500 x #disk附加的IOP。
本文介绍了在虚拟机中运行SQL Server的性能注意事项,涵盖了包括磁盘IO在内的许多主题。
编辑这个答案有点过时了。 除标准的存储磁盘之外,您现在可以使用Premium存储磁盘。 高级存储是SSD支持的,磁盘范围从500-5000 IOPS和100-200MB / sec,具体取决于磁盘层次(最高为1TB,5000 IOPS,200MB / s)。 对于给定的DS或GS系列虚拟机,您仍然具有整体限制,但是这些限制高于D-或G-系列(例如,在80,000 IOPS和GS5上最高可达2,000 MB / s)。
有关VM大小的更多信息。
更多信息在这里的高级存储。
您可以在DS系列文档中看到,新的DS系列虚拟机(具有本地SSD临时驱动器和持久性SSD备份驱动器)确实具有每虚拟机带宽限制。
带宽为每个内核〜32 MB / s。