Purity//FA comes with Offloaded Data Transfer (ODX)

Offloaded Data Transfers (ODX) was introduced in Microsoft Windows Server 2012 to provide direct data transfer within or between storage arrays by bypassing the host system. By offloading any file transfer operations on the host system ODX helps to reduce host side latency, leverage the storage array throughput and reduce CPU and networking resources on […]


Offloaded Data Transfers (ODX) was introduced in Microsoft Windows Server 2012 to provide direct data transfer within or between storage arrays by bypassing the host system. By offloading any file transfer operations on the host system ODX helps to reduce host side latency, leverage the storage array throughput and reduce CPU and networking resources on the host system.

ODX is a transparent operation to the Windows Server host system whether a user or administrator initiates a file transfer using Windows Explorer via drag-n-drop or using command line tools.

Pure Storage has implemented ODX as part of Purity 4.10 maintenance release. By default, Windows Server 2012, 2012 R2 and 2016 have ODX enabled so Pure Storage customers will immediately be able to take advantage of this new Purity capability. The Pure Storage FA-400 Series and FlashArray//M are listed on the Windows Server Catalog as certified for ODX on Windows Server 2012, 2012 R2 and 2016.

Implementing ODX benefits the following use cases:

  • Import and export of Hyper-V virtual machines.
  • Transfer of large files, examples include: SQL Server databases, Exchange databases, VHD(X) files, image or video files.

Without ODX the operation of transferring data from one host system to another relied entirely upon the network. The basic operation was to read the content from the storage array from host system A, copy the content across the network to host system B and finally write the transferred content back to the same storage array.

To eliminate this inefficiency, ODX uses a token-based mechanism for reading and writing data within or between storage arrays. Instead of routing the data through the host, a small token is copied between the source server and destination server. The token serves as a point-in-time representation of the data. As an example, when you copy a file or migrate a virtual machine between storage locations (within or between storage arrays), a token representing the virtual machine file is copied, thereby removing the need to copy the underlying data through the servers.

The following figure explains the steps that are involved with a token-based copy operation. Reference https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/hh831628(v=ws.11)?redirectedfrom=MSDN

Example using robocopy to copy 1,040 files (1.252 TB) in 00:00:29 seconds.

The view from the Pure Storage FlashArray web management tool shows that there is no front-end latency or performance hits for IOPS or Bandwidth. Performing this copy is a metadata operation on the FlashArray without interruption or resources to the host.

For a more detailed article on Offloaded Data Transfer please read ODX with FlashArray: An Engineer’s Perspective..

Thanks,
Barkz