This would mean that zfs is also "traditional raid" since the math behind raid 5/raidz1 (https://blogs.oracle.com/solaris/post/understanding-raid-5-recovery-with-elementary-school-math) and raid 6/raidz2 (https://blogs.oracle.com/solaris/post/understanding-raid-6-with-junior-high-math) is the same. (Both blog posts are from a zfs developer from oracle)Anything that does the traditional RAID 0, 1, 5, 6 (or any of the less common) ones, in a way that is more or less the same.
"In a way that's more or less the same", using the same parity math isn't where an issue would be (unless that parity math is flawed). And I will note that blog doesn't go over the *actual* math, but I think that's sort of a tangent to this anyways.This would mean that zfs is also "traditional raid" since the math behind raid 5/raidz1 (https://blogs.oracle.com/solaris/post/understanding-raid-5-recovery-with-elementary-school-math) and raid 6/raidz2 (https://blogs.oracle.com/solaris/post/understanding-raid-6-with-junior-high-math) is the same. (Both blog posts are from a zfs developer from oracle)
Do you really believe this?... Since the error correction needs to be fast, it can't be too sophisticated so it's entirely possible to reconstruct an incorrect value on a read retry and most drives will pass along the first "correct" value for a sector. ...
It's possible spinning rust no longer uses Hamming code, sure. But it's likely they do as it's proven, fast and reliable within its limits. Which is 1 bit correction, 2 bit detection, and *can* fail (pass bad data) at3 or more bitflips.Do you really believe this?
[You read it on the Web ? ...(so it must be true) ]
"possible" ??? ... "no longer" ??? (Did it ever?)It's possible spinning rust no longer uses Hamming code, sure. But it's likely they do as it's proven, fast and reliable within its limits. Which is 1 bit correction, 2 bit detection, and *can* fail (pass bad data) at3 or more bitflips. ...
When you don't remember the name, google it and fail to notice they are actually talking about SSDs, lol. Yeah, totally the wrong name/method. Looks like it's a mix of Reed-Solomon which is much better (in general), and Low-density parity-check. Both are single pass, so unless the drive is comparing multiple (raw) reads it's possible to have an uncorrected error. How often depends on drive parameters. I'm actually less worried about that now with the refresher on the ECC used, so thanks!"possible" ??? ... "no longer" ??? (Did it ever?)
Why would you make these assumptions?
Have you, maybe, conjoined the ECC implementation used for (current/modern) RAM [an 8-bit datum] with (any of) the ECC implementations used for (current/modern) HDDs [a 512/4096-byte datum]?
Here is how it would work in my setup using the open source version. For this example the file is 60mb so it will fix in a single chuck(64mb) and I have min goal set to 2. There are two full copies of the chuck seating on different hard drives in different servers. During read of the file or normal checksum there is an error, moosefs will flag the error and read the file from the good chuck left, and serve that info to the client. It will also work and coping that good chuck to another server to bring the system back up to two good working copies of the chuck. For my really important folder (less than 1tb) of stuff like desktop backups and photos I ahve the min goal set to 3 so there are 3 good copies of that file in the moosefs system.Relating to this thread, MooseFS is actually acting a bit like ZFS here (broadly speaking), maintaining checksums on files and claims to do re-reads from other copies if needed. Assuming MooseFS does what it says well, it would (IMHO) make raid5/6 more useful since it would solve at least some data integrity issues. What I don't know is if MooseFS can "rebuild" a file (say from two partially correct sources) or if it's just a checksum/hash/
Link: MooseFS.... It is basically a CephFS equivalent that pre-dated CephFS and that hasn't really had any architecture improvements in a long long time just slow maintenance for many years. They promised multiple master or at least automatic master failover in the open source but have never delivered it or erasure encoding which are maybe available in the paid version but, they don't seem to really try to sell that either and the project hasn't seem much change in many years. So, I have my doubts about the paid version really being that much of an improvement of the open source ....
I am still running moosefs for my file system at home and still enjoy using but I will also agree with you on most of the above. it does seem that new development was on features is very slow or not happening but the code for my use case has been stable. In the past few weeks I have moved my proxmox based VMs from local storage to ceph backed storage and overall it has been a nice experience. One thing I have noticed is ceph does not do well or cant run on SBC with low ram. I have a bunch of odroid hc2 and I could not make ceph stable on those as it kept running out of ram. Moosefs has no problem on the very same hardware. with moosefs running those boards are seating at 220md used out of 2gb ram.I ran MooseFS before for a file store it worked well enough. It is basically a CephFS equivalent that pre-dated CephFS and that hasn't really had any architecture improvements in a long long time just slow maintenance for many years. They promised multiple master or at least automatic master failover in the open source but have never delivered it or erasure encoding which are maybe available in the paid version but, they don't seem to really try to sell that either and the project hasn't seem much change in many years. So, I have my doubts about the paid version really being that much of an improvement of the open source. I have since moved to Ceph because I can do CephFS for file store and then RBD too for VMs. Just makes more sense to me than two software systems.
Looks like he deleted his comment in this thread.Are you sure?
I get a "new" tag in the top right for new/unread posts and then usually skim over them:View attachment 28517
I wouldn't mind sharing but they don't publicly disclose it and I'd like to be respectful of that, sorry. I'll comment that it's very reasonable pricing to me for the feature set and reliability, even when comparing to other similar SDS like Ceph and SeaweedFS. I try to be fairly agnostic and MooseFS just often ends up being the best fit for my problem spaces.@wings What does the pro pricing look like if you dont mind sharing?
How does Erasure Coding impact your performance? I always thought EC may complicate things a little bit while having an incident. Thats what I took from a discussion with a dev. Are you using any underlying like ZFS or just plain XFS? Any caching involved (Intel CAS with some sort of write protection)? My experience with the CE version is that Intel CAS set up with some Optane PEMMs speeds things up significantly. I have no experience with the native WIndows client in the Pro version. Tested some time with Master duplication via VM in a cluster, but defenitely could see performance impact. So master in a VM is not ideal.... and the erasure coding and high availability is solidly in "just ****ing works" territory. Failover is reliable. I sleep better with it than I do with my Ceph cluster.
Not only that, it actually *works* (read: provides reasonable, usable performance) on hard drive bricks/OSDs/disks, unlike Ceph... My 2c ...
There is *an* impact but honestly I don't notice the difference. I will happily serve datasets out of EC goals in production with nobody caringHow does Erasure Coding impact your performance? I always thought EC may complicate things a little bit while having an incident. Thats what I took from a discussion with a dev. Are you using any underlying like ZFS or just plain XFS? Any caching involved (Intel CAS with some sort of write protection)? My experience with the CE version is that Intel CAS set up with some Optane PEMMs speeds things up significantly. I have no experience with the native WIndows client in the Pro version. Tested some time with Master duplication via VM in a cluster, but defenitely could see performance impact. So master in a VM is not ideal.
my moosefs-leader is a VM and it does not seem to causing me any problems. VM host is promox on a intel E5v4 based cpu system with ddr4. My usage of moosefs is mostly vm backups from promox or media files for plex. Current moosefs cluster is 135tb total, 80tb free. 150k fs objects 563k chucks. The chuckservers are all proxmox hosts again intel E5v4 based cpu system with ddr4, 19 disk spread over 3 nodes.There is *an* impact but honestly I don't notice the difference. I will happily serve datasets out of EC goals in production with nobody caring
Master cannot run as a VM. I know that's a funny statement, but... try it, it'll work but you'll have absolutely terrible performance. I didn't believe them and did it anyways and ended up calling them weeks later panicking about how my production service was taking 1-2 seconds to return any file. Moved the master back to bare metal on their advice and wham, fast. We suspect it might be a memory thing - memory management under layers of virt is probably not as good/fast as plain Linux.