Btrfs

Btrfs vs OpenZFS

Btrfs vs OpenZFS
Btrfs eller B-tree filsystem är den nyaste konkurrenten mot OpenZFS, utan tvekan det mest elastiska filsystemet där ute. Båda filsystemen delar vissa gemensamma egenskaper som att ha kontrollsumma för datablock, transaktionsgrupper och kopia-på-skriv-mekanism, vilket gör att de båda riktar sig till användargrupperna. Så vad är skillnaden och vilken bör du använda?

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

Båda filsystemen använder copy-on-write-mekanism. Detta innebär att om du försöker ändra en fil kommer inget av filsystemen att försöka skriva över befintlig data på disken med nyare data. Istället skrivs de nyare data någon annanstans och när skrivoperationen är klar pekar filsystemet helt enkelt på de nyare datablocken och de gamla blocken återvinns över tiden. Denna mekanism gör att båda filsystemen kan ha funktioner som ögonblicksbilder och kloning.

COW förhindrar också kantfall som partiella skrivningar, vilket kan hända på grund av kärnpanik eller strömavbrott och kan skada hela ditt filsystem. Med COW på plats har en skrivning antingen hänt eller inte hänt, det finns inget däremellan.

2. Pooling och RAID

Båda filsystemen avser att eliminera behovet av en volymhanterare, raid och andra abstraktioner som sitter mellan filsystemet och diskarna. Detta är mer robust och pålitligt än att ha en RAID-styrenhet för hårdvara, helt enkelt för att den eliminerar en enda felpunkt - själva RAID-styrenheten.

OpenZFS erbjuder en stabil, pålitlig och användarvänlig RAID-mekanism. Du kan spegla mellan enheter, använda RAIDZ1 som sprider dina data över 3 eller fler diskar med ett paritetsblock. Så det tål upton 1-skivans fel per Vdev. På samma sätt kan RAIDZ2 använda fyra eller fler skivor och tåla upp till 2 skivor som misslyckas och på liknande sätt har vi RAIDZ3.

Btrfs har också dessa funktioner implementerade, skillnaden är helt enkelt att den kallar dem RAID, istället för RAIDZ och så vidare. Några mer komplicerade RAID-arrayuppsättningar som RAID56 är buggiga och inte lämpliga för användning när detta skrivs.

3. Licensiering

En av anledningarna till att OpenZFS kom så sent på GNU / Linux-ekosystemet är på grund av dess licensinkompatibilitet med GNU GPL. Utan att komma in för mycket detaljer är Btrfs under GPL vilket gör att användare kan ta källkod och ändra den, men ändringarna bör också publiceras under GPL och förbli öppen källkod.

OpenZFS däremot är licensierat under CDDL vilket är mycket mer tillåtet och tillåter användare att ändra och distribuera kod med större grad av frihet.

4. Gemenskaper och företag bakom dem

OpenZFS har en massiv gemenskap bakom sig. FreeBSD-community, Illumos-community och många andra öppen källkodsprojekt är beroende av OpenZFS och bidrar därmed tillbaka till filsystemet. Det har vuxit flera gånger när det gäller kodbas, användarbas, funktioner och flexibilitet sedan starten. Företag som Delphix, iXsystems, Joyent och många fler litar på det och har sina utvecklare att arbeta med eftersom det är en kärnkomponent i deras verksamhet. Många fler organisationer använder kanske OpenZFS utan vår vetskap, tack vare CDDL-licensen, behöver de inte komma fram och säga att de använder det.

Btrfs hade Red Hat som en av huvudförvaltarna för sitt samhälle. Men det fick ett stort slag för ett tag sedan Red Hat avskaffade filsystemet, det betyder att du inte kommer att se det i framtiden RHEL och företaget kommer inte att ge kommersiellt stöd för det direkt från lådan. SUSE har dock gått så långt som att göra det till standard och deras är fortfarande en blomstrande gemenskap bakom filsystemet med bidrag från Facebook, Intel och andra 800 pund gorillor i Silicon Valley.

5. Pålitlighet

ZFS var designad att vara pålitlig redan från början. Människor har zpools som går tillbaka till början av 2000-talet som fortfarande är användbara och garanterat att de inte kommer att returnera felaktiga data tyst. Ja, det har förekommit några snafus med filer som försvunnit för OpenZFS på Linux men med tanke på dess långa historia har track record varit överraskande ren.

Btrfs, å andra sidan, har haft problem redan från början. Med buggy-gränssnitt för att raka upp dataförlust och filkorruption. Även nu är det lite skrattande i samhället. Gör av det som du vill.

6. Operativsystem som stöds

Btrfs har haft sitt ursprung har ett filsystem för Linux medan ZFS var tänkt i Sun, för Solaris OS. OpenZFS har dock länge sedan portats till FreeBSD, Apples OS X, öppen källkodsderivat av Solaris. Stödet för Linux kom lite senare än man skulle ha förutsett, men det är här och företag litar på det. Ett projekt för att få det att köras på Microsoft Windows gör också en hel del framsteg, även om det inte är riktigt där än.

Slutsats: En anteckning om monokulturer

Allt detta samtal kan övertyga dig om att använda OpenZFS för att hålla dina data säkra, och det är inte dåligt. Det är objektivt bättre än Btrfs när det gäller funktioner, tillförlitlighet, gemenskap och mycket mer. Men i det långa loppet kanske detta inte är bra för öppen källkod i allmänhet.

I ett inlägg med titeln liknande det här berättar författaren om det farliga med monokulturer. Jag uppmuntrar dig att gå igenom det här inlägget. Kärnan i det är detta - Alternativ är viktiga. En av de största styrkorna med Open Source-programvara (och mjukvara i allmänhet) är att vi har flera alternativ att använda. Det finns Apache och sedan finns det Nginx, det finns BSD och Linux, det finns OpenSSL och det finns LibreSSL.

Om det finns en allvarlig brist i någon av dessa nyckeltekniker kommer världen inte att sluta snurra. Men med förekomsten av OpenZFS har lagringstekniken förvandlats till något av en monokultur. Så jag skulle mycket gärna vilja att utvecklarna och systemprogrammerarna som läser detta inte skulle anta OpenZFS utan projekt som Btrfs och HAMMER.

SuperTuxKart för Linux
SuperTuxKart är en fantastisk titel som är utformad för att ge dig Mario Kart-upplevelsen gratis på ditt Linux-system. Det är ganska utmanande och rol...
Battle for Wesnoth Tutorial
Slaget om Wesnoth är ett av de mest populära open source-strategispel som du kan spela just nu. Det här spelet har inte bara utvecklats under mycket l...
0 A.D. Handledning
Av de många strategispelen där ute, 0 A.D. lyckas framstå som en omfattande titel och ett mycket djupt, taktiskt spel trots att det är öppen källkod. ...