How To Decide The Nos Of Disk on The NAS Or Storage Server Should Have

Warning: This article was published many years ago (greater than two) Feb 13, 2011. Some information may be outdated.

After working for over a Year and studying the various method used by SI to Size a NAS and also noticing the problems they face. I have documented the following

The parameters that are essential for Selecting the NAS or Storage server

The normal process is to use the storage calc provided by the camera or VMS OEM and find the total TB for total Nos of Camera and then study the spec of the NAS for the TB of storage.. The difficulty with this approach is that some NAS perform as required and most do not..

We end up blaming the NAS for non Performance but fail to understand that we have sized the NAS incorrectly.

The important param which is very very clear from the various post on the Internet on storage calculations is IOPS.. Unfortunately there is no documentation on this for Video surveillance.

I shall attempt to do so..

[su_box style=”glass” radius=”10″ title=”Warning”]

kindly note I am not an expert in Storage and have no great experience with the various NAS available in the Market.

All expert on storage are welcome to point out any error or technical issues with the documentations provided herewith.
[/su_box]

[su_tabs]

[su_tab title=”IOPS: HDD”]Each Hard disk (HDD) has different IOPS (Input Output Per Sec). This is calculated from the following parameters

For 4 Nos of HDD 7200 RPM
[su_table]

HDD Used 7200 RPM From Datasheet of the HDD Used
Full Rotation 8.33 mSec =RMP/60000
Rotational Latency 4.17 mSec =(RPM/60000)/2
Average Seek Time 4.45 mSec From Datasheet of the HDD Used
IO Time 8.62 mSec =IOTime+Avg Seek
IOPS 116 IO per Sec =(1/IO Time)*1000
No of Disks Used 4 Nos from NAS
Segment Size (Block Size) 4 KB Configure in NAS or OS
MBPS 1.81 MBPS =(IOPS*NoOfDisk*IO Size)/1024

[/su_table]For 8 Nos of HDD 7200 RPM

[su_table]

HDD Used 7200 RPM From Datasheet of the HDD Used
Full Rotation 8.33 mSec =RMP/60000
Rotational Latency 4.17 mSec =(RPM/60000)/2
Average Seek Time 4.45 mSec From Datasheet of the HDD Used
IO Time 8.62 mSec =IOTime+Avg Seek
IOPS 116 IO per Sec =(1/IO Time)*1000
No of Disks Used 8 Nos from NAS
Segment Size (Block Size) 4 KB Configure in NAS or OS
MBPS 3.62 MBPS =(IOPS*NoOfDisk*IO Size)/1024

[/su_table]

Pls note the just by increasing the Nos of HDD the Throughput is 3.62MegaBytes Per Second. The throughput is for Read Only and is not calculated for the NAS which is Writing the data in RAID Configurations.

The Read “throughput” is very much depended on the spindle speed and block size, hence pls do calc the above for the HDD used in your NAS..

[/su_tab]

[su_tab title=”NAS: Read=100%”]

Calculate the IOPS for the NAS in RAID5

[su_table]

IOPS=d*dIOPS/(%r+(F*%w))
%r 100 % Time for Read
%w 100 % Time for Write
RAID 5 RAID used on NAS
F 4
dIOPS 75
No of Disk 4 Nos
IOPS Calculated 69 For the NAS/SAN
Block Size 4 KBytes
Read/ Write Speed 0.94 MBytes Per Sec

[/su_table]

Calculate the IOPS for the NAS in RAID0

[su_table]

IOPS=d*dIOPS/(%r+(F*%w))
%r 100 % Time for Read
%w 100 % Time for Write
RAID 0 RAID used on NAS
F 4
dIOPS 75
No of Disk 4 Nos
IOPS Calculated 150 For the NAS/SAN
Block Size 4 KBytes
Read/ Write Speed 2.34 MBytes Per Sec

[/su_table]

We can now understand that RAID0 has higher IOPS than RAID5. Hence NAS performance in RAID0 is Better than RAID5.

Now let us compare the NAS with More No of Disk in RAID5

[su_table]

IOPS=d*dIOPS/(%r+(F*%w))
%r 100 % Time for Read
%w 100 % Time for Write
RAID 5 RAID used on NAS
F 4
dIOPS 75
No of Disk 7 Nos
IOPS Calculated 105 For the NAS/SAN
Block Size 4 KBytes
Read/ Write Speed 2.87 MBytes Per Sec

[/su_table]

It’s Clear when we use more no of disk the throughput of the NAS Increases.

[/su_tab]

[su_tab title=”NAS: Read < 100%”]

It’s quite a task to work this out..with the formula you can play with different value of r% = 10, 25, 50 & 75.. You will notice that the throughput is better when the r% is lower.

[su_table]

IOPS=d*dIOPS/(%r+(F*%w))
%r 25 % Time for Read
%w 100 % Time for Write
RAID 5 RAID used on NAS
F 4
dIOPS 75
No of Disk 7 Nos
IOPS Calculated 124 For the NAS/SAN
Block Size 4 KBytes
Read/ Write Speed 3.39 MBytes Per Sec

[/su_table]

We can get better throughput if the simultaneous Read along with Write is Lower

Changing the BLOCK SIZE from 4K to 64K

[su_table]

IOPS=d*dIOPS/(%r+(F*%w))
%r 25 % Time for Read
%w 100 % Time for Write
RAID 5 RAID used on NAS
F 4
dIOPS 75
No of Disk 7 Nos
IOPS Calculated 124 For the NAS/SAN
Block Size 64 KBytes
Read/ Write Speed 54.25 MBytes Per Sec

[/su_table]

I am not sure if this is possible on NAS.. This Block size is created when the HDD is formatted when the RAID is created.

I have checked a few NAS and noticed that some do.. Also It’s noticed that ReadyNAS has a block size of 16K which makes the HDD not readable on other systems.

Honestly, I would like others to post their comments on this aspects.

[/su_tab]

[/su_tabs]

Sometimes it’s not easy to get these data from HDD OEM’s you can use the following values

HARD Disk IOPS from Internet

[su_table]

RPM SATA II Param
5400 50 IOPS
7200 75 IOPS
10000 100 IOPS
15000 150 IOPS

[/su_table]

btw Some Reading from the various post on the different head used in the data-sheets
1. Hardware block size= “sector size”
2. Filesystem block size= “block size”
3. Kernel buffer cache block size= “block size”
4. Partition table block size= “cylinder size”

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.