Btrfs Working On RAID1 Round-Robin Read Balancing

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • pWe00Iri3e7Z9lHOX2Qx
    Senior Member
    • Jul 2020
    • 1596

    #21
    Originally posted by Britoid View Post

    With BTRFS unless you care about bonus performance, using raid 1 with 4 drives will give you the same disk space as raid 10 and higher chance of not loosing data if two drives fail.
    In my case I do care about the extra performance. I also don't want to have to disable COW for VMs. And being able to adjust the recordsize for your workload in ZFS is the bee's knees.

    Comment

    • waxhead
      Premium For Life
      • Jul 2014
      • 1153

      #22
      Originally posted by cynic View Post
      RAID is not intended for avoiding losing data. The tool for that purpouse is backup.

      .....

      With a classic raid 1 you have double the chance of data corruption compared to a single device.
      This is precisely spot on why I feel it is very wrong to use the RAID terminology in BTRFS. So many believe that just because classical RAID provide device redundancy it also provide data redundancy. While true to some degree, RAID was never about that at all.

      (Meta)data-Instances or -specimens = 2 would be a better word at describing RAID1 or RAID10 in BTRFS.

      And RAID5 would be instances=1 and parities=1 , RAID6 instances=1, parities=2

      Such a change would hopefully had people understand that BTRFS' "RAID" is not RAID!!!

      ​​​

      http://www.dirtcellar.net

      Comment

      • pWe00Iri3e7Z9lHOX2Qx
        Senior Member
        • Jul 2020
        • 1596

        #23
        Originally posted by cynic View Post

        RAID is not intended for avoiding losing data. The tool for that purpouse is backup.
        No shit. I have backups and replicate off-site.​

        Originally posted by cynic View Post
        Anyway btrfs is much better than "classical" RAID when it comes to preventing losing data.

        In a normal RAID1 (or 10), If one of the copies of the data gets corrupted, the data is lost​ (because you cannot tell which copy is the the good one).
        In btrfs, being it checksummed, you can detect and fix the corrupted copy.

        With a classic raid 1 you have double the chance of data corruption compared to a single device.
        You realize there are options where "RAID" means what you think it means in terms of resiliency and has checksumming right? E.g. ZFS.​

        Comment

        • gotar
          Senior Member
          • Dec 2021
          • 251

          #24
          Originally posted by cynic View Post
          RAID is not intended for avoiding losing data. The tool for that purpouse is backup.

          This is just a school-exam mantra. How do you "backup" data fsynced right now from ACID-compliant RDBMS?

          Anyway btrfs is much better than "classical" RAID when it comes to preventing losing data.

          In a normal RAID1 (or 10), If one of the copies of the data gets corrupted, the data is lost​ (because you cannot tell which copy is the the good one).

          Of course I can. T10 Data Integrity Field​ ("fat" sectors), dm-integrity, crypto-authenticated data.

          ​In btrfs, being it checksummed, you can detect and fix the corrupted copy.

          Unless you set chattr +C or used nodatacow to have more performance than 10 year old USB drive.

          Comment

          • EphemeralEft
            Senior Member
            • Dec 2022
            • 351

            #25
            Originally posted by cynic View Post

            if you have 4 drives in btrfs you can configure them in raid10 or raid1.
            Since the redundacy level is always 2 copies, you get the same space.
            Unless what BTRFS calls “RAID1” is not really RAID1, that’s not correct; RAID1 only has as much usable capacity as the the size of its smallest member because every member in the RAID stores the same content.

            Comment

            • curfew
              Senior Member
              • Aug 2010
              • 640

              #26
              Originally posted by microcode View Post

              Rarely matters. They call it raid1 in the config for familiarity but it really is just mirroring. It is also a more complex thing on btrfs than on block device RAID (where the block addresses are the same for everything).
              Either it is impossible because the codebase is shit, or it's just code waiting to be written. "It is complicated" is not an excuse for programmers.

              Comment

              • ElectricPrism
                Senior Member
                • Apr 2013
                • 1271

                #27
                Since we're talking about what cooks everyone's noodle -- what cooks my noodle is that I had to do a double take reading that RAID1 Mirroring is "striped", I understand the usage is figuratively to indicate a "block" -- but in the other RAID topologies the data is quite literally striped -- in RAID 1 -- maybe I am mistaken but it quite literally is not AFAIK.

                Edit: As it's been pointed out earlier, even though some of us use RAID1 to mitigate potential mechanical drive failures, it's not a backup in the same way that Snapshots are not a backup. Offsite backup with snapshotting, and cold storage are important to incorporate into data safeguarding.
                Last edited by ElectricPrism; 16 December 2024, 04:58 AM.

                Comment

                • irusensei
                  Junior Member
                  • Aug 2024
                  • 8

                  #28
                  I’ve recently noticed this while doing a full backup of a multi TB mirrored btrfs volume. The drives are in an external enclosure with one activity led for each drive. Only 1 out of 2 leds were blinking as I read the data.

                  Comment

                  • mbod
                    Phoronix Member
                    • Aug 2020
                    • 63

                    #29
                    Originally posted by cynic View Post

                    RAID is not intended for avoiding losing data. The tool for that purpouse is backup.
                    Anyway btrfs is much better than "classical" RAID when it comes to preventing losing data.

                    In a normal RAID1 (or 10), If one of the copies of the data gets corrupted, the data is lost​ (because you cannot tell which copy is the the good one).
                    In btrfs, being it checksummed, you can detect and fix the corrupted copy.

                    With a classic raid 1 you have double the chance of data corruption compared to a single device.
                    You are mixing two things here. Redundancy on device level and redundancy on file level.

                    RAID1 is redundancy on device level. And that works also for mdadm or any other RAID1 implementation.

                    Redundancy on file level can only work if checksums are available. And that works well with ZFS also.



                    Comment

                    • mbod
                      Phoronix Member
                      • Aug 2020
                      • 63

                      #30
                      Originally posted by EphemeralEft View Post

                      Unless what BTRFS calls “RAID1” is not really RAID1, that’s not correct; RAID1 only has as much usable capacity as the the size of its smallest member because every member in the RAID stores the same content.
                      That is exactly the difference between btrfs and any other RAID1 solution. It is very confusing that btrfs calls is RAID1.

                      btrfs RAID1 is this: It takes any number of disks with any size and it ensures that a data block has 2 copies residing on 2 different drives. Thats it. This is not what mdadm or ZFS call RAID1.

                      Comment

                      Working...
                      X