InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Zfs Alternatives
Similar projects and alternatives to zfs
-
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
Moby
The Moby Project - a collaborative project for the container ecosystem to assemble container-based systems
-
-
freebsd-src
The FreeBSD src tree publish-only repository. Experimenting with 'simple' pull requests....
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
sanoid
These are policy-driven snapshot management and replication tools which use OpenZFS for underlying next-gen storage. (Btrfs support plans are shelved unless and until btrfs becomes reliable.)
-
httm
Interactive, file-level Time Machine-like tool for ZFS/btrfs/nilfs2 (and even Time Machine and Restic backups!)
-
GrapesJS
Free and Open source Web Builder Framework. Next generation tool for building templates without coding
-
-
-
-
promptfoo
Test your prompts, agents, and RAGs. Red teaming, pentesting, and vulnerability scanning for LLMs. Compare performance of GPT, Claude, Gemini, Llama, and more. Simple declarative configs with command line and CI/CD integration.
-
-
-
aero
Aero is a new modern, experimental, UNIX-like operating system following the monolithic kernel design. Supporting modern PC features such as long mode, 5-level paging, and SMP (multicore), to name a few.
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
zfs discussion
zfs reviews and mentions
-
The world could run on older hardware if software optimization was a priority
My personal recommendation is to use secure string functions unless you can prove that you will never overrun the buffer, like what was done here:
https://github.com/openzfs/zfs/blob/master/etc/systemd/syste...
In particular, strcmp() implicitly is safe because one of the arguments is a constant string (and the buffer can be assumed to be at least as long as the constant string), while strcat() is safe because it is appending constant strings, such that the longest string that it can produce is known to always be smaller than the buffer length.
-
Migrating Away from Rust
Nice catch. I had goofed by omitting optimization when checking this.
That said, this brings me to my original reason for checking this, which is to say that it did not use a cmov instruction to eliminate unnecessary branching from the loop, so it is probably slower than a binary search that does:
https://en.algorithmica.org/hpc/data-structures/binary-searc...
That had been the entire motivation behind this commit to OpenZFS:
https://github.com/openzfs/zfs/commit/677c6f8457943fe5b56d7a...
It should be possible to adapt this to benchmark both the inlined bsearch() against an implementation designed to encourage the compiler to emit a conditional move to skip a branch to see which is faster:
https://github.com/scandum/binary_search
My guess is the cmov version will win.
-
Unpowered SSD endurance investigation finds data loss and performance issues
For long term storage, prefer hard drives (careful about CMR vs SMR)
If you have specific random IO high performance needs, you can either
- get a SLC drive like https://news.solidigm.com/en-WW/230095-introducing-the-solid...
- make one yourself by hacking the firmware: https://news.ycombinator.com/item?id=40405578
Be careful when you use something "exotic", and do not trust drives that are too recent to be fully tested: I learned my lesson for M2 2230 drives https://www.reddit.com/r/zfs/comments/17pztue/warning_you_ma... which seems validated by the large numbers of similar experiences like https://github.com/openzfs/zfs/discussions/14793
-
Show HN: I built an AI that turns GitHub codebases into easy tutorials
I am #4 here:
https://github.com/openzfs/zfs/graphs/contributors
I would have preferred to see what the LLM would generate without assistance, rather than make a wish list, but since you asked:
* Explanations of how each sub-component is organized and works would be useful.
- Unix files have (at least) two sizes
- Rust to C compiler – 95.9% test pass rate, odd platforms
-
Ask HN: Who is hiring? (February 2025)
We develop new features, investigate/fix bugs, and support the community of these important open source infrastructure projects. Some of our recent work includes major ZFS features such as Linux Containers support (OpenZFS 2.2: https://github.com/openzfs/zfs/pull/12263), and Fast Deduplication (OpenZFS 2.3: https://github.com/openzfs/zfs/discussions/15896).
We successfully hired from HN in the last round and are looking for more OpenZFS Developers (3+ years of experience) to join our team!
- Strong skills with Kernel C programming and data structures
-
Working with Files Is Hard
There are actually several distinct issues being reported there. I replied responding to everyone who posted backtraces and a few who did not:
https://github.com/openzfs/zfs/issues/9130#issuecomment-2614...
That said, there are many others who stress ZFS on a regular basis and ZFS handles the stress fine. I do not doubt that there are bugs in the code, but I feel like there are other things at play in that report. Messages saying that the txg_sync thread has hung for 120 seconds typically indicates that disk IO is running slowly due to reasons external to ZFS (and sometimes, reasons internal to ZFS, such as data deduplication).
I will try to help everyone in that issue. Thanks for bringing that to my attention. I have been less active over the past few years, so I was not aware of that mega issue.
-
GitHub Linux ARM64 hosted runners now available for free in public repositories
This is excellent news, as it should unblock having precompiled packages available for a number of applications for arm64—for me, most notably, OpenZFS: https://github.com/openzfs/zfs/issues/14511
-
ZFS 2.3.0 released with ZFS raidz expansion
Heavy synchronous IO from incredibly frequent fsync is a weak point. You can make it better using SLOG devices. I realize what I am about to say is not what you want to hear, but any application doing excessive fsync operations is probably doing things wrong, and this is a view that you will find prevalent among all filesystem developers (e.g. the ext4 and XFS guys will have this view too).
In the case of APT, it should install all of the files and then call sync() once. This is equivalent of calling fsync on every file like APT currently does, but aggregates it for efficiency. The reason APT does not use sync() is probably a portability thing, because the standard does not require sync() to be blocking, but on Linux it is:
https://www.man7.org/linux/man-pages/man2/sync.2.html
That said, slow fsync performance generally is not an issue for desktop workloads because they rarely ever use fsync. APT is the main exception. You are the first to complain about APT performance in years as far as I know (there were fixes to improve APT performance 10 years ago, when its performance was truly horrendous).
You can file bug reports against ZFS here:
https://github.com/openzfs/zfs
I suggest filing a bug report against APT. There is no reason for it to be doing fsync calls on every file it installs in the filesystem. It is inefficient.
-
A note from our sponsor - InfluxDB
www.influxdata.com | 15 May 2025
Stats
openzfs/zfs is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.
The primary programming language of zfs is C.