-3

Which linux file system allow us to write files on random disk for explanation we have 5 disk with 1T size [1t] [1t] [1t] [1t] [1t] on raid 0 scenario, when file come to fs, it write chunk of file to all disk. now i need file system and configration that allow me to write whole file on random disk for example 1g file need to write, random disk select by fs randomly, and write file.

dd if=/dev/urandom of=a  bs=64M count=3

dd if=/dev/urandom of=b  bs=64M count=3

dd if=/dev/urandom of=c  bs=64M count=3

[disk 1] [disk 2] [disk 3] [disk 4] [disk 5]

[]  [a] []  []  []
[]  [a] []  [b] []
[c] [a] []  [b] []
3
  • 9
    Why on earth do you want to do this?
    – MadHatter
    Oct 17, 2017 at 13:14
  • dear Mad Hatter , for some reason , we have request storm , HDD Latency risen up , on raid 0 scenario latency is awful . iowait risen up . we dont need 10 -12 disk seek for request , if requests distribute on disks , we can serve alot of reuqest more than raid 0 , to waste 12 disk seek time ..
    – EaxZone
    Oct 17, 2017 at 16:15
  • @MadHatter It's an enterprise-level solution. For extremely busy systems, it's a great way to avoid contention on specific disks. If fileA is on one disk, reading that one file won't affect the performance when reading fileB from another disk. In actual implementations I've worked on, each "disk" is a RAID array presented by a storage system. If you're streaming video to a lot of customers, for example, it will significantly reduce contention. AFAIK, the only Linux file system that implements this is IBM's GPFS. On Solaris, you could use QFS/SAMFS. Oct 19, 2017 at 10:46

1 Answer 1

4

If you have a RAID-0 array then the file system runs on top of this and will effectively just see a single disk. For example an EXT4 file system on top of software or hardware RAID has no idea what disks make up the array and can't make decisions about which disk data should go to.

There are file systems that manage redundancy/RAID themselves, but I'm not aware of any that can be configured to always write whole files to a specific disk.

However as hinted at by @MadHatter, this is a strange requirement and seems like the wrong solution in the first place. I'm not sure what problem you are trying to solve and I'm also wary when people mention RAID-0 as it's more often that not the sign of a beginner or a bad choice. If you specify why you require this functionality maybe we can provide some better suggestions.

The alternative is to do this at the application level, and have your software choose from a list of disks to put each file on. However, this obviously relies on you having the ability to modify whatever is writing the files. In a more robust design the application may write each file to multiple disks, storing location information in a database, thus being capable of retrieving files when requested even if some disks have failed. This is similar to how some large scale cloud file storage systems work.

2
  • Dear USD Matt , on application layer we cant change anything , this is simple web server , server a lot of files , and we have request storm we can't waste seek time of hdds for raid 0 or ... i want to find solution on this scenario , one volume , group of 10-12 10T disk any way to achieve that ?
    – EaxZone
    Oct 17, 2017 at 16:22
  • 1
    Maybe use a CDN? Oct 18, 2017 at 14:40

Not the answer you're looking for? Browse other questions tagged .