Btrfs

Btrfs versus OpenZFS

Btrfs versus OpenZFS
Btrfs- of B-tree-bestandssysteem is de nieuwste concurrent tegen OpenZFS, misschien wel het meest veerkrachtige bestandssysteem dat er is. Beide bestandssystemen delen enkele overeenkomsten, zoals het hebben van een controlesom op gegevensblokken, transactiegroepen en een kopieer-op-schrijfmechanisme, waardoor ze beide gericht zijn op de gebruikersgroepen. Dus wat is het verschil en welke moet je gebruiken??

1. Copy-on-Write (COW)-mechanisme

Beide bestandssystemen gebruiken een kopieer-op-schrijfmechanisme. Dit betekent dat, als u een bestand probeert te wijzigen, geen van de bestandssystemen zal proberen de bestaande gegevens op de schijf te overschrijven met de nieuwere gegevens. In plaats daarvan worden de nieuwere gegevens ergens anders geschreven en zodra de schrijfbewerking is voltooid, verwijst het bestandssysteem eenvoudig naar de nieuwere gegevensblokken en worden de oude blokken na verloop van tijd gerecycled. Met dit mechanisme kunnen beide bestandssystemen functies hebben zoals snapshots en klonen.

COW voorkomt ook edge-cases zoals gedeeltelijke schrijfacties, die kunnen gebeuren als gevolg van kernel panic of stroomuitval en mogelijk uw hele volledige bestandssysteem beschadigen. Met COW op zijn plaats, is er een schrijven gebeurd of niet gebeurd, er is geen tussenweg.

2. Pooling en RAID

Beide bestandssystemen zijn bedoeld om de noodzaak van een volumemanager, raid en andere abstracties die tussen het bestandssysteem en de schijven zitten, te elimineren. Dit is robuuster en betrouwbaarder dan het hebben van een hardware RAID-controller, simpelweg omdat het een single point of failure elimineert - de RAID-controller zelf.

OpenZFS biedt een stabiel, betrouwbaar en gebruiksvriendelijk RAID-mechanisme. U kunt spiegelen tussen schijven, RAIDZ1 gebruiken die uw gegevens verspreidt over 3 of meer schijven met één pariteitsblok. Dus het is bestand tegen maximaal 1 schijffout per Vdev. Op dezelfde manier kan RAIDZ2 4 of meer schijven gebruiken en bestand zijn tegen maximaal 2 schijven die falen en op dezelfde manier hebben we RAIDZ3.

Btrfs heeft deze functies ook geïmplementeerd, het verschil is alleen dat het ze RAID noemt, in plaats van RAIDZ enzovoort and. Sommige meer gecompliceerde RAID-array-opstellingen zoals RAID56 bevatten fouten en zijn niet geschikt voor gebruik op het moment van schrijven.

3. Licenties

Een van de redenen waarom OpenZFS zo laat op het GNU/Linux-ecosysteem kwam, is vanwege de incompatibiliteit van de licentie met GNU GPL. Zonder al te veel in details te treden, valt Btrfs onder GPL, waardoor gebruikers de broncode kunnen gebruiken en wijzigen, maar de wijzigingen moeten ook onder GPL worden gepubliceerd en open source blijven.

OpenZFS daarentegen is gelicentieerd onder CDDL, wat veel toleranter is en gebruikers in staat stelt om code met een grotere mate van vrijheid te wijzigen en te distribueren.

4. Gemeenschappen en bedrijven erachter

OpenZFS heeft een enorme gemeenschap erachter. FreeBSD-gemeenschap, Illumos-gemeenschap en vele andere open source-projecten vertrouwen op OpenZFS en dragen zo bij aan het bestandssysteem. Het is sinds de oprichting verschillende keren gegroeid in termen van codebasis, gebruikersbestand, functies en flexibiliteit. Bedrijven zoals Delphix, iXsystems, Joyent en nog veel meer vertrouwen erop en laten hun ontwikkelaars eraan werken omdat het een kernonderdeel van hun bedrijf is. Veel meer organisaties zouden zonder ons medeweten OpenZFS kunnen gebruiken, dankzij de CDDL-licentie hoeven ze niet naar voren te komen en ronduit te zeggen dat ze het gebruiken.

Btrfs had Red Hat als een van de belangrijkste rentmeesters van zijn gemeenschap. Dat kreeg echter een tijdje geleden een grote klap toen Red Hat het bestandssysteem deprecieerde, dit betekent dat je het in een toekomstige RHEL niet zult zien en het bedrijf zal er geen commerciële ondersteuning voor bieden. SUSE is echter zo ver gegaan dat het hun standaard is geworden en er is nog steeds een bloeiende gemeenschap achter het bestandssysteem met bijdragen van Facebook, Intel en andere 800-pond gorilla's uit Silicon Valley.

5. Betrouwbaarheid

ZFS was ontworpen om vanaf het begin betrouwbaar te zijn. Mensen hebben zpools die dateren uit het begin van de jaren 2000 en die nog steeds bruikbaar zijn en gegarandeerd geen foutieve gegevens stilletjes retourneren. Ja, er zijn een paar problemen geweest met het verdwijnen van bestanden voor OpenZFS op Linux, maar gezien de lange geschiedenis was het trackrecord verrassend schoon.

Btrfs daarentegen heeft vanaf het begin problemen gehad. Met buggy-interfaces om gegevensverlies en bestandscorruptie recht te zetten. Zelfs nu is het een lachertje in de gemeenschap. Maak daarvan wat je wilt.

6. Ondersteunde besturingssystemen

Btrfs heeft zijn oorsprong en heeft een bestandssysteem voor Linux, terwijl ZFS werd bedacht in Sun, voor Solaris OS. OpenZFS is echter al lang geport naar FreeBSD, Apple's OS X, open source-derivaten van Solaris. De ondersteuning voor Linux kwam iets later dan men had voorspeld, maar het is er en bedrijven vertrouwen erop. Een project om het op Microsoft Windows te laten draaien, boekt ook behoorlijk wat vooruitgang, hoewel het er nog niet helemaal is.

Conclusie: een opmerking over monoculturen

Al dit gepraat kan je overtuigen om OpenZFS te gebruiken om je gegevens veilig te houden, en dat is geen slechte manier van handelen. Het is objectief beter dan Btrfs op het gebied van functies, betrouwbaarheid, community en nog veel meer. Op de lange termijn is dit echter misschien niet goed voor de open source-gemeenschap in het algemeen.

In een post die vergelijkbaar is met deze, heeft de auteur het over het gevaarlijke van monoculturen. Ik moedig je aan om dit bericht door te nemen. De kern ervan is dit - Opties zijn belangrijk. Een van de grootste kracht van Open Source-software (en software in het algemeen) is dat we meerdere opties hebben om te adopteren. Er is Apache en dan is er Nginx, er zijn BSD's en Linux, er is OpenSSL en er is LibreSSL.

Als er een fatale fout zit in een van deze sleuteltechnologieën, zal de wereld niet stoppen met draaien. Maar met de prevalentie van OpenZFS is de opslagtechnologie veranderd in een soort monocultuur. Dus ik zou heel graag willen dat de ontwikkelaars en systeemprogrammeurs die dit lezen, niet OpenZFS gebruiken, maar projecten zoals Btrfs en HAMMER.

Gratis en open source game-engines voor het ontwikkelen van Linux-games
Dit artikel behandelt een lijst met gratis en open source game-engines die kunnen worden gebruikt voor het ontwikkelen van 2D- en 3D-games op Linux. E...
Shadow of the Tomb Raider voor Linux-zelfstudie
Shadow of the Tomb Raider is de twaalfde toevoeging aan de Tomb Raider-serie - een actie-avonturengame-franchise gemaakt door Eidos Montreal. De game ...
Hoe FPS te verhogen in Linux?
FPS staat voor Beelden per seconde. De taak van FPS is om de framesnelheid te meten bij het afspelen van video's of speluitvoeringen. In eenvoudige wo...