[HN Gopher] The SGI XFS Filesystem
       ___________________________________________________________________
        
       The SGI XFS Filesystem
        
       Author : ecliptik
       Score  : 26 points
       Date   : 2023-05-12 20:21 UTC (2 hours ago)
        
 (HTM) web link (blog.koehntopp.info)
 (TXT) w3m dump (blog.koehntopp.info)
        
       | wazoox wrote:
       | XFS is incredibly robust. I manage many petabytes of XFS
       | machines. Some have XFS volumes in the 2 PiB range. And it's also
       | extremely fast. And I remember when I created my first folder
       | with several billion files and it just worked :)
        
         | MichaelZuo wrote:
         | How does it compare to ReFS or other more recent systems?, if
         | you've ever looked into it.
        
       | jeffbee wrote:
       | One thing I have long been suspicious of, but never swept out the
       | parameter space to know for sure, is how one should set sunit,
       | swidth, agcount or agsize to exploit the parallelism of an SSD
       | and modern CPU. Used to be that sunit, swidth, and agsize were
       | critical for RAIDs because getting them wrong would mean weird
       | stripe misalignment, and if you did not set agsize all of your
       | metadata load would be on a subset of the array. These days an
       | SSD has way more natural parallelism than any RAID ever had, and
       | we have more CPU cores than ever. Are we supposed to be setting
       | sunit, swidth, and agsize? Or does the flash translation mean it
       | doesn't matter? And how best to mkfs.xfs when your SSD offers LBA
       | sizes other than 512?
        
       | miohtama wrote:
       | Does XFS offer benefits or tradeoffs of ZFS/ext4/others today?
       | 
       | I have been using it with Linux since early 2000. But I am not
       | sure how the file-system development has been lately e.g. with
       | the SSD revolution.
        
         | DiabloD3 wrote:
         | I think you meant ZFS, not zsh.
         | 
         | I use both XFS and ZFS. XFS in any situation where it is a
         | single drive (ie, my laptop), ZFS in any situation where I'm
         | doing actual fault tolerant high performance storage stuff.
         | 
         | I don't see where ext family really matters in modern storage.
         | If I decide to not use XFS anymore, there are flash-dedicated
         | filesystems that will beat ext in performance and reliability
         | on SSDs that better fit the future.
        
           | miohtama wrote:
           | Fixed, thank you!
        
           | XorNot wrote:
           | ZFS is actually ideal for single drives because even if you
           | can't do recovery, knowing a file has corrupted is extremely
           | valuable.
        
         | theodric wrote:
         | I'm too lazy to summarize this beyond saying both ext4 and XFS
         | have their advantages and disadvantages, and both are still
         | under active development. ZFS is a funny and problematic one
         | that does lots of cool tricks but isn't properly free and
         | gobbles resources.
         | 
         | Check this: https://linuxhint.com/xfs-vs-ext4-brief-comparison/
        
           | arp242 wrote:
           | ZFS (or rather, OpenZFS) is absolutely Free Software and Open
           | Source under any definition. Richard Stallman will tell you
           | the same thing.
           | 
           | It just has an unfortunate license that's not GPL-compatible
           | and this causes problems with GPL kernels (e.g. Linux), which
           | is a _very_ different thing than  "not being properly free".
        
           | yjftsjthsd-h wrote:
           | ZFS is absolutely Free Software, it's just that its license
           | isn't GPLv2 compatible. (Bearing in mind that by the same
           | stroke, GPLv3 isn't GPLv2 compatible.)
        
         | chasil wrote:
         | If you look at database benchmarks on TPC.org, you will find
         | that many of them are on XFS (as a consequence of using
         | RHEL/CentOS), which was designed with database performance in
         | mind.
         | 
         | It used to be necessary for Oracle to use raw partitions to get
         | the very best database performance. I haven't heard of anyone
         | doing that for many years.
         | 
         | "The default implementation in most kernels is simply a file-
         | global lock placed at the in-memory inode, making sure there
         | can be only one writer per inode. Implementers of databases
         | hate that because it limits the write concurrency on any single
         | file to One. This is, for example, why Oracle recommends that
         | you make tablespaces from multiple files, each no larger than
         | one GB.
         | 
         | "XFS, in O_DIRECT mode, removes this lock and allows atomic,
         | concurrent writes, making database people very happy."
         | 
         | Developers at Oracle have posted a number of blog posts on
         | their code changes for Linux XFS.
         | 
         | https://blogs.oracle.com/linux/post/introduction-to-xfs-tran...
         | 
         | https://blogs.oracle.com/linux/post/xfs-online-filesystem-ch...
         | 
         | https://blogs.oracle.com/linux/post/xfs-2019-development-ret...
         | 
         | https://blogs.oracle.com/linux/post/xfs-whats-new-and-whats-...
         | 
         | There can be a strong bias against Oracle at HN (and I
         | understand why) but credit must be given where it's due.
        
           | miohtama wrote:
           | ZFS is also from Oracle, right? Seems like a dominating force
           | in the FS industry if one can call it a such.
        
             | chasil wrote:
             | Btrfs is the filesystem for which they are most
             | responsible.
             | 
             | They explicitly do not support its use for their database.
             | 
             | "[Btrfs] was initially designed at Oracle Corporation in
             | 2007 for use in Linux, and since November 2013, the file
             | system's on-disk format has been declared stable in the
             | Linux kernel."
             | 
             | https://en.m.wikipedia.org/wiki/Btrfs
             | 
             | They own the rights to ZFS by way of their purchase of Sun
             | Microsystems.
             | 
             | Oracle is a power player in the realm of Linux filesystems,
             | no doubt.
        
             | arp242 wrote:
             | Linux uses OpenZFS, which is a fork of OpenSolaris' ZFS;
             | they haven't shared any code since 2010 AFAIK.
        
             | ilc wrote:
             | ZFS is Sun.
             | 
             | BTTFS is Oracle.
             | 
             | And neither have anything to do with a database, IMHO.
        
             | whiskeytuesday wrote:
             | I mean, in that it came out of Sun, kind of I guess.
        
       | DiabloD3 wrote:
       | I'm a fan of XFS. I've used it for over a decade for all systems
       | that don't need ZFS.
       | 
       | In fact, due to the lifespan of the headless box under my desk
       | (ie, predates bootable ZFS root partitions under Linux), its root
       | partition is still XFS, while the actual real storage is ZFS
       | managed
        
         | liendolucas wrote:
         | I think the main issue with ZFS is that you need to learn a lot
         | of concepts to actually understand how to do things correctly
         | and don't fuck up.
         | 
         | To this day I've written some personal notes as warning
         | reminders to be careful about certain operations. I can't
         | remember the exact terminology (I believe these are called
         | "attributes" or "features" in ZFS), but what happened to me not
         | long ago was that if I created a ZFS filesystem (along with a
         | pool) from Ubuntu it was creating some of these features that
         | ZFS on FreeBSD didn't properly recognize and didn't allowed me
         | to successfully mount it.
         | 
         | The other way round creating it from FreeBSD and then mounting
         | it on Ubuntu worked as expected. The thing with these
         | "features" is that they can be "promoted" or "upgraded" and in
         | this case if you do so will again render the ZFS unavailable to
         | be mounted in FreeBSD. I spent a whole day on this until for
         | some reason I decided to print this list and effectively
         | compare and do some online search about it.
        
           | mustache_kimono wrote:
           | > if I created a ZFS filesystem (along with a pool) from
           | Ubuntu it was creating some of these features that ZFS on
           | FreeBSD didn't properly recognize and didn't allowed me to
           | successfully mount it.
           | 
           | I mean... _shrugs_ ...you could format it as XFS and not be
           | able to mount on FreeBSD either? Seems like feature flags is
           | a good way to solve this problem.
        
             | liendolucas wrote:
             | I was actually going to ask that... Is XFS a good
             | "portable" filesystem across GNU/Linux and different BSD
             | flavors? Native support or through FUSE? The use case are
             | USB drives. I don't mind losing visibility on Windows or
             | MacOS, just to work flawlessly between these without major
             | efforts.
             | 
             | Edit: Added some comments.
        
               | mustache_kimono wrote:
               | ZFS is really one of the only games in town AFAIK for
               | serious filesystems. UFS might also work? Of course there
               | is always exFAT, etc.
        
               | liendolucas wrote:
               | I could be wrong but I didn't go with UFS because
               | apparently there are significant implementation
               | differences among BSDs. I was kind of surprised to
               | discover that.
        
       | bombcar wrote:
       | XFS was the first time I felt i had a "real" file system on
       | Linux, ext2 being long in the fsck and reiserfs doing strange
       | things with tail packing.
        
         | blipvert wrote:
         | 25+ years using XFS (IRIX user). Never a single problem
         | (hardware failures aside).
         | 
         | My go-to filesystem.
        
       ___________________________________________________________________
       (page generated 2023-05-12 23:00 UTC)