Home > Workload Solutions > SQL Server > White Papers > Dell PowerMax 2500 and 8500 Best Practices for Mission Critical SQL Server Databases > ODX example
The Offloaded Data Transfer (ODX) feature of Windows Server and Hyper-V is a Microsoft technology that allows offloading data copy operations that are normally performed by host reads and writes to be performed internally by the storage system.
PowerMax supports ODX offload copy and provides best copy efficiency when the NTFS file system is formatted with a 128 KB allocation unit.
Verify that the ODX feature is enabled using the PowerShell Get-ItemProperty command. The FilterSupportedFeatureMode 0 property indicates that ODX is enabled, which is the default behavior on Windows server starting with Windows Server 2012. For Windows VMs, ODX is only supported for copy operations between physical RDMs.
PS C:\> Get-ItemProperty -Path 'hklm:\system\currentcontrolset\control\filesystem' -Name 'FilterSupportedFeaturesMode'
FilterSupportedFeaturesMode : 0
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\system\currentcontrolset\control\filesystem
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\system\currentcontrolset\control
PSChildName : filesystem
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
Change the FilterSupportedFeatureMode property to:
PS C:\> Set-ItemProperty -Path 'hklm:\system\currentcontrolset\control\filesystem' -Name 'FilterSupportedFeaturesMode' 1
PS C:\> Set-ItemProperty -Path 'hklm:\system\currentcontrolset\control\filesystem' -Name 'FilterSupportedFeaturesMode' 0
To show the ODX value, create two NTFS file systems formatted with 128 KB allocation unit size with drive letters D:\ and F:\.
The file system with drive letter D:\ contains three SQL Server user databases with a total file system capacity of 291 GB.
The file system with drive letter F:\ is formatted and empty.
With the FilterSupportedFeatureMode property set to 1, run an ODX multithreaded copy command to copy the content of drive D:\ to drive F:\:
PS C:\> Set-ItemProperty -Path 'hklm:\system\currentcontrolset\control\filesystem' -Name 'FilterSupportedFeaturesMode' 1
PS C:\> Robocopy /MIR /MT D:\ F:\
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Thursday, June 30, 2022 10:30:50 PM
Source : D:\
Dest : F:\
Files : *.*
Options : *.* /S /E /DCOPY:DA /COPY:DAT /PURGE /MIR /MT:8 /R:1000000 /W:30
------------------------------------------------------------------------------
…
…
100% New File 10.6 g D:\USERDB1\userdb1_data7.ndf
100% New File 10.6 g D:\USERDB1\userdb1_data8.ndf
100% New File 1.5 g D:\USERDB1\userdb1_log.ldf
100% New File 10.5 g D:\USERDB1\userdb1_log1.ldf
------------------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs : 7 6 4 0 0 0
Files : 31 30 1 0 0 2
Bytes : 291.421 g 291.421 g 129 0 0 38.000 g
Times : 0:47:35 0:04:54 0:00:00 0:00:38
Speed : 1,062,201,636 Bytes/sec.
Speed : 60,779.664 MegaBytes/min.
Ended : Thursday, June 30, 2022 10:36:23 PM
The copy operation copies 291 GB in approximately 5 minutes with a copy rate of 1 GB/sec.
Two important indicators show that the Windows server performed the actual host-based copy. The CPU use during the copy is very high and the disks show significant activity, as shown in the following figure:
With the FilterSupportedFeatureMode property set to 0 and drive F:\ cleared from any files, run a multithreaded copy command to copy the content of drive D:\ to drive F:\:
PS C:\> Set-ItemProperty -Path 'hklm:\system\currentcontrolset\control\filesystem' -Name 'FilterSupportedFeaturesMode' 0
PS C:\> Robocopy /MIR /MT D:\ F:\
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Thursday, June 30, 2022 10:08:37 PM
Source : D:\
Dest : F:\
Files : *.*
Options : *.* /S /E /DCOPY:DA /COPY:DAT /PURGE /MIR /MT:8 /R:1000000 /W:30
------------------------------------------------------------------------------
…
…
…
100% New File 10.6 g D:\USERDB3\userdb1_data7.ndf
100% New File 10.6 g D:\USERDB3\userdb1_data8.ndf
100% New File 1.5 g D:\USERDB3\userdb1_log.ldf
100% New File 10.5 g D:\USERDB3\userdb1_log1.ldf
100% Newer 129 D:\$RECYCLE.BIN\S-1-5-21-1182422864-2996880281-2053474067-500\desktop.ini
------------------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs : 7 6 4 0 0 0
Files : 31 31 0 0 0 2
Bytes : 291.421 g 291.421 g 0 0 0 38.000 g
Times : 0:01:24 0:00:10 0:00:00 0:00:01
Speed : 30,388,642,880 Bytes/sec.
Speed : 1,738,852.125 MegaBytes/min.
Ended : Thursday, June 30, 2022 10:08:49 PM
The copy operation copies 291 GB in 10 seconds with a copy rate of 30 GB/sec.
Two important indicators show that the Windows server did not perform any host-based copy. The CPU use during the copy time was low and the disks do not show much activity, as shown in the following figure: