Konfigurera ZFS-datasetets recordsize för blandade dokument och mediefiler genom att anpassa inställningen efter åtkomstmönstret, inte filändelsen, och genom att testa ändringar på nya skrivningar innan du bygger om en aktiv delad resurs.
I en hem-NAS hamnar dokument, skanningar, foton, videor, arkiv och applikationsexporter ofta i en och samma praktiska delade resurs. Den bekvämligheten döljer olika I/O-mönster, så det säkraste beslutet kring recordsize är antingen en försiktig inställning för blandade data eller separata dataset för arbetsbelastningar som tydligt läser och skriver på olika sätt.
Bekräfta om datasetet verkligen är blandat
Börja med att kontrollera vad datasetet faktiskt lagrar och hur klienterna använder det. En mapp med namnet Media kan fortfarande innehålla miniatyrbilder, undertextfiler, projektfiler och små dokument, medan en Documents-delning kan innehålla stora PDF-skanningar och komprimerade arkiv.
OpenZFS dokumenterar recordsize som en dataset-egenskap och påpekar att ZFS automatiskt använder interna algoritmer för typiska åtkomstmönster, medan specialanpassning främst är relevant när applikationer använder stora filer i poster med fast storlek.
Om datasetet verkligen är blandat och redan fungerar bra bör du undvika att ändra recordsize bara för att en annan guide rekommenderar ett större värde. Det första beslutet är om det nuvarande problemet faktiskt finns: långsamma sekventiella medieläsningar, dålig respons vid arbete med små filer, omfattande säkerhetskopieringar eller bara en teoretisk optimeringsfråga.
Använd separata dataset när åtkomstmönstren tydligt skiljer sig
Recordsize tillämpas på datasetnivå, så en inställning måste gälla för alla nya filer som skrivs till datasetet. När stora mediefiler och små, ofta ändrade dokument ligger tillsammans kan ett värde hjälpa den ena arbetsbelastningen samtidigt som det gör den andra mindre förutsägbar.
Klara Systems förklarar att OpenZFS-egenskapen recordsize anger den maximala logiska blockstorleken för filer i ett dataset, medan zvols använder volblocksize i stället. Denna omfattning på datasetnivå är anledningen till att det ofta är renare att dela upp arbetsbelastningar än att försöka hitta ett universellt tal.
Skapa ett mediefokuserat dataset när arbetsbelastningen främst består av stora sekventiella läsningar och skrivningar, och håll ett dokumentdataset konservativt när filerna är små, ändras ofta eller synkroniseras av många klienter. Flytta inte data ännu; testa först med nya filer.
Ändra recordsize innan du skriver de data som ska påverkas
En ändring av recordsize skriver inte automatiskt om den befintliga fil-layouten. Den påverkar hur framtida skrivningar allokeras, så att ändra egenskapen efter att en delad resurs blivit full säger inte mycket förrän filerna har skrivits om eller ersatts.
OpenZFS zfsprops-manual varnar för att använda recordsize i allmänna filsystem, särskilt i databassammanhang, vilket är en användbar påminnelse om att inte behandla recordsize som ett universellt prestandareglage.
För ett nytt dataset ställer du in det avsedda värdet innan du kopierar in data. För ett befintligt dataset kan du testa genom att kopiera en representativ mapp till ett nytt dataset med kandidatinställningen och sedan jämföra bläddringshastighet, säkerhetskopieringsbeteende och klienternas respons innan du planerar en omskrivning.
Välj en konservativ standard för oklara blandade delningar
När arbetsbelastningen är oklar är en konservativ standard oftast säkrare än aggressiv optimering. Målet är inte att maximera ett benchmarkresultat, utan att undvika en inställning som försämrar ett frekvent men mindre uppenbart åtkomstmönster.
Oracles administrationsguide för ZFS beskriver recordsize som en föreslagen blockstorlek och betonar dess användning för databaser, vilket stöder ett försiktigt förhållningssätt för vanliga blandade fildelningar.
Om du ännu inte kan separera arbetsbelastningen bör du låta det blandade datasetet använda plattformens standardvärde eller ett måttligt värde som rekommenderas av din lagringsdistribution. Skapa sedan ett separat testdataset för stora mediefiler i stället för att ändra det delade familjearkivet på plats.
Verifiera med verkligt klientbeteende, inte bara statistik från poolen
Det slutliga testet är hur den delade resursen beter sig från de enheter som faktiskt använder den. Genomströmningen på poolnivå kan se bra ut samtidigt som en fotoapp, dokumentklient för synkronisering eller säkerhetskopieringsjobb blir långsammare eftersom åtkomstmönstret har förändrats.
I ZFS-diskussioner i communityn om medie- och dokumentdataset skiljer man ofta recordsize från andra egenskaper som komprimering, atime och xattrs. Det är användbart eftersom recordsize bara är en del av hur väl inställningarna passar arbetsbelastningen.
Kör samma kopierings-, bläddrings-, redigerings-, skannings- och säkerhetskopieringsuppgifter som du normalt utför. Behåll den nya inställningen endast om arbetsbelastningen som motiverade ändringen förbättras och ingen viktig klient försämras; annars återgår du genom att skriva framtida data till ett dataset med den tidigare inställningen.
Vanliga frågor
Skriver en ändring av recordsize om befintliga filer direkt?
Nej. Betrakta ändringen som något som påverkar nya skrivningar. För att utvärdera den rättvist testar du med nyligen kopierade representativa data eller planerar en kontrollerad omskrivning efter att du har valt inställningen.
Bör mediefiler alltid använda den största tillgängliga recordsize?
Nej. Stora sekventiella mediefiler kan dra nytta av större poster, men miniatyrbilder, projektfiler, metadata, undertexter och blandad åtkomst kan förändra resultatet. Testa det faktiska datasetet innan du tillämpar en generell regel.
Om frågan om recordsize avslöjar ett större organisationsproblem bör du först dela upp arbetsbelastningarna. Det är samma logik kring datasetgränser som används för att förhindra att ögonblicksbildsreplikering fyller en destinationspool.
Support och tips
Mer att läsa

Guide till lagring av live-tv-inspelningar för kapacitet, lagringstid och rensning
Mät verkliga inspelningar, reservera marginal, kombinera gränser för ålder och kapacitet och bevisa att det äldsta berättigade programmet tas bort innan lagringen blir full.

Arbetsflöde för återställning av metadata för hemmamedia efter en databasåterställning
Skydda det återställda tillståndet, verifiera medieidentitet och sökvägar och reparera sedan saknade omslagsbilder eller matchningar i ett pilotbibliotek innan omfattande metadataändringar görs.

Kompatibilitetschecklista för Jellyfin-klienter för ljud, video och undertexter
Testa representativa filer med en variabel i taget och notera Direct Play, remuxning, ljudkonvertering, videotranskodning eller fel för varje klient.

