Remix.run Logo
evanjrowley 3 hours ago

I would have chosen the i3-n305 version of that motherboard because it has In-Band ECC (IBECC) support - great for ZFS. IBECC is very underrated feature that doesn't get talked about enough. It may be available for the N150/N355, but I have never seen a confirmation.

zenoprax 3 hours ago | parent | next [-]

Can you explain why ECC is great for ZFS in particular as opposed to any other filesystem? And if the data leaves the NAS to be modified by a regular desktop computer then you lose the ECC assurance anyway, don't you?

supermatt 2 hours ago | parent | next [-]

ZFS is about end-to-end integrity, not just redundancy. It stores checksums of data when writing, checks them when reading, and can perform automatic restores from mirror members if mismatches occur. During writes, ZFS generates checksums from blocks in RAM. If a bit flips in memory before the block is written, ZFS will store a checksum matching the corrupted data, breaking the integrity guarantee. That’s why ECC RAM is particularly important for ZFS - without it you risk undermining the filesystem’s end-to-end integrity. Other filesystems usually lack such guarantees.

adastra22 3 hours ago | parent | prev [-]

The oversimplified answer is that ZFS’ in-memory structures are not designed to minimize bitflip risk, as some file systems are. Content is hashed when written to memory cache, but it can be a long time before it then gets to disk. Very little validation is done at that point to protect against writing bad data.

Alive-in-2025 3 hours ago | parent | prev [-]

what is the impact on performance, does it require special ram? just heard about this here

gforce_de 3 hours ago | parent [-]

sorry for the german comment - ECC is mandatory!

Obligatorische Pastete: "16GB Ram sind Flischt, ohne wenn und aber. ECC ist nicht Flischt aber ZFS ist dafür ausgelegt. Wenn in Strandnähe Daten gelesen werden und es kommt irgendwie was in den Arbeitsspeicher, könnte eine eigentlich intakte Datei auf der Festplatte mit einem Fehler "korrigiert" werden. Also ECC ja. Das Problem bei ECC ist nicht der ECC-Speicher an sich, der nur wenig mehr als konventioneller Speicher kostet, es sind die Mutterbretter, die ECC unterstützen. Aufpassen bei AMD: Oft steht dabei, dass ECC unterstützt wird. Gemeint ist aber, dass ECC-Speicher läuft, aber die ECC-Funktion nicht genutzt wird. LOL. Die meisten MBs mit ECC sind Serverboards. Wer nichts gegen gebrauchte Hardware hat, kann z.B. mit einem alten Sockel 1155-Xeon mit Asus-Brett ein Schnäppchen machen. Ansonsten ist die Asrock Rack-Reihe zu empfehlen. Teuer, aber stromsparend. Generell Nachteil bei Serverboards: Die Bootzeit dauert eine Ewigkeit. Von Consumerboards wird man mit kurzen Bootzeiten verwöhnt, Server brauchen da oft mal 2 Minuten, bis der eigentliche Bootvorgang beginnt. Bernds Server besteht also aus einem alten Xeon, einem Asus Brett, 16GB 1333Mhz ECC-Ram und 6x 2TB-Platten in einem RaidZ2 (Raid6).6TB sind Netto nutzbar. Ich mag alte Hardware irgendwie. Ich reize Hardware gerne bis zum Gehtnichtmehr aus. Die Platten sind auch schon 5 Jahre alt, machen aber keine Mucken. Geschwindigkeit ist super, 80-100MB/s über Samba und FTP. Ich lasse den Server übrigens nicht laufen, sondern schalte ihn aus, wenn ich ihn nicht brauche. Was noch? Komression ist super. Obwohl ich haupsächlich nicht weiter komprimierbare Daten speichere (Musik, Videos), hat mir die interne Kompression 1% Speicherplatz beschert. Bei 4TB sind das ca. 40GB Platz gespart. Der Xeon langweilt sich trotzdem ein bisschen. Testweise habe ich gzip-9-Komprimierung getestet, da kam er dann schon ins Schwitzen."

kurlberg 2 hours ago | parent [-]

This has been discussed on HN some times before. User xornot looked at the zfs source code and debunked "faulty ram corrupts more and more on scrub", for more details see https://news.ycombinator.com/item?id=14207520