การจัดเก็บดิสก์ P30 แบบมาตรฐานของ Azure


9

เรากำลังทำการทดสอบประสิทธิภาพบน VMs มาตรฐาน DS13 (8 Core, 56 GB) สองรุ่นใหม่ (ทั้งคู่ใช้อิมเมจล่าสุด / ค่าเริ่มต้น Windows 2012 R2) ซึ่งได้รับการสนับสนุนโดย Premium Storage และได้ก้าวสู่ขั้นตอนที่ 1 ในการทดสอบประสิทธิภาพ SSD ในท้องถิ่น

เราเข้าใจว่า 25% ของ 400GB โลคัล SSD สำหรับ VM เหล่านี้มีให้ใช้เป็นที่เก็บข้อมูลชั่วคราวและอีก 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-SERIES-ประสิทธิภาพความคาดหวัง /

... แต่ 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 นั้นดีกว่า แต่ไม่มีที่ไหนใกล้กับ 150 MB / s ที่คุณคาดหวังสำหรับดิสก์ P20 (สมมติว่าเป็นสิ่งที่จัดสรรให้กับดิสก์ 127GB OS เริ่มต้น)

คาดหวังว่า:

http://azure.microsoft.com/en-us/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)

เมื่อเปรียบเทียบกับCloudDriveปัจจุบันของเราที่มีการแคชโฮสต์ปรับใช้กับ D13s (สังเกตประสิทธิภาพของการอ่านแบบสุ่ม 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

5,000 IOPS ที่โฆษณาสำหรับ P30 นั้นกำลังถือครองอยู่ แต่ปริมาณงาน 200 MB / s ต่อดิสก์หรือไม่

หมายเหตุ: ความพยายามในการสร้างดิสก์ข้อมูล P30 พร้อมกับนโยบายแคช ReadWrite ส่งผลให้:

Update-AzureVm: BadRequest: การตั้งค่าแคชดิสก์ ReadWrite ไม่รองรับ DataVirtualHardDisk

คำแนะนำใด ๆ ที่จะได้รับการชื่นชม:

  • เหตุใดที่เก็บข้อมูล SSD ภายในเครื่องจึง จำกัด ที่ 500 IOPS และปริมาณงาน 1-4 MB / s
  • เราจะประสบความสำเร็จในการเขียน 200MB / s ได้อย่างไรเมื่อเราอ่านด้วย P30s การทดสอบจะทำงานอย่างไร
  • MS: คุณสามารถเผยแพร่มาตรฐาน I / O ที่เราสามารถเรียกใช้เพื่อตรวจสอบขีด จำกัด สูงสุดได้หรือไม่?

3
นี่เป็นคำถามที่ต้องส่งไปยังฝ่ายสนับสนุน Azure อย่างแท้จริงเนื่องจากฉันไม่รู้ว่าวิธีการใด ๆ ที่ทุกคนที่นี่สามารถตอบคำถามอะไรก็ได้ยกเว้นเกร็ดเล็กเกร็ดน้อย
Mark Henderson

คำตอบ:


7

เพื่อตอบคำถามของคุณ:

  1. ที่จัดเก็บในตัวเครื่องมีปริมาณ 500 IOPS @ 8KB ข้อ จำกัด เหล่านั้นเป็นข้อผิดพลาดและจะเพิ่มขึ้นอย่างมากในไม่ช้า
  2. หากต้องการกดปุ่ม 200 MB / วินาทีในการเขียนคุณต้อง (a) ใช้ขนาดบล็อกอย่างน้อย 40KB (ไม่เช่นนั้นคุณจะมีขีด จำกัด 5,000 IOPS ก่อน) และ (b) ใช้ความลึกคิวอย่างน้อย 25 (สำหรับ 40KB บล็อกเมื่อขนาดบล็อกเพิ่มขึ้นคุณสามารถใช้ความลึกคิวที่เล็กลง)
  3. เราเห็นด้วยจะดีถ้าเราเผยแพร่เกณฑ์มาตรฐานที่คุณสามารถใช้เพื่อตรวจสอบข้อ จำกัด หากเราทำเช่นนั้นอาจไม่เป็นเช่นนั้นจนกว่าเราจะย้ายตัวอย่าง

David Berg - ทีมงาน Microsoft Azure Performance


ฉันใช้บล็อก 64KB และฉันได้รับ 1,500 IOPS และ 90 MB / วินาทีเท่านั้นหารือ ... P30
David Aleu

@DavidAleu ฉันยังได้รับประมาณ 1,500 IOPS ในดิสก์ P30
makhdumi

0

ที่เก็บข้อมูลพรีเมียมรองรับเฉพาะแคชการอ่านและไม่สามารถอ่าน / เขียนเช่นดิสก์มาตรฐาน


0

ปริมาณงานของคุณในการทดสอบ SQLIO นั้นถูก จำกัด เนื่องจากคุณใช้ขนาดบล็อก 2KB IO เริ่มต้น ใช้ IOPS บนดิสก์ P30 ที่คุณได้รับและคูณด้วยขนาดบล็อกและคุณจะได้รับ 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

ฉันไม่ได้ทดสอบ SSD ท้องถิ่นของฉันบน D series VM ของฉัน แต่ฉันยังไม่สามารถเข้าถึงที่เก็บข้อมูลแบบพรีเมี่ยมดังนั้นจึงไม่ช่วยในกรณีนี้ สิ่งเดียวที่ฉันคาดเดาก็คือเมื่อคุณใช้พื้นที่เก็บข้อมูลแบบพรีเมี่ยมบนเครื่องซึ่งใช้ความจุ 75% ของ SSD ในพื้นที่คุณอาจควบคุมการเข้าถึง SSD ในพื้นที่ของคุณเพื่อรับประกันประสิทธิภาพการจัดเก็บระดับพรีเมียม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.