Btrfs

Btrfs vs OpenZFS

Btrfs vs OpenZFS
Btrfs eller B-tree filsystem er den nyeste konkurrenten mot OpenZFS, uten tvil det mest elastiske filsystemet der ute. Begge filsystemene deler noen fellestrekk, for eksempel å ha kontrollsum på datablokker, transaksjonsgrupper og kopi-på-skriv-mekanisme, slik at de begge retter seg mot brukergruppene. Så hva er forskjellen og hvilken bør du bruke?

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

Begge filsystemene bruker copy-on-write-mekanisme. Dette betyr at hvis du prøver å endre en fil, vil ingen av filsystemene prøve å overskrive eksisterende data på disken med nyere data. I stedet blir de nyere dataene skrevet andre steder, og når skriveoperasjonen er fullført, peker filsystemet ganske enkelt på de nyere datablokkene, og de gamle blokkene blir resirkulert over tid. Denne mekanismen tillater at begge filsystemene har funksjoner som øyeblikksbilder og kloning.

COW forhindrer også kantsaker som delvis skriving, som kan skje på grunn av kjernepanikk eller strømbrudd og potensielt ødelegge hele filsystemet ditt. Med COW på plass, har en skriving enten skjedd eller ikke skjedd, det er ingen i mellom.

2. Pooling og RAID

Begge filsystemene har til hensikt å eliminere behovet for en volumbehandling, raid og andre abstraksjoner som sitter mellom filsystemet og diskene. Dette er mer robust og pålitelig enn å ha en RAID-kontroller for maskinvare, ganske enkelt fordi den eliminerer et enkelt feilpunkt - selve RAID-kontrolleren.

OpenZFS tilbyr en stabil, pålitelig og brukervennlig RAID-mekanisme. Du kan speile mellom stasjoner, bruke RAIDZ1 som sprer dataene dine over 3 eller flere disker med en paritetsblokk. Så den tåler upton 1 disks feil per Vdev. På samme måte kan RAIDZ2 bruke 4 eller flere disker og tåle opptil 2 disker feiler, og på samme måte har vi RAIDZ3.

Btrfs har også disse funksjonene implementert, forskjellen er ganske enkelt at den kaller dem RAID, i stedet for RAIDZ og så videre. Noen mer kompliserte RAID-oppsett som RAID56 er buggy og ikke egnet for bruk, i skrivende stund.

3. Lisensiering

En av grunnene til at OpenZFS kom så sent på GNU / Linux-økosystemet, er på grunn av lisensekompatibilitet med GNU GPL. Uten å komme inn i for mye detaljer, er Btrfs under GPL som lar brukerne ta kildekoden og endre den, men endringene bør også publiseres under GPL og være åpen kildekode.

OpenZFS er derimot lisensiert under CDDL, noe som er mye mer tillatende og lar brukerne endre og distribuere kode med større grad av frihet.

4. Samfunn og selskaper bak dem

OpenZFS har et massivt samfunn bak seg. FreeBSD-fellesskap, Illumos-fellesskap og mange andre open source-prosjekter er avhengige av OpenZFS og bidrar dermed tilbake til filsystemet. Det har vokst flere ganger når det gjelder kodebase, brukerbase, funksjoner og fleksibilitet helt siden starten. Bedrifter som Delphix, iXsystems, Joyent og mange flere stoler på det og har utviklerne sine jobbet med fordi det er en kjernekomponent i virksomheten deres. Mange flere organisasjoner bruker kanskje OpenZFS uten vår kunnskap, takket være CDDL-lisensen, trenger de ikke komme fram og si rett ut at de bruker den.

Btrfs hadde Red Hat som en av hovedforvalterne i samfunnet. Imidlertid fikk det et stort slag for en stund tilbake da Red Hat avskaffet filsystemet, dette betyr at du ikke vil se det i noen fremtidig RHEL, og selskapet vil ikke gi kommersiell støtte for det uten kasse. SUSE har imidlertid gått så langt som å gjøre det til standard, og det er fortsatt et blomstrende samfunn bak filsystemet med bidrag fra Facebook, Intel og andre 800 pund gorillaer i Silicon Valley.

5. Pålitelighet

ZFS var designet å være pålitelig helt fra begynnelsen. Folk har zpools som går tilbake til begynnelsen av 2000-tallet, som fremdeles er brukbare og garantert ikke vil gi feil data tilbake stille. Ja, det har vært noen få snafus med filer som forsvinner for OpenZFS på Linux, men gitt sin lange historie har banerekorden vært overraskende ren.

Btrfs har derimot hatt problemer helt fra begynnelsen. Med buggy-grensesnitt for å rette opp datatap og filkorrupsjon. Selv nå er det litt latterlig i samfunnet. Gjør av det det du vil.

6. Støttede operativsystemer

Btrfs har opprinnelig hatt et filsystem for Linux mens ZFS ble unnfanget inne i Sun, for Solaris OS. Imidlertid har OpenZFS for lengst blitt portet til FreeBSD, Apples OS X, open source-derivater av Solaris. Støtten for Linux kom litt senere enn man ville ha spådd, men det er her og selskaper er avhengige av det. Et prosjekt for å få det til å kjøre på Microsoft Windows gjør også ganske mye fremgang, selv om det ikke er der ennå.

Konklusjon: En merknad om monokulturer

Alt dette samtalet kan overbevise deg om å bruke OpenZFS for å holde dataene dine trygge, og det er ikke en dårlig handlemåte. Det er objektivt bedre enn Btrfs når det gjelder funksjoner, pålitelighet, fellesskap og mye mer. På sikt kan dette imidlertid ikke være bra for open source-samfunnet generelt.

I et innlegg med tittelen lik denne, forfatteren snakker om det farlige ved monokulturer. Jeg oppfordrer deg til å gå gjennom dette innlegget. Kjernen i det er dette - Alternativer er viktig. En av de største styrkene med Open Source-programvare (og programvare generelt) er at vi har flere muligheter å ta i bruk. Det er Apache og så er det Nginx, det er BSD og Linux, det er OpenSSL og det er LibreSSL.

Hvis det er en dødelig feil i noen av disse viktige teknologiene, vil ikke verden slutte å spinne. Men med utbredelsen av OpenZFS har lagringsteknologien blitt noe av en monokultur. Så jeg vil veldig gjerne at utviklerne og systemprogrammererne som leser dette, ikke adopterer OpenZFS, men prosjekter som Btrfs og HAMMER.

Beste kommandolinjespill for Linux
Kommandolinjen er ikke bare din største allierte når du bruker Linux, den kan også være kilden til underholdning fordi du kan bruke den til å spille m...
Beste Gamepad Mapping Apps for Linux
Hvis du liker å spille spill på Linux med en gamepad i stedet for et vanlig tastatur- og musinngangssystem, er det noen nyttige apper for deg. Mange P...
Nyttige verktøy for Linux-spillere
Hvis du liker å spille spill på Linux, er sjansen stor for at du har brukt apper og verktøy som Wine, Lutris og OBS Studio for å forbedre spilloppleve...