What filesystem is currently best for a single nvme drive with regard to performance read/write as well as stability/no file loss? ext4 seems very old, btrfs is used by RHEL, ZFS seems to be quite good… what do people tend to use nowadays? What is an arch users go-to filesystem?

  • exi@feddit.de
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    If you are planning to have any kind of database with regular random writes, stay away from btrfs. It’s roughly 4-5x slower than zfs and will slowly fragment itself to death.

    I’m migrating a server from btrfs to zfs right now for this very reason. I have multiple large MySQL and SQLite tables on it and they have accumulated >100k file fragments each and have become abysmally slow. There are lots of benchmarks out there that show that zfs does not have this issue and even when both filesystems are clean, database performance is significantly higher on zfs.

    If you don’t want a COW filesystem, then XFS on LVM raid for databases or ext4 on LVM for everything else is probably fine.

    • Laser@feddit.de
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      Did you disable CoW for your database with btrfs? E.g. for PostgreSQL, the Arch Wiki states:

      If the database resides on a Btrfs file system, you should consider disabling Copy-on-Write for the directory before creating any database.

      • exi@feddit.de
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        From arch wiki:

        Disabling CoW in Btrfs also disables checksums. Btrfs will not be able to detect corrupted nodatacow files. When combined with RAID 1, power outages or other sources of corruption can cause the data to become out of sync.

        No thanks

        • DaPorkchop_@lemmy.ml
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          that’s no different than any “normal” filesystem with a traditional block-level RAID solution

          • exi@feddit.de
            link
            fedilink
            arrow-up
            0
            ·
            1 year ago

            Not really. You can still use dm-verity for a normal raid and get checksumming and normal performance, which is better and faster than using btrfs.

            But in any case, I’d recommend just going with zfs because it has all the features and is plenty fast.

  • root@aussie.zone
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    Hi all. Apologies to hijack this thread. Figured it should be OK since it’s also on the topic of file systems.

    Long story short, I need to reinstall Nobara OS and I plan to install Nobara on my smaller SSD drive with btrfs and set my /home folder to my larger nvme. I’m thinking of using ext4 for my /home and have snapshots of the main system stored on the nvme. Looking for a sanity check to see if this is OK or if I should be doing things differently. Thanks.

      • root@aussie.zone
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        On the contrary, my intention is to make snapshots of the OS (btrfs) and my idea is to store the snapshots on the /home nvme drive (ext4).

        I don’t know if that’s the standard practice or if I’m over complicating things. My SSD is only 240Gb (I think) while my nvme is a 1Tb drive, thus the intention to store snapshots on the nvme. Maybe the 240Gb is sufficient for say a month’s worth of snapshots plus the OS?

        • Krik@feddit.de
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          It’s more important to backup your /home than /. /home is where you store your crucial files.

  • ZephyrXero@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I usually just use EXT4, but perhaps you should check out F2FS. It’s designed for solid state storage mediums, as while most were created with traditional spinning hard discs in mind

    • Krik@feddit.de
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      At the end of the day though after all of our storage tests conducted on Clear Linux, EXT4 came out to being just 2% faster than F2FS for this particular Intel Xeon Gold 5218 server paired with a Micron 9300 4TB NVMe solid-state drive source

      I’ll suggest XFS.

  • Dubious_Fart@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    ext4 being old, and still being the main file system most distros use by default, should be enough alone to tell you being old isnt bad.

    it means its battle tested, robust, stable, and safe. Otherwise it wouldnt be old and still be in widespread use.

    • Krik@feddit.de
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      Unfortunately it’s not future proof. Max filesystem size is only 16 TB.

  • joel_feila@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    oh I just read up on this last knight. Yes ext4 is old but it is used because it is still works quite well. btrfs, dis anyone say that as butfarts, can handle much larger partitions ext4 maxes out at a few tb while btfrs can get much larger. ZFS can handle a around a billion tb but it needs a lot more resources to to even start

    • Krik@feddit.de
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      1 year ago

      ext4 maxes out at a few tb

      Max filesystem size is 1 EiB = 1048576 TiB.

      More than enough!

  • odium@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    btrfs is great for system stability because of snapshots. You can set it up to automatically make snapshots at a timed interval or every time you run pacman.

    If something breaks, you can just revert to a previous snapshot. You can even do this from grub. It’s a bit hard to set up, so if you want, you could use an arch based distro which automatically sets it up like GarudaOS.

        • Nonononoki@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          I guess not much on desktop Linux, but every Android phone uses it. Really wish every Linux desktop would start encrypting their /home partition by default, which is the standard by many other operating systems.

            • Nonononoki@lemmy.world
              link
              fedilink
              arrow-up
              0
              ·
              1 year ago

              Got any source for that? Android has traditionally always used ext4 afaik, not sure if that changed in the last few years.

              • Krik@feddit.de
                link
                fedilink
                arrow-up
                0
                ·
                edit-2
                1 year ago

                Wiki says:

                Motorola Mobility has used F2FS in their Moto G/E/X and Droid phones since 2012. Google first used F2FS in their Nexus 9 in 2014. However Google’s other products didn’t adopt F2FS until the Pixel 3 when F2FS was updated with inline crypto hardware support.

                Huawei has used F2FS since the Huawei P9 in 2016. OnePlus has used F2FS in the OnePlus 3T. ZTE has used F2FS since the ZTE Axon 10 Pro in 2019.

                I assume since Google is involved that more and more Android phones will adopt F2FS in the future.

  • samsy@feddit.de
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    For what? Client on a laptop or PC? Why not f2fs? On a server just trust good ol ext4 with some flash drive settings.

      • samsy@feddit.de
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        My current setup is fedora for the last 6 months. I started a live session, installed f2fs and then run the installer with a combination of f2fs + encryption. And it runs flawlessly and faster than any setup before.