Jeroen Louwrens writes about home NAS builds, ZFS and other file systems, Ceph storage, and small-scale self-hosted hardware.
His ZFS and ECC memory post is cited in debates about ECC. Commenters also question his site's power use and his crypto views.
> upload of say ~20MB it would throttle my download speed
This is not directly due to the technology involved, it is due to congestion on the upstream side slowing down IP control packets (ACKs and such) as they are queued with the rest. When you have a slow upstream pipe it is very easy to see this effect. It is even worse when there are multiple upstream connections trying to use as much as they can (as seen in torrent transfers and similar), and it affects interactive traffic like SSH connections significantly too.
You can work around this by shaping your upstream traffic to reserve a little bandwidth for small interactive/control packets. If your router runs Linux there are a number of simple scripts to setup the basics (wondershaper is one I've used successfully in the past) or you can be more specific to your needs by setting up your own config with the appropriate tools.
If you usually only use one PC then you can run the shaper there instead, of course, but running shaping on one individual machine on a crowded network will have no useful effect.
(see http://louwrentius.com/how-traffic-shaping-can-dramatically-improve-internet-responsiveness.html for an example of using wondershaper)
> I don't care about ECC https://blog.codinghorror.com/to-ecc-or-not-to-ecc/
And that's fine. Though as a counterpoint:
https://louwrentius.com/please-use-zfs-with-ecc-memory.html
> I had hardware raid 5 before and it failed, because I used similar hard drives ( 3 drives failed within a month, wasn't expecting that).
Which goes back to my point. You're comparing your home system, with something like one-9's uptime (90% availability over an entire year) with a cloud provider that is going to give you five-9's or better.
These are not the same things. And you are going to pay more for each additional 9 of uptime.
For your own stuff, yes, of course it can make perfect sense to host it yourself. I've got a personal server running on positively ancient hardware that still manages two-9's availability, and that's fine for my use case. But I wouldn't directly compare that to a cloud provider either.
>ECC is recommended but many people, myself included, have run many stable years without ECC.
zfs requires ECC[0][1], do not skimp on this.
I ran many zfs pools for >8 years without issues until silent memory corruption happened to me, and now I can't access my data anymore (zfs won't let me mount a zpool that fails scrub checks).
0: Oracle (and previously Sun) documentation recommends ECC to prevent silent corruption:
>Consider using ECC memory to protect against memory corruption. Silent memory corruption can potentially damage your data.
https://docs.oracle.com/cd/E23824_01/html/821-1448/zfspools-4.html
1: https://louwrentius.com/please-use-zfs-with-ecc-memory.html
I'm in Hungary and for the equivalent of $120 you can get an enterprise refurbished mini PC (Dell, HP, Lenovo) with a much better CPU (i3-8100T, i5-8500T, i3-10100T for example) and storage options here. I'm running Dell Optiplex Micros with triple SSDs (1x 2.5", 2x NVMe). And it's x86 so you can prety much run whatever OS you want without any problems. The power consumption is perfectly fine too. Mines usually idle around 4-5W.
Good article about the same topic https://louwrentius.com/the-raspberry-pi-5-is-no-match-for-a-tini-mini-micro-pc.html Even a 10 years old i5-6500 is outperforming the RPI5!
This is a myth started by someone who did not understand how filesystems work.
You are wrong. Don't spread potentially dangerous maladvice on the internet when you have no idea what you're talking about.
The official ZFS documentation[1] tells you to use ECC Ram and why. The first google hit for "zfs ecc ram"[2] further elaborates on the risks of using ZFS without ECC memory.
[1] https://pthree.org/2013/12/10/zfs-administration-appendix-c-why-you-should-use-ecc-ram/
[2] http://louwrentius.com/please-use-zfs-with-ecc-memory.html
Aside from the "needs many gigs of RAM, even without deduplication turned on" angle, the lack of ECC memory would prevent me from using ZFS on raspi.
Sooner or later you will trash your data unless you're using ECC memory (which the Raspberry Pi RAM chips are not): http://louwrentius.com/please-use-zfs-with-ecc-memory.html
For the record, I also think it's cool to get this compiled and running on RasPi; just wanted to add the ECC info for anyone now thinking of doing something with this in production :-D.