Denne blog hjælper med at forstå, hvorfor overgangen skete fra 512 bytes sektor disk til 4096 bytes sektor disk. Bloggen giver også svar på, hvorfor 4096 bytes (4K) sektordisk skal vælges til OS-installation. Bloggen forklarer først om sektorlayout for at forstå behovet for migrering, giver derefter begrundelse bag migreringen, og endelig dækker den fordelene ved 4K-sektordrev over 512 bytes sektordrev.
En sektor er den mindste lagerenhed på en harddisk. Det er en underopdeling af et spor på en harddisk. Sektorens størrelse er en vigtig faktor i designet af operativsystemet, fordi det repræsenterer atomenheden for I / O-operationer på en harddisk. I Linux kan du kontrollere størrelsen på disksektoren ved hjælp af kommandoen "fdisk -l".
Figur 1: Disksektorstørrelsen i Linux
Som vist i figur 1 er både de logiske og fysiske sektorer 512bytes lange for dette Linux-system.
Sektorlayoutet er struktureret som følger:
Hver sektor gemmer en fast mængde brugerdata, traditionelt 512 bytes til harddiske. Men på grund af bedre dataintegritet ved højere tætheder og robuste fejlkorrektionsfunktioner lagrer nyere harddiske nu 4096 byte (4K) i hver sektor.
Antallet af bits, der er lagret på en given sporlængde, betegnes som arealtæthed. Forøgelse af arealtætheden er en tendens i diskdrevindustrien, ikke kun fordi det gør det muligt at lagre større mængder data i det samme fysiske rum, men det forbedrer også overførselshastigheden, hvormed mediet kan fungere. Med stigningen i arealtætheden har sektoren nu brugt en mindre og mindre mængde plads på harddiskens overflade. Dette skaber et problem, fordi den fysiske størrelse af sektorerne på harddiske er skrumpet, men mediefejl ikke har. Hvis dataene i en harddisksektor bruger mindre områder, bliver fejlkorrektion udfordrende. Dette skyldes, at mediefejl af samme størrelse kan beskadige en højere procentdel af dataene på disken, der har et lille område for en sektor, end den disk, der har et stort område for en sektor.
Der er to tilgange til at løse dette problem. Den første tilgang er at investere mere diskplads i ECC-bytes for at sikre fortsat datapålidelighed. Men hvis vi investerer mere diskplads til ECC-bytes, vil det føre til mindre diskformateffektivitet. Diskformateffektivitet defineres som (antal brugerdatabytes X 100) / samlet antal byte på disken. En anden ulempe er, at jo flere ECC-bits inkluderet, kræver diskcontrolleren mere processorkraft til at behandle ECC-algoritmen.
Anden tilgang er at øge størrelsen på datablokken og øge ECC-bytes lidt for hver datablok. Med stigningen i datablokstørrelse vil mængden af overhead, der kræves for hver sektor til at gemme kontroloplysninger som hul, synkronisering, adressemærkesektion osv., Reducere. For hver sektor øges ECC-bytes, men de samlede ECC-bytes, der kræves til en disk, reduceres på grund af større sektor. Ved at reducere den samlede mængde plads, der bruges til fejlkorrektionskode, forbedres formateffektiviteten, og flere ECC-bytes for hver sektor giver mulighed for at bruge mere effektive og kraftfulde fejlkorrektionsalgoritmer. Overgangen til en større sektorstørrelse har således to fordele: forbedret pålidelighed og større diskkapacitet.
Fra et gennemløbsperspektiv skal den ideelle blokstørrelse være omtrent lig med den karakteristiske størrelse af en typisk datatransaktion. Vi må erkende, at den gennemsnitlige filstørrelse i dag er mere end 512 bytes. Nu om dage bruger applikationer i moderne systemer data i store blokke, meget større end den traditionelle 512-byte sektorstørrelse. For små blokstørrelser forårsager for meget transaktionsomkostninger. Mens der i tilfælde af store blokstørrelser overfører hver transaktion en stor mængde unødvendige data.
Størrelsen af en standardtransaktion i relationelle databasesystemer er 4K. Konsensus i harddiskindustrien har været, at fysiske blokstørrelser på 4K-blok ville give et godt kompromis. Det svarer også til personsøgningsstørrelse, der bruges af operativsystemer og processorer.
Figur 3: Forbedring af formateffektiviteten i 4K-diske
512 byte sektorformat | 4096 byte sektorform | |
Mellemrum, synkronisering og adressemærke | 15 byte | 15 byte |
Brugerdata | 512 bytes | 4096 bytes |
Fejlretningskode | 50 byte | 100 bytes |
Total | 577 bytes | 4211 bytes |
Formateffektivitet | 88,7% | 97.3% |
Tabel 1: Forbedring af formateffektiviteten i 4K-diske
Som vi ser i figur 2, er 4K-sektorer 8 gange så store som traditionelle 512 byte-sektorer. Derfor har man for den samme datanyttelast brug for 8 gange mindre mellemrum, synkroniserings- og adressemærkesektioner og 4 gange mindre fejlkorrektionskodesektion. Ved at reducere mængden af plads, der bruges til fejlrettelseskode og andre sektioner, der ikke er data, forbedres formateffektiviteten for 4K-format. Formateffektivitetsforbedring er vist i figur 3 og tabel-1, der er en gevinst på 8.6% formateffektivitet for 4K-sektordisk over 512byte sektordisk.
Figur 4: Effekt af mediefejl på disktæthed
Som vist i figur 4 er effekten af mediefejl på disk med højere arealtæthed mere end disken med den lavere arealtæthedsdisk. Efterhånden som arealtætheden øges, har vi brug for flere ECC-bytes for at bevare det samme niveau af fejlkorrektionskapacitet. 4K-formatet giver plads nok til at udvide ECC-feltet fra 50 til 100 byte for at rumme nye ECC-algoritmer. Den forbedrede ECC-dækning forbedrer muligheden for at registrere og rette behandlede datafejl ud over den 50-byte-fejllængde, der er forbundet med 512-byte-sektorformatet.
4K-datadiske understøttes på Windows Server 2012, men som startdisk understøttes kun i UEFI-tilstand. Til Linux kræver 4K-harddiske mindst RHEL 6.1 og SLES 11 SP2. 4K-startdrev understøttes kun i UEFI-tilstand i Linux. Kerneunderstøttelse af 4K-drev er tilgængelig i kerneversionerne 2.6.31 og nyere. PERC H330-, H730-, H730P-, H830-, FD33xS- og FD33xD-kort understøtter diskdrev i 4K-blokstørrelse, så du kan udnytte lagerpladsen effektivt. 4K-diske kan bruges på Dell PowerEdge-servere, der understøtter ovenstående PERC-kort.
Den fysiske størrelse af hver sektor på disken er blevet mindre som følge af stigningen i arealtætheder i diskdrev. Hvis antallet af diskfejl ikke skaleres med samme hastighed, forventer vi, at flere sektorer vil blive beskadiget, og vi har brug for stærk fejlkorrektionskapacitet for hver sektor. Diskdrev med større fysiske sektorer og flere ECC-bytes til hver sektor giver forbedrede algoritmer til databeskyttelse og korrektion. 4K-formatet hjælper med at opnå bedre formateffektivitet og forbedrer pålideligheden og fejlkorrektionsfunktionen. Denne overgang vil resultere i bedre brugeroplevelser, derfor bør 4K-drevet vælges til OS-installation.