Western Digital har udgivet et specialiseret Zonefs-filsystem til zoneinddelte drev

Director of Software Development hos Western Digital Han tilbød på Linux-kernens udviklermailingliste, et nyt filsystem kaldet Zonefs, der sigter mod at forenkle arbejde på lavt niveau med zoneinddelte lagerenheder. Zonefs forbinder hver zone på et drev med en separat fil, der kan bruges til at gemme data i rå tilstand uden manipulation på sektor- og blokniveau.

Zonefs er ikke en POSIX-kompatibel FS og er begrænset til et ret snævert omfang, der tillader applikationer at bruge fil-API'en i stedet for at få direkte adgang til blokenheden ved hjælp af en ioctl. Zone-relaterede filer kræver sekventielle skriveoperationer startende fra slutningen af ​​filen (tilføj tilstandsskrivning).

Filerne i Zonefs kan bruges til at placere oven på zoneinddelte databasedrev, der bruger lagringsstrukturer i form af LSM (log-structured merge) logs, startende fra konceptet med én fil – én lagringszone. For eksempel bruges lignende strukturer i RocksDB- og LevelDB-databaserne. Den foreslåede tilgang gør det muligt at reducere omkostningerne ved portering af kode, der oprindeligt var designet til at manipulere filer i stedet for at blokere enheder, samt at organisere arbejde på lavt niveau med zoneinddelte drev fra applikationer i andre programmeringssprog end C.

Under zoneinddelte drev underforstået enheder på hårde magnetiske diske eller NVMe SSD, hvor lagerpladsen er opdelt i zoner, der udgør grupper af blokke eller sektorer, hvori kun sekventiel tilføjelse af data er tilladt med opdatering af hele gruppen af ​​blokke.

For eksempel bruges optagelseszoneinddeling i enheder med flisebelagt magnetisk optagelse (Shingled Magnetic Recording, SMR), hvor sporbredden er mindre end bredden af ​​magnethovedet, og optagelsen udføres med delvis overlapning af det tilstødende spor, dvs. enhver genindspilning resulterer i behovet for at genindspille hele gruppen af ​​spor. Hvad angår SSD-drev, er de oprindeligt bundet til sekventielle skriveoperationer med foreløbig datarydning, men disse operationer er skjult på controllerniveau og FTL-laget (Flash Translation Layer). For at øge effektiviteten for visse typer belastning har NVMe-organisationen standardiseret ZNS-grænsefladen (Zoned Namespaces), som tillader direkte adgang til zoner, uden at FTL-laget.

Western Digital har udgivet et specialiseret Zonefs-filsystem til zoneinddelte drev

I Linux til zoneinddelte harddiske siden kerne 4.10 tilbydes ZBC (SCSI) og ZAC (ATA) blokenheder, og fra og med release 4.13 er det dm-zoneinddelte modul blevet tilføjet, der repræsenterer et zoneinddelt drev som en almindelig blokenhed, hvilket skjuler de skriverestriktioner, der anvendes under drift. På filsystemniveau er understøttelse af zoneinddeling allerede blevet integreret i F2FS-filsystemet, og et sæt patches til Btrfs-filsystemet er under udvikling, hvis tilpasning til zoneinddelte drev forenkles ved at arbejde i CoW (copy-on -skrive) tilstand.
Ext4 og XFS drift over zoneinddelte drev kan arrangeres ved hjælp af dm-zoneinddelt. For at forenkle oversættelsen af ​​filsystemer foreslås ZBD-grænsefladen, som oversætter tilfældige skriveoperationer til filer til strømme af sekventielle skriveoperationer.

Western Digital har udgivet et specialiseret Zonefs-filsystem til zoneinddelte drev

Kilde: opennet.ru

Tilføj en kommentar