Testing Methodology
System Configuration | |
Case | Cooler Master Cosmos II |
CPU | AMD FX-8370E |
Motherboard | ASRock 990FX Killer |
Ram | 2 GB G.Skill F3-12800CL9q DDR3-1600 |
GPU | Gigabyte Radeon R9 290 |
Hard Drives | Samsung 850 EVO 256gb SSD |
Network Cards | Dual Port Intel Pro/1000 PT |
Switches | ALLIED TELESYN AT-9924T ADVANCED LAYER 3+ GIGABIT 24-PORT NETWORK SWITCH, Boot (2.6.6-02) Cat6E cables used for network testing. |
Power Supply | Cooler Master Silent Pro Gold 1200W |
4 Seagate 8 TB 7200 RPM desktop drives were installed and used in the NAS tests.
A dual port Intel network card was installed in the test system.
The Synology DS918+ in all RAID arrays used a Single Static Volume.
Network Layout
For all tests, the NAS was configured to use a single network interface. One CAT 6 cable was connected to the Allied Telesis AT-9924T from the NAS and one CAT 6 cable was connected to the workstation from the switch. Testing was done on the PC with only 1 network card active; the Killer network card and the corresponding software were disabled for the testing. The switch was cleared of any configuration and left in a un-configured state. Jumbo frames was not enabled and no changes to the network interfaces were made.
Software
All testing is done based off of a single client accessing the NAS.
To test NAS Performance I used The Intel NAS Performance Toolkit.
The Intel NAS Performance toolkit simulates various tasks for storage devices such as video streaming, copying files and folders to and from the NAS as well as creating content directly on the NAS. To limit caching, a 2GB G.Skill memory module was used in all tests. All options in the Performance toolkit were left that the defaults. The NAS performance test is free to download. You can pick up a copy for yourself here.
All tests were run a total of three times then averaged to get the final result.
RAID 0,5,10 and RAID Hybrid were tested.
Tests were run after all the RAID arrays were fully synchronized
RAID Information
Images courtesy of Wikipedia |
JOBD or Just a Bunch Of Disks is exactly what the name describes. The hard drives have no actual raid functionality and are spanned at random data is written at random.
RAID 0 is a stripe set and data is written across the disks evenly. The advantage of RAID 0 is speed and increased capacity. With RAID 0 there is no redundancy and data loss is very possible.
RAID 1 is a mirrored set and data is mirrored from one drive to another. The advantage of RAID 1 is data redundancy as each piece of data is written to both disks. The disadvantage of RAID 1 is write speed is decreased as compared to RAID 0 due to the write operation is performed on both disks. RAID 1 capacity is that of the smallest disk.
RAID 10 combines the 1st two raid levels and is a mirror of a stripe set. This allows for better speed of a RAID 0 array but the data integrity of a RAID 1 array.
RAID 5 is a stripe set with parity. RAID 5 requires at least 3 disks. Data is striped across each disk, and each disk has a parity block. RAID 5 allows the loss of one drive without losing data. The advantage to RAID 5 is read speeds increase as the number of drives increase but the disadvantage is written speeds are slower as the number of drives is increased. There is overhead with RAID 5 as the parity bit needs to be calculated and with software RAID 5 there is more of a performance hit.
RAID 6 expands on RAID 5 by adding an additional parity block to the array that is distributed across all the disks. Since there are two parity blocks in the array more overhead is used with a RAID 6 array.
For a full breakdown of RAID levels, take a look at the Wikipedia article here.
RAID configurations are a highly debated topic. RAID has been around for a very long time. Hard drives have changed, but the technology behind RAID really hasn’t. So what may have been considered ideal a few years ago may not be ideal today. If you are solely relying on multiple hard drives as a safety measure to prevent data loss, you are in for a disaster. Ideally, you will use a multi-drive array for an increase in speed and lower access times and have a backup of your data elsewhere. I have seen arrays with hot spares that had multiple drives fail and the data was gone.