4 ms·
Absolutely. It's also good for production. This feature saved my butt once when I upgraded a postgresql 8.3 server to 8.4 on a Sun 4500 not realizing that the
by savedmybutt 10y ago
Absolutely. It's also good for production. This feature saved my butt once when I upgraded a postgresql 8.3 server to 8.4 on a Sun 4500 not realizing that the new server was compiled with a different timestamp format then the old one was (8 byte integers vs double precision floats). Thanks to ZFS I was able to trivially roll back the update.
- tkinom 10y agoThat's what docker would help you do too, right? What's the pro/con of zfs compare to docker?
- 0xCMP 10y agoZFS is what the filesystem your volume would be using. You should not store ("commit" really) the database data in a Docker image.
- zenlikethat 10y agoUsually data / persistence layer is not stored in Docker images directly. Frequently the data directory is marked in containers as a "volume" to bypass the usual CoW filesystem and write directly to the backing filesystem. So, it's uncommon to snapshot DBs directly in Docker and likely (this is pure speculation) 'zfs snapshot' is more efficient than 'docker commit' (on disk space usage and/or speed of snapshot) for this workload due to different use cases. I'd be really curious to see some actual numbers on this though.
- j_s 10y agoJust to clarify if I'm understanding correctly here: the data itself is often outside Docker for performance and other reasons, but the DB software itself (PostgreSQL / MySQL / whatever) can still easily be within Docker.
- zenlikethat 10y agoSounds pretty correct, only nitpick is that the data is not "outside of Docker", but rather outside of the Docker image.
- ryao 10y agoYou can use docker on top of ZFS. My employer has something called flocker that can use it: https://clusterhq.com/flocker/introduction/ https://clusterhq.com/flocker/introduction/ The ZFS version is not yet considered a production release due to delays in stabilizing the /dev/zfs API though.