White Papers

SQL Server design considerations
8 Dell EMC PowerVault ME4 Series and Microsoft SQL Server | 3923-BP-SQL
There is a variety of other RAID levels and storage configurations available for very specific workloads. Make
sure the design tradeoffs are completely understood when choosing custom configurations and settings. In
many cases, modifying the storage configuration for existing volumes will involve halting I/O on those
volumes, resulting in a SQL Server outage. For detailed information on all available choices, including
ADAPT, consult the ME4 Series Administrator’s Guide.
3.5 Validating the storage design
Once the I/O requirements have been defined, it is easy to determine whether the hardware can provide the
desired performance by running some simple tests. Diskspd is a free Microsoft utility that can simulate I/O
patterns generated by SQL Server. There are several other utilities available as well. When selecting a utility
to simulate I/O, verify that it meets the following requirements:
Ability to configure block size
Ability to specify number of outstanding requests
Ability to configure test file size
Ability to configure number of threads
Support for multiple test files
Does not write blocks of zeros during tests
3.5.1 Validating the I/O path
The first thing to test on a new configuration is the path between the server and the array. Running a large
block sequential read test using small files should saturate the path between the server and the array. This
test verifies that all paths are fully functional and can be used for I/O traffic. Run this test on a dedicated
server and array; a live system could cause significant performance issues.
To validate the I/O path, run a large block sequential read test using the following guidelines:
Create one LUN per storage processor.
Format the volumes using a 64 KB allocation unit.
Use a block size of 512 KB for the test.
Configure the test for 32 outstanding I/Os.
Use multiple threads. Eight is the recommended starting point.
If the displayed throughput matches the expected throughput for the number of HBA ports in the server, the
paths between the server and ME4 Series array are set up correctly.