About ZFS Performance
percona.com
percona.com
I've run ZFS for a decade or more. With little or no tuning. If I dial my expectations back, it works great, much better than ext4 for my use case. But once I start trying to use deduplication, I need to spend thousands of dollars on RAM, or the filesystem buckles under the weight of deduplication.
My use case is storing backups of other systems, with rolling history. I tried the "hardlink trick" with ext4, the space consumption was out of control, because small changes to large files (log files, ZODB) caused duplication of the whole file. And managing the hard links took amazing amounts of time and disk I/O.
ZFS solved that problem for me. Just wish I could do deduplication without having to have 64GB of RAM. But, I take what I can get.
Is it unreasonable to spend thousands of dollars on memory for Enterprise-grade, production-level servers? In my experience, you'd almost certainly better be using over a hundred GB of RAM in a server if you want to maximize the overall compute density.
To be clear, plenty of Desktops and all workstation-class laptops support 64GB+ of RAM.
For various reasons, the backup server doesn't get much priority.
But that still won't deduplicate renamed files if you're using something like rsync w/--link-dest for the backups.
The basic feature set for deduplication in my book is non-block-aligned chunking with compression. NTFS has had transparent post-process dedup since 2012 and is pretty much ideal for file, VM, and backup servers. It just works in the background with little performance impact but huge space savings.
It feels dirty using Windows servers as NAS for our Linux machines, but that’s what we’re doing today.
The point still stands, ZFS is fast enough 99.99% of the time (when tuned correctly), and simplifies a lot of administrative tasks.
Is it? How about the recent bug in Linux 4.14 that could lead to data loss with bcache (fixed in 4.14.2)? On the other hand ZFS for Linux also had a regression recently.
Comparable to the L2ARC would be adding the NVMe as swap and then increasing the mysql buffer cache to 400GB or something (don't know if that would work without issues, though). With zswap that would even have compression.
Don‘t get me wrong. ZFS is an incredible masterpiece, but there are almost no realistic benchmarks. They are in favor of zfs like the benchmark from percona or in favor if other system when l2arc/zil is not used.
Throwing expensive hardware at it to make it perform better than XFS is... an interesting “benchmarking” methodology.
> Of course, I could use flashcache or bcache with XFS and improve the XFS results but these technologies are way more exotic than the ZFS L2ARC.
The title is "About ZFS performance," not "An in depth comparison of ZFS and XFS."
I'll be interested to read the future work on using larger page sizes. Conventional wisdom would hold that it was a bad idea (at least, for a write-heavy workload) because of the write-amplification that it produces, but it sets me wondering to what extent ZIL-offloading could mitigate that. Then again, there's really no point in putting the ZIL on ephemeral storage.
https://arstechnica.com/information-technology/2015/12/rsync...
At the very least, throw in that mention of the HN discount.
I'm disappointed they didn't show that comparison. How much does the original result change in case of fragmented db files?
After dropping btrfs support some time ago they started developing their own next-gen file system based on LVM and XFS. It is now available for technology preview on Fedora 28.
Not very impressive.
I expect that XFS with bcache would need much less tuning up front though. Adding bcache in front of the original configuration should give a similar improvement to l2arc.
# zfs set compression=lz4 mysqldatavol
Percona was best at consulting; their DBA's were worth it. The software maybe close to irrelevant now but not their DBA's.
How many drives are these guys using, how does it scale compared to theoretical performance.