Varför stryps en NVMe-SSD vid säkerhetskopiering av många små filer, men inte vid en enda stor lokal kopiering?

Eva Wong är Teknisk skribent och den boende fixaren på ZimaSpace. En livslång nörd med en passion för hemma-labb och öppen källkod, hon specialiserar sig på att översätta komplexa tekniska koncept till tillgängliga, praktiska guider. Eva tror att självhosting ska vara roligt, inte skrämmande. Genom sina handledningar ger hon gemenskapen verktyg att avmystifiera hårdvaruinstallationer, från att bygga sin första NAS till att bemästra Docker-containrar.

En NVMe-SSD kan bli långsammare vid säkerhetskopiering av små filer eftersom metadata, slumpmässiga skrivningar, synkroniseringsbarriärer och CPU-arbete skapar en annan flaskhals än en enda stor kopiering.

Ordet ”strypning” används ofta för alla hastighetsminskningar, men termisk strypning är bara en möjlighet. Säkerhetskopieringar av små filer skapar upprepade gånger katalogposter, uppdaterar tidsstämplar och behörigheter, öppnar och stänger filer, beräknar kontrollsummor, komprimerar eller krypterar data och sparar metadata. NVMe-enheten kan visa lägre MB/s samtidigt som den hanterar fler operationer per sekund och högre latens. Jämför lokala arbetsbelastningar med samma storlek innan du ändrar kylningen eller byter enhet.

Bevisa skillnaden med lokala tester av samma storlek

Skapa en stor fil och ett katalogträd med små filer med samma totala datamängd. Kopiera varje uppsättning lokalt till samma NVMe-destination och registrera förfluten tid, IOPS, latens, CPU-användning och temperatur.

Fio definierar separata sekventiella och slumpmässiga I/O-lägen, vilket gör det möjligt att isolera arbetsbelastningens form i stället för att jämföra orelaterade säkerhetskopieringar.

Om den stora lokala kopieringen förblir snabb medan skapandet av små filer går långsammare är PCIe-länken och den sekventiella NAND-vägen troligen tillgängliga. Gå vidare med metadata, kölatens, cache, CPU och värme.

Mät metadataoperationer i stället för enbart MB/s

Spåra filer per sekund, skapanden, stängningar, namnändringar, kataloguppdateringar, ACL-skrivningar, utökade attribut och synkroniseringsoperationer. Jämför dessa värden med dataöverföringen.

Red Hat beskriver lagring av små filer som metadatakrävande, vilket förklarar varför tusentals små filer kan ge låg MB/s utan att nå NVMe-enhetens gräns för sekventiell bandbredd.

En säkerhetskopiering kan därför vara aktiv och fungera korrekt samtidigt som den visar en besvikande datahastighet. Bedöm den utifrån slutförda filer, latens och återställningskrav, liksom genomströmning.

Kontrollera om cachrensning ökar skrivlatensen

Registrera ledigt utrymme, skrivna byte, ihållande latens och om prestandan återhämtar sig efter en viloperiod. Jämför ett nyligen TRIM-at testområde med den vanliga destinationen för säkerhetskopieringen endast när det är säkert.

Crucial förklarar att aktiv skräpsamling kan påverka SSD-hastigheten, särskilt när enheten har lite vilotid eller återanvändbart utrymme.

Små slumpmässiga skrivningar kan kräva mer intern dataflytt än en enda sekventiell dataström. Behåll marginaler av ledigt utrymme och anta inte att den angivna sekventiella hastigheten gäller för ihållande små skrivningar.

-15% OFF
Single board computer zimaboard2

Undersök kölatens och enhetens belastning

Samla in genomsnittlig förfrågningslatens, ködjup, användningsgrad, läs- och skrivhastigheter samt CPU:s I/O-väntetid under båda testerna. Leta efter hög latens med måttlig MB/s.

iostat-rapporten visar när enheten är mättad av många små förfrågningar, även om den sammanlagda genomströmningen ligger långt under de sekventiella specifikationerna.

Ökad samtidighet i säkerhetskopieringen kan förbättra prestandan på en lätt belastad enhet men försämra den redan mättade kön. Ändra en arbetsprocess eller köinställning åt gången.

Separera filsystemsposter från filinnehåll

Identifiera källans och destinationens filsystem samt vilka metadata säkerhetskopieringen bevarar. I NTFS ska du registrera MFT-tillväxt och om säkerhetsbeskrivningar, alternativa dataströmmar och tidsstämplar kopieras.

Microsoft uppger att MFT innehåller minst en post per fil, vilket visar varför många små filer skapar betydligt mer arbete med filsystemsposter än en enda fil med samma totala storlek.

Om säkerhetskopieringen bevarar ACL:er, xattrs, glesa områden eller kontrollsummor ska du inkludera det arbetet i jämförelsen. Att stänga av integritetsfunktioner enbart för att förbättra ett riktmärke kan försvaga säkerhetskopieringen.

Verifiera verklig termisk strypning i stället för att anta den

Logga NVMe-enhetens sammansatta temperatur, tid med termisk varning, styrenhetens upptagenhet och prestanda före och efter kylning. Upprepa testet med stabilt luftflöde och samma uppsättning små filer.

Kingston förklarar att termisk strypning minskar prestandan tills SSD-enheten återgår till en säker temperatur.

Om genomströmningen sjunker utan att en temperaturgräns eller termisk varning uppnås ska du kalla det en arbetsbelastningsflaskhals i stället för termisk strypning. Kylning löser inte metadata-s serialisering eller CPU-bunden hashning.

Optimera det lager i säkerhetskopieringen som faktiskt är mättat

Testa en måttlig förändring, till exempel färre arbetare för kontrollsummor, en extra kopieringsarbetare, grupperad metadatabehandling, ett lokalt manifest eller undantag för återskapningsbara cachefiler. Bevara metadata som krävs för återställning.

ZimaSpace-artikeln om testning av SMB-kopiering av små filer behandlar nätverkskopieringar; den här artikeln isolerar den lokala NVMe-enheten och säkerhetskopieringskedjan när den stora lokala kopieringen förblir snabb.

Diagnosen är klar när långsamheten kan kopplas till metadatas frekvens, latens vid slumpmässiga skrivningar, cachrensning, CPU-arbete eller verifierad termisk strypning, och en riktad ändring förbättrar samma kontrollerade test med små filer.

Support och tips

Mer att läsa

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.