Western Digital ha pubblicato un file system Zonefs specializzato per le unità suddivise in zone

Direttore dello sviluppo software presso Western Digital suggerì sulla mailing list degli sviluppatori del kernel Linux, un nuovo file system chiamato Zonefs, mirato a semplificare il lavoro di basso livello con dispositivi di storage a zone. Zonefs associa ciascuna zona su un'unità con un file separato che può essere utilizzato per archiviare i dati in modalità raw senza manipolazione a livello di settore e blocco.

Zonefs non è un FS conforme a POSIX ed è limitato a un ambito abbastanza ristretto che consente alle applicazioni di utilizzare l'API dei file invece di accedere direttamente al dispositivo a blocchi utilizzando un ioctl. I file relativi alle zone richiedono operazioni di scrittura sequenziali a partire dalla fine del file (scrittura in modalità aggiunta).

I file forniti in Zonefs possono essere utilizzati per essere posizionati sopra le unità di database suddivise in zone che utilizzano strutture di archiviazione sotto forma di registri LSM (log-structured merge), partendo dal concetto di un file - una zona di archiviazione. Ad esempio, strutture simili vengono utilizzate nei database RocksDB e LevelDB. L'approccio proposto consente di ridurre il costo del porting del codice originariamente progettato per manipolare file anziché bloccare dispositivi, nonché di organizzare il lavoro di basso livello con unità a zone da applicazioni in linguaggi di programmazione diversi da C.

Sotto unità a zone sono impliciti dispositivi accesi dischi magnetici rigidi o NVMe SSD, lo spazio di archiviazione in cui è suddiviso in zone che compongono gruppi di blocchi o settori, in cui è consentita solo l'aggiunta sequenziale di dati con l'aggiornamento dell'intero gruppo di blocchi.

Ad esempio, la registrazione in zone viene utilizzata nei dispositivi con registrazione magnetica piastrellata (Shingled Magnetic Recording, SMR), in cui la larghezza della traccia è inferiore alla larghezza della testina magnetica e la registrazione viene eseguita con parziale sovrapposizione della traccia adiacente, ovvero qualsiasi nuova registrazione comporta la necessità di registrare nuovamente l'intero gruppo di tracce. Per quanto riguarda le unità SSD, inizialmente sono vincolate a operazioni di scrittura sequenziale con cancellazione preliminare dei dati, ma queste operazioni sono nascoste a livello di controller e di livello FTL (Flash Translation Layer). Per aumentare l’efficienza per determinati tipi di carico, l’organizzazione NVMe ha standardizzato l’interfaccia ZNS (Zoned Namespaces), che consente l’accesso diretto alle zone, bypassando il livello FTL.

Western Digital ha pubblicato un file system Zonefs specializzato per le unità suddivise in zone

In Linux per dischi rigidi suddivisi in zone dal kernel 4.10 offerto Dispositivi a blocchi ZBC (SCSI) e ZAC (ATA) e, a partire dalla versione 4.13, è stato aggiunto il modulo dm-zoned, che rappresenta un'unità a zone come un normale dispositivo a blocchi, nascondendo le restrizioni di scrittura applicate durante il funzionamento. A livello di file system, il supporto per la zonizzazione è già stato integrato nel file system F2FS ed è in fase di sviluppo una serie di patch per il file system Btrfs, il cui adattamento per le unità suddivise in zone è semplificato lavorando in CoW (copy-on -scrittura).
Funzionamento Ext4 e XFS su unità a zone Possono essere organizzati utilizzando dm-zoned. Per semplificare la traduzione dei file system, viene proposta l'interfaccia ZBD, che traduce le operazioni di scrittura casuale su file in flussi di operazioni di scrittura sequenziali.

Western Digital ha pubblicato un file system Zonefs specializzato per le unità suddivise in zone

Fonte: opennet.ru

Aggiungi un commento