Dat is het zeker

Je verliest effectief maar de opslagruimte van 1 disk, waardoor het verlies van ruimte relatief aan het aantal disken is. Meer disken -> meer ruimte. Waar je dan wel weer een parabool bewandeld tussen opslagruimte vs kans-op-dataverlies, naarmate hoeveel disken je in één vdev stopt.
Een 10-disk RAID-Z2 heeft slechts 20% overhead nodig voor een tweevoudige bescherming, iets wat mirroring niet kan garanderen.
Wat je zegt klopt, alleen maak je hier ook een aanname: 10 disken in een thuisserver. Ik heb geen 10 disken in mijn thuisserver zitten en HyperBart sprak over op dit moment ook vier, met plannen om uit te breiden naar zes.
Een mirror biedt de bescherming van RAID-Z, met een mogelijkheid tot nog een disk failure; maar dat laatste is gokken in het casino. Je wilt zekerheid daarom draai je redundant.
Klopt, er kunnen meerdere schijven uitvallen, maar dat moet dan wel de "goede" zijn.
Voor zekerheid is RAID-Z2 koning.
Dus RAID-Z2 is superieur op vlakken als:
[list]
• bescherming voor je data (veel beter dan mirroring)
Naarmate het aantal disks toenemen schuift de kans op dataverlies door dubbele uitval naar elkaar toe.
Voor zekerheid zit je bij RAID-Z2 altijd beter. Maar mirroring is zeker niet dramatisch.
Ik maak niet vaak mee dat een disk er ineens *poef* mee ophoud. Het komt voor, maar vaak is er toch wel enige indicatie: een paar sectoren die checksum errors vertonen, SMART waarden die reallocaties laten zien, mindere performance van een disk.
Zolang je zorgt dat de monitoring in orde is en met waarschuwingen daadwerkelijk iets doet zit je redelijk safe.
Als er bij nu een disk fouten begint te vertonen, zal ik vlot een disk bij kopen, deze in een vrije SATA poort prikken en alvast mirroren met de mirror die een slechte schijf lijkt te hebben. Dan draai ik een three-way-mirror zolang die "slechte" disk nog werkt.
• lage overhead (20% in bovenstaand voorbeeld versus 50% voor mirroring; terwijl je veel betere bescherming hebt)
Deze overhead groeit naarmate het aantal disken in de pool toeneemt.
In een thuis server zitten meestal niet zoveel disken. Nu ga ik een aanname doen: "Ik verwacht dat van alle thuisservers het merendeel behoort tot de categorie 'thuisservers t/m zes disks'.
Moederborden van de afgelopen twee jaar tot nu hebben meestal zes SATA poorten aan boord, daar komt die aanname een beetje vandaan.
Bij vier disken is het verschil in overhead tussen mirroring en RAID-Z2 nul.
Bij zes disken is dit verschil maar 1 disk van de zes: 16.6% verschil in capaciteit
En daarboven neemt het toe.
• sequential write performance (geen mirror overhead)[/list]Een enkele mirror heeft inderdaad dezelfde write performance als een single disk. Striped mirrors gaan, zoals jij ook weet, omhoog in write performance met elke mirror die je aan de pool toevoegt.
Maar is sequential write performance een daadwerkelijk issue?
Voor het merendeel van de thuisgebruikers is de sequential write performance van een single disk voldoende. Vrijwel alle disks vandaan doen prima een average sequential write van 90MB/s, in het begin is zelfs 130MB/s haalbaar. 90MB/s over Gigabit is hartstikke prima en merendeel van de thuisgebruikers gebruikt Gigabit Ethernet voor zover mij bekend is.
Wanneer je netwerkapparatuur sneller is dan Gigabit Ethernet is dit een mogelijk weegpunt. Maar voor de meeste thuisgebruikers is hier (nog) geen sprake van.
Des te meer schijven in een RAID-Z1/2/3 vdev, des te groter de winst op opslagcapaciteit. Het grote nadeel van RAID-Z is dat alle schijven meedoen voor elke I/O actie, dus random reads zijn enorm traag vergeleken met ouderwets RAID5, mirroring of single disk (RAID0).

Om dat tegen te gaan, sla je enkel grote bestanden op op RAID-Z, en/of kun je L2ARC caching gebruiken om de RAID-Z IOps te boosten, een SLOG kun je gebruiken voor constante random write performance; koop je een goede SSD zoals Intel 320 dan kun je die voor alle taken (systeem, swap, l2arc, slog) gebruiken. Een kleine SSD kan zo een multi-terabyte array versnellen.
Dat is een prima oplossing om de mindere random I/O performance van RAID-Z(2) op te vangen.
Maar, misschien heb ik je verkeerd begrepen, maar spreek je hier jezelf niet ietwat tegen?
Jouw vorige reactie over het artikel waar ik naar linkte:
Dat artikel is niet van toepassing op thuisgebruikers:
[...]
Als je al random reads hebt, [...]
Hiermee krijg ik de indruk dat je aangeeft dat thuisgebruikers vrijwel geen random I/O doen.
Waar ik het overigens wel mee eens ben, want als de thuisserver als mediatank wordt gebruikt zal er weinig random I/O plaatsvinden.
In een thuisserver met vier disken win je geen capaciteit om voor RAID-Z2 te gaan. Wel verlaag je de kans op dataverlies bij uitval van twee disken naar nul ipv 33%.
Daar wil je dan een SSD bij kopen, wat kost zo'n ding? Intel 320 40GB of Crucial M4 64GB: 80 euro?
Die kan je in de zak houden als je voor mirroring gaat, want dan hoef je geen random I/O performance te boosten.
Dan krijg je echter wel die 33% kans op dataverlies bij dubbele uitval voor je kiezen.
Als dat je toch niet lekker zit kun je ook het volgende doen: Voor 85 euro kun je een 1.5TB harde schijf kopen, zowel intern of extern. Ga voor extern bijvoorbeeld:
Persoonlijke data, foto's + filmpjes van vakantie/festiviteiten/herinneringen, studie/werk files, muziek collectie, eventuele website/hobbyprojecten, die kun je daar mooi naar kopiëren. Dat is vaak geen terabytes aan data, maar tientallen tot een paar honderd GB.
Dan heb je een extra offline backup mocht er iets met de server gebeuren, of zelfs als je per ongeluk een hoop data verwijdert van een ZFS volume waar je geen snapshot van hebt gemaakt. (tip: automatiseren die snapshots)
Bij dubbele uitval van disken, of verwijder actie of meltdown van de server, met uitvallen van de array/pool tot gevolg, ben je (als ik het vanuit mijn gebruikspatroon bekijk) kwijt:
- gedownloadde films en series; meestal materiaal wat je opnieuw kunt downloaden.
En als je er zeldzaam spul tussen hebt zitten kun je die vaak nog wel naar je externe disk kwijt.
Dat zou mijn oplossing zijn, mijn alternatief tov een L2ARC die ik niet nodig heb.
Natuurlijk als je meer data hebt, bijvoorbeeld als je foto/videografisch werk doet, die echt cruciaal voor je is dan zul je meer moeten investeren in een offline backup. Maar voor het merendeel van de gebruikers is dat hier denk ik best mee af te vangen.
Als ik naar mijzelf kijk, mijn thuisserver is juist waar mijn backups zich bevinden. Het enige wat echt alleen op de server staat zijn films en series die ik ooit gedownload heb en leuk vind om te bewaren.
Natuurlijk probeer ik die te bewaren, anders had ik ze wel op single disk gezet.
Kortom, voor thuisgebruikers is de RAID-Z familie de meest gebruikelijke keuze. Een groot voordeel van ZFS mirrors is wel dat je per 2 disks kunt uitbreiden. Als dat opweegt dat je bijna twee keer zoveel schijven nodig hebt, kun je prima dat gebruiken. Maar uitbreiden van RAID-Z met meerdere disks is natuurlijk veel goedkoper en logischer.
Ik kijk hier dus iets anders tegenaan.
De simpliciteit en flexibiliteit welke mirrors mij geven is wat mijn keuze bepaald. Capaciteitsverlies hoef ik met vier disken geen rekening mee te houden, en bij zes disken is het verlies voor mij acceptabel tov de eerder genoemde flexibiliteit die er tegenover staat.
Wanneer je met meer disken werkt, dan vind ik de RAID-Z familie interessant, want dan gaan voor mij de voordelen opwegen tegen de nadelen. Waar dat omslagpunt ligt is voor ieder anders en ieder heeft daar zo zijn eigen kijk op. Dit hangt af van de eisen die je stelt en wat je er voor over hebt.
Waarom moet je persé uitbreiden met 1 of 2 disks tegelijk? Je bespaart bij ZFS op zoveel kosten dat je bergen geld overhoudt om gewoon meer schijven per keer te kunnen kopen; daar heb je tenminste wat aan dan alle extra poespas wat duizenden euro's gaat kosten.
Ik bespaar met ZFS helemaal niet flink op de kosten. Integendeel, het maakt bij mij volgens mij helemaal geen verschil. Een dure RAID-controller heb ik nooit gehad, en heb ik ook nooit gemist.
Mijn vorige server draaide Linux en daarop maakt ik gebruik van mdadm (software RAID) + LVM (volume manager) + ext4 (filesystem).
ZFS bied mij meer voor evenveel geld. Ik ben er niet minder geld aan kwijt, en ik denk dat deze lijn door te trekken is richting meer thuisserver in de categorie "tot zes disken".
Wie meer disken gebruikt zal voorheen waarschijnlijk wel geinvesteerd hebben in een goede RAID controller en mogelijk zelfs mooie behuizing met hot-swap bays acht,twaalf,zestien disken.
Mijn server zit in een tweedehands Chieftec Dragon, welke ik opgeknapt heb en voorzien van een zelfgebouwde drivebay waarin mijn disken in koord-elastiek hangen. Doel #1: Fluisterstil, en dat is gelukt

Zeer weinig kosten aan gemaakt, want dat was doel #2.
Als je stil blijft staan, komt de hoek wel naar jou toe.