I keep reading everywhere that ZFS is the up-and-coming panacea of storage that will totally "change the game" and that we'll all switch to it and wonder how we ever lived without it.
Sounds nice, right?
So I'm thinking about doing some torture testing on ZFS to see how well it stands up to the kind of abuse I put on my storage.
The two most demanding things on my storage systems are my gentoo portage tree and my scheduled backups. Interestingly, they are about as exactly opposite as you could possibly get.
My backups are basically 7 or 8 jobs that collect large chunks of data files of all sizes (anywhere from 40G up to 300G total job size) and compress them into large archive files, storing them on a staging area on my QNAP. From there I bulk-copy the large archive files onto a portable NAS to take off-site.
My gentoo portage tree is totally different. This is the database of installable software available for a gentoo system. It is periodically synchronized from gentoo linux servers to most active running gentoo systems. In my mind it is a bloated nightmare that would be better housed in a database, but that's just me. It is basically about 200MB total size and that 200MB contains over 110,000 files that are so small they can take up to 1.2G of space on disk depending on how inefficient the filesystem is with small files. Every time I install a piece of software on a Gentoo system this portage tree gets scanned for settings and dependencies, which puts a big hit on the cache, and the CPU of the file server. Because the files are so small and so many of them are read, performance is way lower than you'd expect for the total amount of bytes of data read. When this tree of files is synchronized from the Gentoo project's distribution points, the usage is even higher, as rsync works through every folder and file.
I'm looking to start putting my backup staging and also a copy of my gentoo portage tree on ZFS on a NAS and then put them through regular use, to see how the system behaves. I'll post my experience with this.
Sounds nice, right?
So I'm thinking about doing some torture testing on ZFS to see how well it stands up to the kind of abuse I put on my storage.
The two most demanding things on my storage systems are my gentoo portage tree and my scheduled backups. Interestingly, they are about as exactly opposite as you could possibly get.
My backups are basically 7 or 8 jobs that collect large chunks of data files of all sizes (anywhere from 40G up to 300G total job size) and compress them into large archive files, storing them on a staging area on my QNAP. From there I bulk-copy the large archive files onto a portable NAS to take off-site.
My gentoo portage tree is totally different. This is the database of installable software available for a gentoo system. It is periodically synchronized from gentoo linux servers to most active running gentoo systems. In my mind it is a bloated nightmare that would be better housed in a database, but that's just me. It is basically about 200MB total size and that 200MB contains over 110,000 files that are so small they can take up to 1.2G of space on disk depending on how inefficient the filesystem is with small files. Every time I install a piece of software on a Gentoo system this portage tree gets scanned for settings and dependencies, which puts a big hit on the cache, and the CPU of the file server. Because the files are so small and so many of them are read, performance is way lower than you'd expect for the total amount of bytes of data read. When this tree of files is synchronized from the Gentoo project's distribution points, the usage is even higher, as rsync works through every folder and file.
I'm looking to start putting my backup staging and also a copy of my gentoo portage tree on ZFS on a NAS and then put them through regular use, to see how the system behaves. I'll post my experience with this.