Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I just ordered a new server which will be used to serve mp4 video files ranging from 10MB up to 90MB using nginx (with pseudo-streaming).

This server has dual opteron 6128, 64GB of RAM.

What I would like to ask is how do I setup my hard disk to serve these video files the fastest way.

I ordered 8 x 1.5TB HDD in Hardware RAID 10. Upon my understanding of raid 10, I should be seeing 1.5TB of space only on fdisk -l, instead I am seeing 11.8TB. Did the server provider did it wrong?

fdisk -l

Disk /dev/sda: 107.4 GB, 107374181888 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000d3d9

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       12794   102759424   83  Linux
/dev/sda2           12794       13055     2096128   82  Linux swap / Solaris

Disk /dev/sdb: 11892.5 GB, 11892537950720 bytes
255 heads, 63 sectors/track, 1445852 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

My other question is, how would I partition/format this disk for maximum read performance? This article http://www.zdnet.com/blog/storage/chunks-the-hidden-key-to-raid-performance/130 suggests that I use 512bytes to 8KB of chunks.

Please bear with me because I am a beginner in Linux. Thank you in advance.

share|improve this question
add comment

4 Answers

up vote 1 down vote accepted

I see Disk /dev/sdb: 11892.5 GB whihc leads me to think they're doing a RAID 0, as that's pretty much your full capacity.

Secondly, if this is for streaming video, you'd be better served with a RAID 5 / 50 configuration. RAID 10 is way overkill. RAID 5 does very well with sequential reads which is typicaly what video is.

share|improve this answer
    
Hi. Thanks for the comment. With Raid 5, will I get better speeds compared to raid 10? I'm not sure if I can get the guys to have the raid controller replaced with raid 5 controller, but if speeds is the same with raid 10 then I'll be fine with that even with the loss of storage. –  Ansell Jan 29 '12 at 16:33
    
I think you ned to evaluate "How fast is fast enough". For example, if you you only need a car to go 65MPH and you have one car that can do 80MPH and another that can do 100MPH, do you really need the one that can do 100MPH simply because its faster? –  Eric C. Singer Jan 29 '12 at 16:47
    
Hi. I would go with the one capable of doing faster speeds. The server is on a 1gbit connection so I would want to use nearly the entire 1gbps connection, if not all of it. –  Ansell Jan 29 '12 at 16:54
    
right... but at the cost of being ableto hold more video? Anyway, for READ ONLY speed RAID 5 will run just as well if not better than 10 disk for disk, at least IMO. Now, you start talking about writes, then RAID 10 will wip 5 any day of the week. Really what it comes down to is how much disk do you want to lose so you can have fast writes and reads if all you really need is good read performance –  Eric C. Singer Jan 29 '12 at 16:59
    
and any controller, ought to be able to do RAID 5 if it can do 10. As you start adding more disks, you may want to think about a raid 50 and not avery controller can do that. –  Eric C. Singer Jan 29 '12 at 17:00
show 2 more comments

Your understanding of RAID 10 is flawed. If you have 8 x 1.5 TB disks, a RAID 10 array would have 6 TB of raw, usable space. Given that you have double that, it sounds like they shipped you a RAID 0 array.

RAID 0 will certainly give you the fastest speeds without sacrificing any disk space. RAID 10 will give you faster read speeds at the cost of 6 TB of storage.

To clarify, a RAID 0 is a set of disks that have the data spread out across them to increase bandwidth to the data. A RAID 10 (or RAID 1+0) is two RAID 0 "Stripes" mirrored to prevent data loss (and in many cases increase read speed).

NOTE: RAID 0 arrays are completely useless once you lose a hard disk. If you have 8 SATA disks, that is likely to happen over the lifetime of the server.

You asked about chunk size, which has nothing to do with formatting the disk. Chunk sizes are used by the RAID controller to define how data is spread across disks. In order to change the chunk size, you'd have to reconfigure the RAID controller (usually done from the BIOS during boot-up).

share|improve this answer
    
Hi, Thanks for the input. What chunk size would you suggest for a video server? –  Ansell Jan 29 '12 at 16:31
    
To the point of the original ZDNet article, anything between 512B and 8KB is "Small". Many RAID controllers come out of the box at 64KB which the article is suggesting is too large, so I would tune it down to 8KB. –  Kyle Smith Jan 29 '12 at 16:40
    
I would turn the chunk-size up to the read-ahead-buffer of a single drive - that should be some MB. Why should a smaller chunk-size serve better? There should be enough fs-cache on that server... –  Nils Jan 29 '12 at 22:42
add comment

They set you up raid0 , check which HW controller you have in box with lshw or lspci so we can work from there to get data from controller so you can provide them with hard evidence in case capacity is not evidence enough.

share|improve this answer
    
Hi. Here's what I found: RAID bus controller: 3ware Inc 9650SE SATA-II RAID PCIe –  Ansell Jan 29 '12 at 16:30
    
check 3ware.com/support and download tw_cli utility; that one will help you extract config from controller ... something like 'tw_cli info c0' will give you output of config on c0 channel. if thats unset check c1 channel. –  Hrvoje Špoljar Jan 29 '12 at 17:17
add comment

With RAID10 you lose half the capacity, you should see 6TB, not 12TB. Something is wrong.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.