Step-by-step for Storage Spaces Tiering in Windows Server 2012 R2

原文地址:

http://blogs.technet.com/b/josebda/archive/2013/08/28/step-by-step-for-storage-spaces-tiering-in-windows-server-2012-r2.aspx

转发后无法正常查看,建议查看原文,非常细致,全篇实用PowerShell,看懂了可以使用图形界面,当然有些配置和状态还是要通过命令行来查看的。如果无法访问,可以附件文档。

1.Overview

Inthisdocument,IamsharingallthestepsIusedtocreateademoortestenvironmentofastoragespacewithstoragetiersonWindowsServer2012R2Previewsothatyoucanexperimentwithsomeofthenewtechnologiesyourself.YouneedonlyasinglecomputerwithoneSSDandoneHDDforthisdemo(thespecsareprovidedbelow).

Ifyou'renotfamiliarwithStorageSpacesorstoragetiers(alsoknownasStorageSpacesTiering),IwouldstrongencourageyoutoreviewtheStorageSpacesOverviewandTechEd2013talkson“StorageSpaces”,whichyoucanfindbelow:

However,ifyou’rejustexperimentingwiththisfeatureortryingtolearnhowtoconfigureit,theinvestmentinthehardware(1JBOD,4SSDs,8HDDs,SASHBA,cables)mightbeholdingyouback.So,inthisblogpost,we’llshowhowtoconfigurestoragetiersusingjustoneSSDandoneHDD,withthehelpofHyper-V.Here’swhatthesimulatedenvironmentlookslike:

\"\\"image\\"\"

OnecomputercapableofrunningtheWindowsServer2012R2PreviewandHyper-V.

Onthatcomputer,oneSSDwithatleast50GBoffreespaceavailable.

Onthatcomputer,oneHDDwithatleast250GBoffreespaceavailable.

AsrequiredbyHyper-V,enablethevirtualizationsettingsintheBIOS.Fordetails,checkthisblogpost:and

Forthissetup,thecomputershouldhaveatleast4GBofRAM.

An8GBUSBstick,ifyou’reinstallingWindowsServerfromUSBandcopyingthedownloadedsoftwarearound

Youwillneedthefollowingsoftwaretoperformthestepsdescribedhere:

AcertainfamiliaritywithWindowsadministrationandconfigurationisassumed.Ifyou'renewtoWindows,thisdocumentisnotforyou.Sorry...

Ifyouareaskedaquestionorrequiredtoperformanactionthatyoudonotseedescribedinthesesteps,gowiththedefaultoption.

Thereareusuallyseveralwaystoperformaspecificconfigurationoradministrationtask.WhatIdescribehereisoneofthosemanyways.It'snotnecessarilythebestway,justtheoneIpersonallylikebestatthemoment.

Forthemostpart,IusePowerShelltoconfigurethesystems.Youcanalsouseagraphicalinterfaceinstead,butIdidnotdescribethosestepshere.

ThespecificStorageSpacesconfigurationshowninthisblogpostisnotsupported.MicrosoftSupportwillonlyanswerquestionsandassistintroubleshootingconfigurationswhereStorageSpacesusesaphysicalmachine(notaVM)andusesoneofthecertifiedJBODhardwaresolutions(see)

Becauseoftheitemabove,theconfigurationdescribedhereshouldonlybeusedfordemos,testingorlearningenvironments.

4.Configurethephysicalhost

#Preparationsteps:InstallWindowServer2012R2Preview

#Installrequiredrolesandfeatures,restartattheend

Install-WindowsFeatureHyper-V-IncludeManagementTools�CRestart

#Create4VHDXfilesontheSSDwith10GBeach

1..4|%{New-VHD-PathD:\\\\VMS\\\\VMA_SSD_$_.VHDX-Fixed�CSize10GB}

#Create8VHDXfilesontheHDDwith30GBeach

1..8|%{New-VHD-PathE:\\\\VMS\\\\VMA_HDD_$_.VHDX-Fixed�CSize30GB}

#CreateanewVM.AssumesyouhaveanWindowsServer2012R2OSVHDXinplace

New-VM-NameVMA-PathD:\\\\VMS�CVHDPathD:\\\\VMS\\\\VMA_OS.VHDX-Memory2GB

#AddalldatadiskstotheVM

1..4|%{Add-VMHardDiskDrive-VMNameVMA-ControllerTypeSCSI-PathD:\\\\VMS\\\\VMA_SSD_$_.VHDX}

1..8|%{Add-VMHardDiskDrive-VMNameVMA-ControllerTypeSCSI-PathE:\\\\VMS\\\\VMA_HDD_$_.VHDX}

#StarttheVM

Start-VMVMA

5.CheckVMconfiguration(fromtheHost,withoutput)

PSC:\\\\>Get-VMVMA

NameStateCPUUsage(%)MemoryAssigned(M)UptimeStatus
-------------------------------------------------
VMARunning0204800:01:52Operatingnormally

PSC:\\\\>Get-VMVMA|Get-VMHardDiskDrive

VMNameControllerTypeControllerNumberControllerLocationDiskNumberPath
--------------------------------------------------------------------
VMAIDE00D:\\\\VMS\\\\VMA_OS.VHDX
VMASCSI00D:\\\\VMS\\\\VMA_SSD_1.VHDX
VMASCSI01D:\\\\VMS\\\\VMA_SSD_2.VHDX
VMASCSI02D:\\\\VMS\\\\VMA_SSD_3.VHDX
VMASCSI03D:\\\\VMS\\\\VMA_SSD_4.VHDX
VMASCSI04E:\\\\VMS\\\\VMA_HDD_1.VHDX
VMASCSI05E:\\\\VMS\\\\VMA_HDD_2.VHDX
VMASCSI06E:\\\\VMS\\\\VMA_HDD_3.VHDX
VMASCSI07E:\\\\VMS\\\\VMA_HDD_4.VHDX
VMASCSI08E:\\\\VMS\\\\VMA_HDD_5.VHDX
VMASCSI09E:\\\\VMS\\\\VMA_HDD_6.VHDX
VMASCSI010E:\\\\VMS\\\\VMA_HDD_7.VHDX
VMASCSI011E:\\\\VMS\\\\VMA_HDD_8.VHDX

6.CheckVMconfiguration(fromtheGuest,withoutput)

PSC:\\\\>Get-PhysicalDisk|SortSize|FTDeviceId,FriendlyName,CanPool,Size,MediaType-AutoSize

DeviceIdFriendlyNameCanPoolSizeMediaType
----------------------------------------
2PhysicalDisk2True10737418240UnSpecified
4PhysicalDisk4True10737418240UnSpecified
3PhysicalDisk3True10737418240UnSpecified
1PhysicalDisk1True10737418240UnSpecified
12PhysicalDisk12True32212254720UnSpecified
11PhysicalDisk11True32212254720Unspecified
7PhysicalDisk7True32212254720Unspecified
6PhysicalDisk6True32212254720Unspecified
5PhysicalDisk5True32212254720Unspecified
10PhysicalDisk10True32212254720UnSpecified
9PhysicalDisk9True32212254720Unspecified
8PhysicalDisk8True32212254720Unspecified
0PhysicalDisk0False42949672960Unspecified

PSC:\\\\>Get-PhysicalDisk-CanPool$true|?Size-lt20GB|SortSize|FT-AutoSize

FriendlyNameCanPoolOperationalStatusHealthStatusUsageSize
---------------------------------------------------------
PhysicalDisk4TrueOKHealthyAuto-Select10GB
PhysicalDisk2TrueOKHealthyAuto-Select10GB
PhysicalDisk1TrueOKHealthyAuto-Select10GB
PhysicalDisk3TrueOKHealthyAuto-Select10GB

PSC:\\\\>Get-PhysicalDisk-CanPool$true|?Size-gt20GB|SortSize|FT-AutoSize

FriendlyNameCanPoolOperationalStatusHealthStatusUsageSize
---------------------------------------------------------
PhysicalDisk6TrueOKHealthyAuto-Select30GB
PhysicalDisk11TrueOKHealthyAuto-Select30GB
PhysicalDisk12TrueOKHealthyAuto-Select30GB
PhysicalDisk7TrueOKHealthyAuto-Select30GB
PhysicalDisk5TrueOKHealthyAuto-Select30GB
PhysicalDisk10TrueOKHealthyAuto-Select30GB
PhysicalDisk8TrueOKHealthyAuto-Select30GB
PhysicalDisk9TrueOKHealthyAuto-Select30GB

7.ConfiguremediatypeforvirtualSASdisks

#CreateStoragePool

$s=Get-StorageSubSystem

New-StoragePool-StorageSubSystemId$s.UniqueId-FriendlyNamePool1-PhysicalDisks(Get-PhysicalDisk-CanPool$true)

#ConfiguremediatypeforvirtualSASdisks

Get-StoragePoolPool1|Get-PhysicalDisk|?Size-lt20GB|Set-PhysicalDisk�CMediaTypeSSD

Get-StoragePoolPool1|Get-PhysicalDisk|?Size-gt20GB|Set-PhysicalDisk�CMediaTypeHDD

8.Checkmediatypeconfiguration(withoutput)

PSC:\\\\>Get-StoragePoolPool1

FriendlyNameOperationalStatusHealthStatusIsPrimordialIsReadOnly

---------------------------------------------------------------

Pool1OKHealthyFalseFalse

PSC:\\\\>Get-StoragePoolPool1|Get-PhysicalDisk|SortSize|FT�CAutoSize

FriendlyNameCanPoolOperationalStatusHealthStatusUsageSize

---------------------------------------------------------

PhysicalDisk3FalseOKHealthyAuto-Select9.25GB

PhysicalDisk2FalseOKHealthyAuto-Select9.25GB

PhysicalDisk1FalseOKHealthyAuto-Select9.25GB

PhysicalDisk4FalseOKHealthyAuto-Select9.25GB

PhysicalDisk11FalseOKHealthyAuto-Select29.25GB

PhysicalDisk12FalseOKHealthyAuto-Select29.25GB

PhysicalDisk7FalseOKHealthyAuto-Select29.25GB

PhysicalDisk6FalseOKHealthyAuto-Select29.25GB

PhysicalDisk9FalseOKHealthyAuto-Select29.25GB

PhysicalDisk5FalseOKHealthyAuto-Select29.25GB

PhysicalDisk8FalseOKHealthyAuto-Select29.25GB

PhysicalDisk10FalseOKHealthyAuto-Select29.25GB

PSC:\\\\>Get-StoragePoolPool1|Get-PhysicalDisk|SortSize|FTFriendlyName,Size,MediaType,HealthStatus,OperationalStatus-AutoSize

FriendlyNameSizeMediaTypeHealthStatusOperationalStatus

------------------------------------------------------

PhysicalDisk39932111872SSDHealthyOK

PhysicalDisk29932111872SSDHealthyOK

PhysicalDisk19932111872SSDHealthyOK

PhysicalDisk49932111872SSDHealthyOK

PhysicalDisk1131406948352HDDHealthyOK

PhysicalDisk1231406948352HDDHealthyOK

PhysicalDisk731406948352HDDHealthyOK

PhysicalDisk631406948352HDDHealthyOK

PhysicalDisk931406948352HDDHealthyOK

PhysicalDisk531406948352HDDHealthyOK

PhysicalDisk831406948352HDDHealthyOK

PhysicalDisk1031406948352HDDHealthyOK

PSC:\\\\>Get-StoragePoolPool1|Get-PhysicalDisk|GroupMediaType,Size|SortName|FT-AutoSize

CountNameGroup

--------------

8HDD,31406948352{MSFT_PhysicalDisk(ObjectId="{1}\\\\\\\\WIN-T5PORQGQECN\\\\root/Microsoft/Win...),MSFT_PhysicalDis...

4SSD,9932111872{MSFT_PhysicalDisk(ObjectId="{1}\\\\\\\\WIN-T5PORQGQECN\\\\root/Microsoft/Win...),MSFT_PhysicalDis...

PSC:\\\\>Get-StoragePoolPool1|FLSize,AllocatedSize

Size:290984034304
AllocatedSize:3221225472

9.ConfigureTiers

#Configuretwotiers

Get-StoragePoolPool1|New-StorageTier�CFriendlyNameSSDTier�CMediaTypeSSD

Get-StoragePoolPool1|New-StorageTier�CFriendlyNameHDDTier�CMediaTypeHDD

10.CheckTiersconfiguration(withoutput)

PSC:\\\\>Get-StorageTier|FTFriendlyName,MediaType,Size-AutoSize

FriendlyNameMediaTypeSize

-------------------------

SSDTierSSD0

HDDTierHDD0

PSC:\\\\>Get-StoragePoolPool1|FLSize,AllocatedSize

Size:290984034304

AllocatedSize:3221225472

Note:3GBusedoutof271GBtotal.StorageSpacesreserves256MBoneachdiskinthepoolforinternalVDmetadata.256MB*12drives=3GB.

PSC:\\\\>Get-StorageTierSupportedSizeSSDTier-ResiliencySettingNameSimple|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}4294967296343597383684294967296

Note:32GBontheSSDTier(8GB*4).Minimumsizeis4GB.

PSC:\\\\>Get-StorageTierSupportedSizeSSDTier-ResiliencySettingNameMirror|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}2147483648171798691842147483648

Note:Mirroredoffers16GBontheSSDTier(8GB*4/2).Minimumsizeis2GB.

PSC:\\\\>Get-StorageTierSupportedSizeHDDTier-ResiliencySettingNameSimple|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}85899345922491081031688589934592

Note:232GBontheHDDTier(29GB*8).Minimumsizeis8GB.

PSC:\\\\>Get-StorageTierSupportedSizeHDDTier-ResiliencySettingNameMirror|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}42949672961245540515844294967296

Note:Mirroredoffers116GBontheHDDTier(29GB*8/2).Minimumsizeis4GB.

11.ResiliencySettingsandSpaces

#Configureresiliencysettings

Get-StoragePoolPool1|Set-ResiliencySetting-NameSimple-NumberOfColumnsDefault4

Get-StoragePoolPool1|Set-ResiliencySetting-NameMirror-NumberOfColumnsDefault2

#Createsimpleandmirroredspaceswithtiering

$SSD=Get-StorageTier-FriendlyNameSSDTier

$HDD=Get-StorageTier-FriendlyNameHDDTier

Get-StoragePoolPool1|New-VirtualDisk-FriendlyNameSpace1-ResiliencySettingNameSimple�CStorageTiers$SSD,$HDD-StorageTierSizes8GB,32GB-WriteCacheSize1GB

Get-StoragePoolPool1|New-VirtualDisk-FriendlyNameSpace2-ResiliencySettingNameMirror-StorageTiers$SSD,$HDD-StorageTierSizes8GB,32GB�CWriteCacheSize1GB

12.CheckStorageSpacesconfiguration(withoutput)

PSC:\\\\>Get-StoragePoolPool1|Get-ResiliencySetting|FT-AutoSize

NameNumberOfDataCopiesPhysicalDiskRedundancyNumberOfColumnsInterleave

---------------------------------------------------------------------

Simple104262144

Mirror212262144

Parity11Auto262144

PSC:\\\\>Get-VirtualDisk|FT-AutoSize

FriendlyNameResiliencySettingNameOperationalStatusHealthStatusIsManualAttachSize

--------------------------------------------------------------------------------

Space1SimpleOKHealthyFalse40GB

Space2MirrorOKHealthyFalse40GB

PSC:\\\\>Get-StorageTier|FTFriendlyName,MediaType,Size-AutoSize

FriendlyNameMediaTypeSize

-------------------------

SSDTierSSD0

HDDTierHDD0

Space1_SSDTierSSD8589934592

Space1_HDDTierHDD34359738368

Space2_SSDTierSSD8589934592

Space2_HDDTierHDD34359738368

PSC:\\\\>Get-StoragePoolPool1|FLSize,AllocatedSize

Size:290984034304

AllocatedSize:136365211648

Note:127GBallocatedaftercreatingthetwospaces.144GBleftoutof271GBtotal.

PSC:\\\\>Get-StorageTierSupportedSizeSSDTier-ResiliencySettingNameSimple|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}429496729642949672964294967296

Note:4GBleftontheSSDTier.

PSC:\\\\>Get-StorageTierSupportedSizeSSDTier-ResiliencySettingNameMirror|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}214748364821474836482147483648

Note:4GBleftontheSSDTier.2GBavailableifmirroring.

PSC:\\\\>Get-StorageTierSupportedSizeHDDTier-ResiliencySettingNameSimple|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}42949672961460288880644294967296

Note:136GBleftontheSSDTier.

PSC:\\\\>Get-StorageTierSupportedSizeHDDTier-ResiliencySettingNameMirror|FT-AutoSize

SupportedSizesTierSizeMinTierSizeMaxTierSizeDivisor

---------------------------------------------------

{}2147483648730144440322147483648

Note:136GBleftontheSSDTier.68GBavailableifmirroring.

13.CreatePartitionsandVolumes

#Configurevolume“F”onSpace1

Get-VirtualDiskSpace1|Get-Disk|Set-Disk-IsReadOnly0

Get-VirtualDiskSpace1|Get-Disk|Set-Disk-IsOffline0

Get-VirtualDiskSpace1|Get-Disk|Initialize-Disk-PartitionStyleGPT

Get-VirtualDiskSpace1|Get-Disk|New-Partition-DriveLetter“F”-UseMaximumSize

Initialize-Volume-DriveLetter“F”-FileSystemNTFS-Confirm:$false

#Configurevolume“G”onSpace2

Get-VirtualDiskSpace2|Get-Disk|Set-Disk-IsReadOnly0

Get-VirtualDiskSpace2|Get-Disk|Set-Disk-IsOffline0

Get-VirtualDiskSpace2|Get-Disk|Initialize-Disk-PartitionStyleGPT

Get-VirtualDiskSpace2|Get-Disk|New-Partition-DriveLetter“G”-UseMaximumSize

Initialize-Volume-DriveLetter“G”-FileSystemNTFS-Confirm:$false

14.CheckPartitionsandVolumes(withoutput)

PSC:\\\\>Get-Partition|?DriveLetter-ge"F"|FT-AutoSize

DiskNumber:13

PartitionNumberDriveLetterOffsetSizeType

----------------------------------------

2F13526630439.87GBBasic

DiskNumber:14

PartitionNumberDriveLetterOffsetSizeType

----------------------------------------

2G13526630439.87GBBasic

PSC:\\\\>Get-Volume|?DriveLetter-ge"F"|FT-AutoSize

DriveLetterFileSystemLabelFileSystemDriveTypeHealthStatusSizeRemainingSize

--------------------------------------------------------------------------

FNTFSFixedHealthy39.75GB39.87GB

GNTFSFixedHealthy39.75GB39.87GB

15.CreateTestFiles

#Create3filesonvolume“F”,placethemondifferenttiers

1..3|%{

fsutilfilecreatenewf:\\\\file$_.dat(4GB)

fsutilfilesetvaliddataf:\\\\file$_.dat(4GB)

}

Set-FileStorageTier-FilePathf:\\\\file1.dat-DesiredStorageTierFriendlyNameSpace1_SSDTier

Set-FileStorageTier-FilePathf:\\\\file2.dat-DesiredStorageTierFriendlyNameSpace1_HDDTier

Get-FileStorageTier-VolumeDriveLetterF

#Create3filesonvolume“G”,placethemondifferenttiers

1..3|%{

fsutilfilecreatenewg:\\\\file$_.dat(4GB)

fsutilfilesetvaliddatag:\\\\file$_.dat(4GB)

}

Set-FileStorageTier-FilePathg:\\\\file1.dat-DesiredStorageTierFriendlyNameSpace2_SSDTier

Set-FileStorageTier-FilePathg:\\\\file2.dat-DesiredStorageTierFriendlyNameSpace2_HDDTier

Get-FileStorageTier-VolumeDriveLetterG

16.CheckTestFiles(withoutput)

PSC:\\\\>DirF:

Directory:f:\\\\

ModeLastWriteTimeLengthName

---------------------------

-a---8/21/201310:09AM4294967296file1.dat

-a---8/21/201310:09AM4294967296file2.dat

-a---8/21/201310:09AM4294967296file3.dat

PSC:\\\\>DirG:

Directory:g:\\\\

ModeLastWriteTimeLengthName

---------------------------

-a---8/21/201310:08AM4294967296file1.dat

-a---8/21/201310:08AM4294967296file2.dat

-a---8/21/201310:08AM4294967296file3.dat

PSC:\\\\sqlio>Get-Volume|?DriveLetter-ge"F"|FT-AutoSize

DriveLetterFileSystemLabelFileSystemDriveTypeHealthStatusSizeRemainingSize

--------------------------------------------------------------------------

FNTFSFixedHealthy27.75GB39.87GB

GNTFSFixedHealthy27.75GB39.87GB

PSC:\\\\>Get-FileStorageTier-VolumeDriveLetterF|FT-AutoSize

FilePathDesiredStorageTierNamePlacementStatusState

--------------------------------------------------

F:\\\\file1.datSpace1_SSDTierCompletelyontierOK

F:\\\\file2.datSpace1_HDDTierPartiallyontierPending

PSC:\\\\>Get-FileStorageTier-VolumeDriveLetterG|FT-AutoSize

FilePathDesiredStorageTierNamePlacementStatusState

--------------------------------------------------

G:\\\\file1.datSpace2_SSDTierCompletelyontierOK

G:\\\\file2.datSpace2_HDDTierPartiallyontierPending

17.TasksforStorageTiering

#ChecktasksusedbyStorageTiering

Get-ScheduledTask-TaskName*Tier*|FT�CAutoSize

Get-ScheduledTask-TaskName*Tier*|Get-ScheduledTaskInfo

#Manuallyrunningthe“StorageTiersOptimization”task

Get-ScheduledTask-TaskName"StorageTiersOptimization"|Start-ScheduledTask

18.TasksforStorageTiering(withOutput)

PSC:\\\\>Get-ScheduledTask-TaskName*Tier*|FT�CAutoSize

TaskPathTaskNameState

---------------------

\\\\Microsoft\\\\Windows\\\\StorageTiersManagement\\\\StorageTiersManagementInitializationReady

\\\\Microsoft\\\\Windows\\\\StorageTiersManagement\\\\StorageTiersOptimizationReady

PSC:\\\\>Get-ScheduledTask-TaskName*Tier*|Get-ScheduledTaskInfo

LastRunTime:

LastTaskResult:1

NextRunTime:8/22/20131:00:00AM

NumberOfMissedRuns:0

TaskName:StorageTiersOptimization

TaskPath:\\\\Microsoft\\\\Windows\\\\StorageTiersManagement\\\\

PSComputerName:

LastRunTime:8/21/201311:18:18AM

LastTaskResult:0

NextRunTime:

NumberOfMissedRuns:0

TaskName:StorageTiersManagementInitialization

TaskPath:\\\\Microsoft\\\\Windows\\\\StorageTiersManagement\\\\

PSComputerName:

PSC:\\\\>Get-ScheduledTask-TaskName"StorageTiersOptimization"|Start-ScheduledTask

PSC:\\\\>Get-ScheduledTask-TaskName"StorageTiersOptimization"|Get-ScheduledTaskInfo

LastRunTime:8/21/201312:11:11PM

LastTaskResult:267009

NextRunTime:8/22/20131:00:00AM

NumberOfMissedRuns:0

TaskName:StorageTiersOptimization

TaskPath:\\\\Microsoft\\\\Windows\\\\StorageTiersManagement\\\\

PSComputerName:

19.RunningSQLIO

#ThesecommandsassumethattheSQLIO2.EXEfilewascopiedtotheC:\\\\SQLIOfolder

#SQLIOworkload1:30seconds,random,read,8KB,4thread,16outstandingIOs,nobuffering

#SQLIOworkload2:30seconds,sequential,read,512KB,4thread,4outstandingIOs,nobuffering

#CheckfilelocationontiersforvolumeF:

Get-FileStorageTier-VolumeDriveLetterF|FT-AutoSize

#RunningSQLIOonF:,usingFile1(HDDtier),File2(HDDtier)andFile3(unspecifiedtier)

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file1.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file2.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file3.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file1.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file2.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file3.dat

#CheckfilelocationontiersforvolumeG:

Get-FileStorageTier-VolumeDriveLetterG|FT-AutoSize

#RunningSQLIOonG:,usingFile1(HDDtier),File2(HDDtier)andFile3(unspecifiedtier)

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file1.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file2.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file3.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file1.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file2.dat

c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file3.dat

20.RunningSQLIO(withOutput)

PSC:\\\\>Get-FileStorageTier-VolumeDriveLetterF|FT-AutoSize

FilePathDesiredStorageTierNamePlacementStatusState

--------------------------------------------------

F:\\\\file1.datSpace1_SSDTierCompletelyontierOK

F:\\\\file2.datSpace1_HDDTierCompletelyontierOK

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file1.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file1.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file1.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:35745.63

MBs/sec:279.26

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file2.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file2.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file2.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:141.57

MBs/sec:1.10

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNf:\\\\file3.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file3.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file3.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:384.86

MBs/sec:3.00

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file1.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file1.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file1.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:998.25

MBs/sec:499.12

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file2.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file2.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file2.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:81.30

MBs/sec:40.65

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNf:\\\\file3.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofilef:\\\\file3.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:f:\\\\file3.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:148.51

MBs/sec:74.25

PSC:\\\\>Get-FileStorageTier-VolumeDriveLetterG|FT-AutoSize

FilePathDesiredStorageTierNamePlacementStatusState

--------------------------------------------------

G:\\\\file1.datSpace2_SSDTierCompletelyontierOK

G:\\\\file2.datSpace2_HDDTierCompletelyontierOK

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file1.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file1.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file1.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:35065.17

MBs/sec:273.94

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file2.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file2.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file2.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:138.98

MBs/sec:1.08

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-frandom-kR-b8-t4-o16-BNg:\\\\file3.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file3.dat

using8KBrandomIOs

enablingmultipleI/Osperthreadwith16outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file3.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:360.33

MBs/sec:2.81

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file1.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file1.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file1.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:997.90

MBs/sec:498.95

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file2.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file2.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file2.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:118.34

MBs/sec:59.17

PSC:\\\\>c:\\\\sqlio\\\\sqlio2.exe-s30-fsequential-kR-b512-t4-o4-BNg:\\\\file3.dat

sqliov2.15.64bit_SG

4threadsreadingfor30secstofileg:\\\\file3.dat

using512KBsequentialIOs

enablingmultipleI/Osperthreadwith4outstanding

bufferingsettonotusefilenordiskcaches(asisSQLServer)

usingcurrentsize:4096MBforfile:g:\\\\file3.dat

initializationdone

CUMULATIVEDATA:

throughputmetrics:

IOs/sec:197.65

MBs/sec:98.82

21.SummaryofSQLIOResults

Here’sthesummaryoftheSQLIOruns:

Resiliency

Workload Tier IOPs MB/s
Simple 8KB
Read
File1(SSD) 35,746 279
File2(HDD) 142 1
File3(Mixed) 385 3
512KB
Sequential
File1(SSD) 998 499
File2(HDD) 118 59
File3(Mixed) 198 99

Note1:Ingeneral,thisisworkingasexpected.File1(SSDTier)showsSSDperformancecharacteristicswhileFile2(HDDTier)behaveslikeaspinningdisk.File3issomewherebetweenthetwo.

Note2:ThereisonlyonephysicalSSDandonephysicalHDDbehindallthevirtuallayers.Bothsimpleandmirroredarespacesarebasicallylimitedbythehardwarelimitationsofthetwodisks.

Note3:Thisshowstheresultsofasinglerunofeachworkload,sosomevarianceisexpected.Ifyouarerunningthisinyourownsetup,youmightwanttoruneachworkloadmultipletimesandaverageitout.There’ssomeguidancetothatregardathttp://blogs.technet.com/b/josebda/archive/2013/03/25/sqlio-powershell-and-storage-performance-measuring-iops-throughput-and-latency-for-both-local-disks-and-smb-file-shares.aspx

你可能感兴趣的:(windows,server,storage,R2,2012,Hyper-v,tiering,存储分层)