• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

RAID Arrays Explained

Joined
Jun 17, 2007
Messages
7,335 (1.20/day)
Location
C:\Program Files (x86)\Aphexdreamer\
System Name Unknown
Processor AMD Bulldozer FX8320 @ 4.4Ghz
Motherboard Asus Crosshair V
Cooling XSPC Raystorm 750 EX240 for CPU
Memory 8 GB CORSAIR Vengeance Red DDR3 RAM 1922mhz (10-11-9-27)
Video Card(s) XFX R9 290
Storage Samsung SSD 254GB and Western Digital Caviar Black 1TB 64MB Cache SATA 6.0Gb/s
Display(s) AOC 23" @ 1920x1080 + Asus 27" 1440p
Case HAF X
Audio Device(s) X Fi Titanium 5.1 Surround Sound
Power Supply 750 Watt PP&C Silencer Black
Software Windows 8.1 Pro 64-bit
Wait can someone explain to me Strip Size??? 64K 128K which is better?
 
Joined
Aug 24, 2007
Messages
443 (0.07/day)
Location
BY-S36
System Name Bitch / Dogma
Processor 955 BE @ 3.8Gig / 9850 @stock
Video Card(s) 8800 GTX 512 / 4890
Storage 8 x Samsung F2 1.5TB, 8 x Seagate 500s
Display(s) Acer 24 / Dell 24
Case Lian li / Akasa
Software Win server 2008 / Win 7
Wait can someone explain to me Strip Size??? 64K 128K which is better?

Simplest way to explain this is:

When you create a raid array the disks are segmented into blocks, this is the minimum amount of space a file will take up:

So if you have block size of 64k and write a 2k file, the file will use up 64k of space, if you use block size of 128k the file will take up 128k


So why bother:

If you have a file which is 64000k is will take up 1000 blocks with 64k block size, and 500 with 128k blocks.
Now since each block has its own location on the disk with 128k block size the disk will seek 50% less

So in short:
Small block/stripe size = best use of space but more seeks on the disk (very good if you are storing lots and lots of very small files or are using a database application that makes lots and lost of small reads)
Large block/stripe size = more wasted space but saves on disk seeks (Very good if you are storing large files and want to minimise the effects of disk access times (seeks))
 
Joined
Oct 19, 2007
Messages
8,185 (1.36/day)
Processor Intel i9 9900K @5GHz w/ Corsair H150i Pro CPU AiO w/Corsair HD120 RBG fan
Motherboard Asus Z390 Maximus XI Code
Cooling 6x120mm Corsair HD120 RBG fans
Memory Corsair Vengeance RBG 2x8GB 3600MHz
Video Card(s) Asus RTX 3080Ti STRIX OC
Storage Samsung 970 EVO Plus 500GB , 970 EVO 1TB, Samsung 850 EVO 1TB SSD, 10TB Synology DS1621+ RAID5
Display(s) Corsair Xeneon 32" 32UHD144 4K
Case Corsair 570x RBG Tempered Glass
Audio Device(s) Onboard / Corsair Virtuoso XT Wireless RGB
Power Supply Corsair HX850w Platinum Series
Mouse Logitech G604s
Keyboard Corsair K70 Rapidfire
Software Windows 11 x64 Professional
Benchmark Scores Firestrike - 23520 Heaven - 3670
Bump for a sticky? :laugh:
 

7.62

New Member
Joined
Jun 2, 2009
Messages
313 (0.06/day)
Location
Mt Buller, Victoria
System Name Bretts Computer?
Processor i5 2500k
Motherboard GA-P67A-UD3-B3
Cooling Intel stock cooler
Memory 4 Gig DDR3-1333
Video Card(s) HD 6970
Storage 500GiG SATA and 160GiG IDE
Display(s) Benq G2400WD 24" Full HD LCD
Case Treated Pine with Cypress edges
Audio Device(s) Xonar DG + Z-680 speakers
Power Supply OCZ 750W
Software W7x64
That would have to be the best explanation on the entire internet.

Well done IggSter :)
 
Joined
Aug 10, 2007
Messages
4,267 (0.70/day)
Location
Sanford, FL, USA
Processor Intel i5-6600
Motherboard ASRock H170M-ITX
Cooling Cooler Master Geminii S524
Memory G.Skill DDR4-2133 16GB (8GB x 2)
Video Card(s) Gigabyte R9-380X 4GB
Storage Samsung 950 EVO 250GB (mSATA)
Display(s) LG 29UM69G-B 2560x1080 IPS
Case Lian Li PC-Q25
Audio Device(s) Realtek ALC892
Power Supply Seasonic SS-460FL2
Mouse Logitech G700s
Keyboard Logitech G110
Software Windows 10 Pro
You need not worry about wasted space when choosing a stripe size. Stripe ≠ cluster.

While yes the controller works with data at these sizes, the OS does not. It's not even aware that it's on an array of any sort.
 

freaksavior

To infinity ... and beyond!
Joined
Dec 11, 2006
Messages
8,095 (1.28/day)
System Name ZeroUptime | M.A.S.S / MM1
Processor Xeon 2659 v3 / Xeon 2683 v4 / ARM A14
Motherboard Asus X99-E-10G WS / ASRock x99 usb 3.1 / Apple
Cooling NZXT Kraken / Noctua NH-L12 / Apple
Memory 16Gb DDR4 / 32Gb DDR4 / 16GB HBLM
Video Card(s) Powercooler ATI vega 64 / GT 7300 / ARM
Storage Samsung 970 512 Evo NVMe / A lot. / 256 + 512 External TB3
Display(s) Acer Predator X34 / Headless / Acer X34 Non predator
Case NZXT H630 |Rosewill 8bay 4u server chasiss / MMM1
Audio Device(s) Onboard / Onboard / Onboard
Power Supply Corais HX850 | Corsair TX750 / Internal 250w
Mouse g502 proteus core / Headless / g502 proteus core
Keyboard Corsair K95 Cherry Blue / Headless / K65 Cherry Red
Software Windows 10 / ESXI / Big Sur 11.2.2
This needs to be a sticky and moved to storage
 
Joined
Oct 19, 2007
Messages
8,185 (1.36/day)
Processor Intel i9 9900K @5GHz w/ Corsair H150i Pro CPU AiO w/Corsair HD120 RBG fan
Motherboard Asus Z390 Maximus XI Code
Cooling 6x120mm Corsair HD120 RBG fans
Memory Corsair Vengeance RBG 2x8GB 3600MHz
Video Card(s) Asus RTX 3080Ti STRIX OC
Storage Samsung 970 EVO Plus 500GB , 970 EVO 1TB, Samsung 850 EVO 1TB SSD, 10TB Synology DS1621+ RAID5
Display(s) Corsair Xeneon 32" 32UHD144 4K
Case Corsair 570x RBG Tempered Glass
Audio Device(s) Onboard / Corsair Virtuoso XT Wireless RGB
Power Supply Corsair HX850w Platinum Series
Mouse Logitech G604s
Keyboard Corsair K70 Rapidfire
Software Windows 11 x64 Professional
Benchmark Scores Firestrike - 23520 Heaven - 3670
Ive been saying sticky since i first wrote this.
 

Solarsails

New Member
Joined
Apr 5, 2019
Messages
2 (0.00/day)
Simplest way to explain this is:

When you create a raid array the disks are segmented into blocks, this is the minimum amount of space a file will take up:

So if you have block size of 64k and write a 2k file, the file will use up 64k of space, if you use block size of 128k the file will take up 128k


So why bother:

If you have a file which is 64000k is will take up 1000 blocks with 64k block size, and 500 with 128k blocks.
Now since each block has its own location on the disk with 128k block size the disk will seek 50% less

So in short:
Small block/stripe size = best use of space but more seeks on the disk (very good if you are storing lots and lots of very small files or are using a database application that makes lots and lost of small reads)
Large block/stripe size = more wasted space but saves on disk seeks (Very good if you are storing large files and want to minimise the effects of disk access times (seeks))
RAID STRIPE SIZE AND SLACK SPACE

There is a misconception with regard to space usage and stripe size. There seem to be a few people creating posts with the concern that large stripe sizes are potentially "wasteful" if there are many small files to be written to a RAID array. Such statements are woefully inaccurate, to put it mildly.

In the majority of cases stripe size has absolutely no bearing on space usage (unlike cluster size). If a "stripe" isn't fully populated (filled) by a single file then the next file, or files, will be written into that stripe's space until the stripe is completely "filled". In other words a single stripe can hold multiple files and stripes are always completely filled before disk writes continue on to the next stripe, which is on the next disk. The misconception of space being "wasted" by configuring a raid array with large sized stripes is more relevant to cluster or allocation unit size but is completely inaccurate with regard to stripe sizes. Stripes are always completely filled and if a stripe isn't filled on the first pass it will eventually be used during the next write(s) until it is filled.

For example: The assertion is that if you choose a 64kb stripe size and you store a 2kb text file then that file will be written to a stripe and no other files will be able to be stored in that stripe thereby wasting 62kb of disk space. This concept is as wrong as wrong can be.

The only incidence of disk space being used in this manner is with regard to FILESYSTEM BLOCKS. As files are stored within a disk's filesystem they are written into an available block and as each block written to becomes filled writing continues to the next available block until the file is completely written to the disk and in many instances the last block written will only be partially filled which results in "slack space". OR if a file is smaller than the available block being written to this will also result in slack space. Due to the nature of the method that files are stored on disk this slack space can not used in future writing events to the disk and is considered to be "wasted" space.

This is not the case with regard to "stripes". To the OS a RAID array appears as any other storage device and multiple filesystem blocks may reside in a single stripe element.

As an aside you will notice better performance if you manage to match the filesystem block size to the raid stripe size and only in that arrangement is it possible for a stripe to have wasted slack space.

Summary: If a stripe isn't fully populated (filled) by a single file then the next file, or files, will be placed into that stripe until it is completely "filled". In other words a single stripe can hold multiple files and stripes are always completely filled before disk writes continue on to the next stripe which is on the next disk. Stripes are always completely filled and if a stripe isn't filled on the first pass it will eventually be used during one of the corresponding write(s) until that area of disk is filled.

RAID STRIPE SIZE AND SLACK SPACE by Solarsails
 
Joined
Mar 21, 2021
Messages
4,330 (3.92/day)
Location
Colorado, U.S.A.
System Name HP Compaq 8000 Elite CMT
Processor Intel Core 2 Quad Q9550
Motherboard Hewlett-Packard 3647h
Memory 16GB DDR3
Video Card(s) Asus NVIDIA GeForce GT 1030 2GB GDDR5 (fan-less)
Storage 2TB Micron SATA SSD; 2TB Seagate Firecuda 3.5" HDD
Display(s) Dell P2416D (2560 x 1440)
Power Supply 12V HP proprietary
Software Windows 10 Pro 64-bit
RAID (Redundant Array of Inexpensive [or independent] Disks)

RAID-0 - Data Striping w/out parity– 2 disk minimum:
Provides improved performance to that of a single, non-RAID-0 drive, and provides additional storage space to work with. This RAID array breaks down the information stored on the hard drive into blocks which are stored on each corresponding RAID-0 hard drive.

Array size: Size of Smallest Drive x Number of Drives

Advantages: This particular array is the easiest to implement, cheapest to implement, and most all controllers will support the use of RAID-0. Can make boot times quicker and make applications load faster.

Disadvantages: Not fault tolerant. In other words if one drive fails, all data is lost.

Recommendation: Do not use it in an environment where data is of the utmost importance such as a law firm or school corporation. If you implement this array, it is HIGHLY recommended that you schedule daily or weekly backup. (Preferably every couple of days or whenever you add new data) I would not use more than four drives either because you run the risk of losing data. One is better off to install RAID-0 in an environment that where applications require a high amount of performance such as gaming or working with digital imaging. Backup is required so that way if one (or all) drives fail, you can recover from the failure.

Nice to add that RAID-0 is not really a RAID as there is no redundancy.
 
Top