10 ms·
You know, these articles always come up in the context of fileservers but... ... for me using ZFS has changed the way I look at files, filesystems, data, and b
by earthscienceman 6y ago
You know, these articles always come up in the context of fileservers but...
... for me using ZFS has changed the way I look at files, filesystems, data, and backups for general computing. I've been a linux user for 13 years but never felt the need to have a fileserver. Now being able to plug a drive in and take a snapshot without rsyncing or thinking about what I'm snapshotting, having it be inherent to the filesystem, was a game changer.
Not to mention being able to snapshot important folders to the native drive in case I need to recover a file from a previous state. I run datasets for categories of data and I can choose categories that I want regular local snapshots of (zvol/crypt/Documents, zvol/crypt/scripts, zvol/crypt/Papers)
Essentially, ZFS manages my files for me. And it all comes with things I didn't know I needed, like filesystem compression. I know BTRFS also attempts to provide this, and there's the licensing issues with ZFS, but I wanted MacOS compatibility also. Although that was an adventure on its own.
- matheusmoreira 6y ago> Essentially, ZFS manages my files for me. Yes! Managing our files is the whole point of file systems! It's amazing how bad at it most of them are. Linux is still catching up with btrfs... It's extremely aggravating how most file systems can't create a pool of storage out of many drives. We end up having to manually keep track of which drives have which sets of files, something that the file system itself should be doing. Expanding storage capacity quickly results in a mess of many drives with many file systems... Unlike traditional RAID and ZFS, btrfs allows adding arbitrary drives of any make, model and capacity to the pool and it's awesome... But there's still no proper RAID 5/6 style parity support.
- earthscienceman 6y agoIt really is incredible. ZFS datasets are essentially data collections, and I can categorize my files according to how I want them managed. It's essentially what iOS dreams of but in a much more manageable, configurable, and open way.
- sly010 6y agoOne beef: Moving files between datasets are an unnecessarily expensive operation.
- seized 6y agoMainly because the dataset is the ZFS version of a partition. In one pool, each dataset can have its own record size, compression settings (on/off or different levels, even different algorithms), be encrypted, have deduplication turned on... Its impossible for it to not be an "expensive operation".
- cm2187 6y agoAnd the windows equivalent is Windows Storage Space which sucks hard for parity volumes (max write speed 60MB/s whereas the same set of drives in any other software RAID writes close to 1GB/s). I would have thought this was a long solved problem. Kind of like chat applications.
- TillE 6y agoIt doesn't help that Microsoft has completely abandoned ReFS. Maybe there were good technical reasons why it was a dead-end, I dunno, but it's really no fun being stuck with NTFS.
- bityard 6y ago> It's extremely aggravating how most file systems can't create a pool of storage out of many drives. Some would argue that is the job of the volume manager, not the filesystem. On Linux it's LVM2, FreeBSD has vinum, for example.
- matheusmoreira 6y agoI would argue that a volume manager is just one of many parts of a good file system. Managing physical devices at the file system level has advantages: the file system can balance its data automatically in the background. Linux LVM can't do that.
- geerlingguy 6y agoI think this gets into the more philosophical part of the debate like with systemd, where it seems like it could be argued that the separation is better—or not—depending on your needs. And for my own needs, I typically favor the security of not throwing too much complexity on top of my storage system (if it would be impossible for me to recover something without relying on a ton of magic I can't fully understand, I'd rather not use it in production).
- throw0101a 6y ago> Some would argue that is the job of the volume manager, not the filesystem. ZFS is both at the same time. That is why there is the zpool command and the zfs command. While tight-coupling is sometimes bad, in this instance it is useful: * https://web.archive.org/web/20070508214221/http://blogs.sun.com/bonwick/entry/rampant_layering_violation https://web.archive.org/web/20070508214221/http://blogs.sun....
- AsyncAwait 6y ago> Linux is still catching up with btrfs... ZFS is available on Linux if you want it, in fact FreeBSD is basing its support for ZFS on it. For a mainline option, am personally holding out hope for bcachefs, rather than btrfs.
- RMPR 6y agoIt seems like btrfs will gain a lot of traction, considering that Facebook invest a lot in it and it's the default FS in Fedora now.
- AsyncAwait 6y agoMaybe. But I wonder if btrfs has been tainted as 'too unreliable' at this point, whether true or not.
- throw0101a 6y agoI first heard about Btrfs over ten years ago: what's taking it so long to 'gain traction'?
- IgorPartola 6y agoMy guess is bugs. Early on they had some serious bugs that lost people data. So the project gained this reputation of not being production-ready which meant that only people interested in playing with a new filesystem were using it. And btrfs has always been brought up alongside zfs which has been stable and mature for decades. As far as I can tell the only advantage btrfs has over zfs is the license. Outside of that, what does it offer that zfs does not? (That’s a serious question, I haven’t kept up with it because I’m a happy zfs user.)
- Lex-2008 6y ago> what does btrfs offer that zfs does not? As @matheusmoreira mentioned - you can use harddisks of unequal size. I.e. three disks of 4+3+3 Tb in RAID1 will happily give you 5 Tb of usable space. AFAIK, no other filesystem can do that. Quoting @matheusmoreira further: > I can slowly buy drives of different capacities and add them to the file system one by one. I don't have to plan ahead of time like traditional RAID and ZFS setups. This is excellent for home data storage!
- technofiend 6y agoFolks at vmware will probably disagree but I'd love to see zfs natively supported in ESX. That gets me away from hardware raid controllers for my boot disks and lets me manage datastores across jbod.
- stiray 6y agoThere is one huge issue with ZFS, the distributions and various crappy software will catch up the ease of use and abuse it to the maximum. I have already seen what huge pile of noise Ubuntu makes, not to mention creating snapshot for any update and how docker looks when you enable it on ZFS (forget about `zfs list` without `| grep` or `| more`). I can hardly wait for electron to start creating snapshots on each run, ... ZFS is great. What todays developers will make out of it... is worrysome.
- godelski 6y agoCan't you just solve this by not snapshotting everything? I only snapshot user folders (which I size limit), user program folders (where users write code), and long term data storage (will not snapshot user generated data). You really should control what is being snapshotted and what isn't.
- jjoonathan 6y agoUgh, I hadn't thought about that, but you're absolutely right. If ubuntu can turn something as straightforward as mount tables into a complete dog's breakfast I tremble to imagine what they'll do with ZFS. > electron snapshots on each run ...on a raspberry pi, for maximum trendiness, deployed in a check out aisle where you have to wait for it to painfully work through its issues after every interaction. Kill me now.
- intricatedetail 6y agoDoes it support encryption that has no known backdoors?
- centimeter 6y agoZFS on Linux supports encryption. Very few symmetric algorithms are known to be backdoored - the AES implementation available to ZoL is thought to be fine.
- cstork12 6y agoCan you address the MacOS compatibility a more? What's your setup?