对Azure的高级存储P30磁盘进行基准测试


9

我们正在由Premium Storage支持的两个新的Standard DS13(8核,56 GB)VM(均使用最新/默认的Windows 2012 R2映像)上进行性能测试,并且在测试本地SSD性能方面达到了第一步。

我们了解到这些虚拟机的400GB本地SSD中有25%可以用作临时存储,而其他75%用于高级存储缓存:http : //azure.microsoft.com/blog/2014/12/11/new-优质存储支持的虚拟机/

对于剩余的25%,我们希望看到以下方面的性能:http : //www.brentozar.com/archive/2014/09/azure-really-60-faster/ http://azure.microsoft.com/blog / 2014/10/06 / d系列性能预期/

...但是Crystal Disk Mark显示它沿以下方向爬行

               Sequential Read :     4.097 MB/s
              Sequential Write :     4.096 MB/s
             Random Read 512KB :     4.112 MB/s
            Random Write 512KB :     4.112 MB/s
        Random Read 4KB (QD=1) :     2.057 MB/s [   502.3 IOPS]
       Random Write 4KB (QD=1) :     2.057 MB/s [   502.2 IOPS]
       Random Read 4KB (QD=32) :     2.048 MB/s [   500.0 IOPS]
      Random Write 4KB (QD=32) :     2.047 MB/s [   499.7 IOPS]

  Test : 50 MB [D: 7.2% (8.1/112.0 GB)] (x5)
  Date : 2015/02/14 15:35:41
    OS : Windows Server 2012 R2 Datacenter (Full installation) [6.3 Build 9600] (x64)

OS磁盘的性能更好,但远未达到P20磁盘期望的150 MB / s(假定这是为默认127GB OS磁盘分配的空间)。

期望:

http://azure.microsoft.com/zh-CN/documentation/articles/storage-premium-storage-preview-portal/

看到:

           Sequential Read :    66.031 MB/s
          Sequential Write :    63.034 MB/s
         Random Read 512KB :    65.861 MB/s
        Random Write 512KB :    63.580 MB/s
    Random Read 4KB (QD=1) :     2.097 MB/s [   511.9 IOPS]
   Random Write 4KB (QD=1) :     2.047 MB/s [   499.7 IOPS]
   Random Read 4KB (QD=32) :     2.086 MB/s [   509.3 IOPS]
  Random Write 4KB (QD=32) :     2.078 MB/s [   507.4 IOPS]

  Test : 50 MB [C: 12.9% (16.4/127.0 GB)] (x5)
  Date : 2015/02/14 15:46:35
    OS : Windows Server 2012 R2 Datacenter (Full installation) [6.3 Build 9600] (x64)

而性能P30磁盘(使用只读缓存)也好不到哪里去:

           Sequential Read :   204.567 MB/s
          Sequential Write :    39.677 MB/s
         Random Read 512KB :   204.549 MB/s
        Random Write 512KB :    34.865 MB/s
    Random Read 4KB (QD=1) :    20.951 MB/s [  5114.9 IOPS]
   Random Write 4KB (QD=1) :     1.666 MB/s [   406.7 IOPS]
   Random Read 4KB (QD=32) :    20.893 MB/s [  5100.9 IOPS]
  Random Write 4KB (QD=32) :    20.944 MB/s [  5113.4 IOPS]

  Test : 50 MB [E: 0.0% (0.2/1023.0 GB)] (x5)
  Date : 2015/02/14 15:22:59
    OS : Windows Server 2012 R2 Datacenter (Full installation) [6.3 Build 9600] (x64)

与我们当前在D13上部署了主机缓存的CloudDrive相比(请注意4KB随机读取的性能):

           Sequential Read :   136.711 MB/s
          Sequential Write :    10.210 MB/s
         Random Read 512KB :   190.744 MB/s
        Random Write 512KB :     9.063 MB/s
    Random Read 4KB (QD=1) :    10.813 MB/s [  2639.8 IOPS]
   Random Write 4KB (QD=1) :     0.508 MB/s [   107.5 IOPS]
   Random Read 4KB (QD=32) :   106.533 MB/s [ 26009.1 IOPS]
  Random Write 4KB (QD=32) :     9.363 MB/s [  2286.0 IOPS]

  Test : 50 MB [F: 4.1% (24.9/600.0 GB)] (x5)
  Date : 2015/02/14 20:25:01
  OS : Windows Server 2012 Datacenter (Full installation) [6.2 Build 9200] (x64)

这是SQLIO报告的本地SSD:

C:\Program Files (x86)\SQLIO>sqlio -dD
sqlio v1.5.SG
1 thread reading for 30 secs from file D:testfile.dat
        using 2KB IOs over 128KB stripes with 64 IOs per run
size of file D:testfile.dat needs to be: 8388608 bytes
current file size:      0 bytes
need to expand by:      8388608 bytes
expanding D:testfile.dat ... done.
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec:   499.38
MBs/sec:     0.97

对于P30:

C:\Program Files (x86)\SQLIO>sqlio -dE
sqlio v1.5.SG
1 thread reading for 30 secs from file E:testfile.dat
        using 2KB IOs over 128KB stripes with 64 IOs per run
size of file E:testfile.dat needs to be: 8388608 bytes
current file size:      0 bytes
need to expand by:      8388608 bytes
expanding E:testfile.dat ... done.
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec:  5103.03
MBs/sec:     9.96

为P30宣传的5000 IOPS保持不变,但是每个磁盘200 MB / s的吞吐量如何?

注:尝试使用ReadWrite缓存策略创建P30数据磁盘会导致:

Update-AzureVm:BadRequest:DataVirtualHardDisk不支持磁盘缓存设置ReadWrite。

任何指导将不胜感激:

  • 为什么将本地SSD存储限制为500 IOPS和1-4 MB / s的吞吐量?
  • 在P30上读取时,我们如何实现200MB / s的写入速度?要进行的测试是什么?
  • MS:您可以发布我们可以用来验证最大限制的I / O基准吗?

3
这个问题确实需要发送给Azure支持,因为我不知道这里的任何人都可以用轶事来回答任何问题。
马克·亨德森

Answers:


7

要回答您的问题:

  1. 本地存储限制为500 IOPS @ 8KB。这些限制是一个错误,将很快提高。
  2. 要达到200 MB /秒的写入速度,您需要(a)使用至少40KB的块大小(否则您首先遇到5,000 IOPS限制),并且(b)使用至少25的队列深度(对于40KB)块,随着块大小的增加,您可以使用较小的队列深度)。
  3. 我们同意,如果我们发布可用于验证限制的基准,那就太好了。如果这样做的话,除非我们退出预览,否则可能不会。

David Berg-Microsoft Azure性能团队


我正在使用64KB的块,但只能获得1,500 IOPS和90 MB /秒的速度,讨论... P30
David Aleu

@DavidAleu我在P30磁盘上也只能获得大约1500 IOPS。
makhdumi

0

高级存储仅支持读取缓存,不像标准磁盘那样支持读/写


0

由于使用的是默认的2KB IO块大小,因此SQLIO测试的吞吐量受到限制。以您当前正在获取的P30磁盘上的IOPS乘以块大小,您将获得5103 IOPS * 2 KB = 10206 KB / s或9.97 MB / s,这是测试中报告的吞吐量。在您的SQLIO命令中增加块大小(请参阅http://www.mssqltips.com/sqlservertip/2127/benchmarking-sql-server-io-with-sqlio/),您将能够找到吞吐量限制。IO块大小为64 KB应为您提供5103 IOPS * 64 KB = 326592 KB / s或318.94 MB / s,并测试Microsoft的广告限制。

我没有在D系列VM上测试本地SSD,但是我还没有访问高级存储的权限,因此在这种情况下它无济于事。我唯一的猜测是,一旦您在使用本地SSD容量75%的计算机上使用高级存储,它可能还会限制本地SSD的访问,以保证高级存储性能。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.