News for hackers. Stuff that matters.
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by supriyo-biswas on Tuesday May 23, 2023 @05:00AM (#36041713)
This isn’t really relevant to the article, but are there any file systems which can store files using erasure coding? (As opposed to using something like MinIO)
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by ddorian43 on Tuesday May 23, 2023 @05:15AM (#36041797)
Raid 5 & 6 are erasure coding as an example.
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by tecleandor on Tuesday May 23, 2023 @07:43AM (#36042935)
See my other comment but RAID 5/6 are not usually considered erasure coding implementations [0]. Mustly, because AFAIK RAID 5 and 6 aren't standards, so it depends on the controller or software manufacturer implementation. Some use XOR, some use Reed Solomon, some use other stuff...

For example, Linux MD RAID 5 uses XOR, and RAID 6 uses Galois fields. [1][2]

  0: https://www.itprotoday.com/storage/erasure-coding-vs-raid-which-right-and-when
  1: https://raid.wiki.kernel.org/index.php/A_guide_to_mdadm#Raid_5
  2: http://igoro.com/archive/how-raid-6-dual-parity-calculation-works/
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by mjb on Tuesday May 23, 2023 @08:08AM (#36043154)
Of course RAID 5 and 6 are erasure coding. They use a code (e.g. XOR/parity) to tolerate the behavior of a binary erasure channel (BEC). Systematic codes (where some of the code stripes are just identity chunks of the data), like RAID 5 and 6, are probably the most common case of erasure codes.

Now, we could have an argument about whether RAID 1 is an erasure code, but that wouldn't teach us much.

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by tecleandor on Tuesday May 23, 2023 @08:38AM (#36043393)
Well, I stand corrected (and I don't have much knowledge to argue about this).

Re-reading, I see that in the storage world "simple" correction systems don't tend to be classified as erasure coding.

Were I say "simple", I think I'd say any correction system that's not parametrizable, as in "let's do a 17+3 in this ordinary dataset and 4+2 in this one that's very important"

About RAID 1, technically probably it is... although bit very efficient :D

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by throwawaymaths on Tuesday May 23, 2023 @11:46AM (#36046024)
Technically xor is a special case of erasure coding.
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by gigatexal on Tuesday May 23, 2023 @05:06AM (#36041744)
https://en.wikipedia.org/wiki/RozoFS <-- never heard of it before I googled. But apparently this.

I wonder if Brtfs is using this for raid. Though last I read it Raid-5 was still broken.

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by naranha on Tuesday May 23, 2023 @05:36AM (#36041936)
- ZFS with data loss protection

- Ceph with data loss protection

- Any filesystem on linux-md without data loss protection, BTRFS on linux-md on synology

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by tecleandor on Tuesday May 23, 2023 @07:24AM (#36042754)
I'm not sure what are you referring to with "data loss protection" in ZFS, but if you refer to the 'copies' parameter, that's not erasure coding, that's just full copies of the data blocks [0]. They mostly only work for some sector errors on disk. If you lose a whole disk, THEY DO NOTHING. [1]

"The block pointer can store up to three copies of the data each pointed by a unique DVA. These blocks are referred to as “ditto” blocks in ZFS terminology." [2]

And although VMWare calls RAID5/6 "Erasure Coding" [3](!!), I'd say it's not [4].

  0: https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/copies-property.html
  1: https://jrs-s.net/2016/05/02/zfs-copies-equals-n/
  2: https://pages.cs.wisc.edu/~kadav/zfs/zfsrel.pdf
  3: https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.virtualsan.doc/GUID-AD408FA8-5898-4541-9F82-FE72E6CD6227.html
  4: https://www.itprotoday.com/storage/erasure-coding-vs-raid-which-right-and-when
--

Edit: some extra info and links

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by naranha on Tuesday May 23, 2023 @07:35AM (#36042852)
Sorry I meant to write protection against data corruption (checksums)
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by tecleandor on Tuesday May 23, 2023 @07:52AM (#36043002)
Note that ZFS (and probably other fs) checksums are not data corruption protection, but data corruption detection ;)

If a checksum error is detected, you depend (mostly) on your RAIDZ protection to recover from it [0]. If you're on a single drive or striped array without mirrors or raidz1/2/3... you're SOL. (ditto blocks can help but they aren't the best. I'd only recommend them if you're stuck on a single drive setup without raid)

But you at least know that your data is corrupt, and that's very important too :)

  0: https://openzfs.github.io/openzfs-docs/Basic%20Concepts/Checksums.html
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by matja on Tuesday May 23, 2023 @07:59AM (#36043077)
> For double or triple parity, we use a special case of Reed-Solomon coding

https://github.com/openzfs/zfs/blob/zfs-2.1-release/module/z...

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by voxadam on Tuesday May 23, 2023 @06:29AM (#36042248)
It's not mainline yet but bcachefs[0][1][2] includes erasure coding as one of its defining features.

Maybe, if we're lucky, Kent Overstreet (koverstreet[3]) will magically appear and talk more on his latest creation.

[0] https://bcachefs.org/

[1] https://bcachefs.org/bcachefs-principles-of-operation.pdf

[2] https://www.patreon.com/bcachefs (de facto bcachefs blog)

[3] https://news.ycombinator.com/user?id=koverstreet

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by tecleandor on Tuesday May 23, 2023 @07:56AM (#36043040)
Oh, interesting! I still haven't played with bcachefs, so I didn't know you can do erasure coding replicas there. Although they says the implementation is still simple so it suffers from "write hole".
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by voxadam on Tuesday May 23, 2023 @08:12AM (#36043187)
> Although they says the implementation is still simple so it suffers from "write hole".

That's what I was hoping Kent would show up and expand on. His March 29 update[0] says that erasure coding "has seen a lot of progress" which makes me hopeful.

[0] https://www.patreon.com/posts/your-irregular-80720060

Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by gigatexal on Tuesday May 23, 2023 @03:20PM (#36049427)
I am very stoked for bcachefs to make it into the kernel.
Re:Benchmarking Intel, AMD and Graviton Using Erasure Coding... by voxadam on Tuesday May 23, 2023 @08:02AM (#36043096)
While not a traditional file system, Tahoe-LAFS[0] uses erasure coding in its decentralized cloud store.

[0] https://tahoe-lafs.org/trac/tahoe-lafs