Western Digital апублікаваў спецыялізаваную ФС Zonefs для занаваных назапашвальнікаў

Дырэктар па праграмных распрацоўках кампаніі Western Digital прапанаваў у спісе рассылання распрацоўнікаў ядра Linux новую файлавую сістэму Zonefs, нацэленую на спрашчэнне нізкаўзроўневай працы з занаванымі прыладамі захоўвання. Zonefs злучае кожную зону ў назапашвальніку з асобным файлам, які можна выкарыстоўваць для захоўвання дадзеных у raw-рэжыме без маніпуляцыі на ўзроўні сектараў і блокаў.

Zonefs не з'яўляецца POSIX-сумяшчальнай ФС і абмежавана досыць вузкай вобласцю прымянення, якая дазваляе прыкладанням выкарыстоўваць файлавы API замест прамога звароту да блокавай прылады пры дапамозе ioctl. Звязаныя з зонамі файлы патрабуюць выкананні аперацый паслядоўнага запісу, пачынальна з канца файла (запіс у рэжыме дадатку).

Якія прадстаўляюцца ў Zonefs файлы могуць ужывацца для размяшчэння па-над занаванымі назапашвальнікамі БД, якія выкарыстоўваюць структуры захоўвання ў форме лога LSM (log-structured merge), адштурхваючыся ад канцэпцыі адзін файл – адна зона захоўвання. Напрыклад, падобныя структуры прымяняюцца ў БД RocksDB і LevelDB. Прапанаваны падыход дае магчымасць скараціць выдаткі на партаванне кода, першапачаткова разлічанага на маніпуляцыю з файламі, а не блокавымі прыладамі, а таксама арганізаваць нізкаўзроўневую працу з занаванымі назапашвальнікамі з прыкладанняў на мовах праграмавання выдатных ад Сі.

Пад занаванымі назапашвальнікамі маюцца на ўвазе прылады на жорсткіх магнітных дысках або NVMe SSD, прастора для захоўвання ў якіх разбіта на зоны, якія складаюць групы блокаў ці сектараў, у якія дапушчаецца толькі паслядоўнае даданне дадзеных з абнаўленнем цалкам усёй групы блокаў.

Напрыклад, занаванне запісу ўжываецца ў прыладах з чарапічным магнітным запісам (Магнітная запіс з чарапіцай, SMR), у якіх шырыня дарожкі менш шырыні магнітнай галоўкі, і запіс вырабляецца з частковым перакрыццем суседняй дарожкі, г.зн. любы перазапіс прыводзіць да неабходнасці перазапісу ўсёй групы дарожак. Што да SSD-назапашвальнікаў, то ў іх першапачаткова маецца прывязка да паслядоўных аперацый запісу з папярэдняй ачысткай дадзеных, але дадзеныя аперацыі хаваюцца на ўзроўні кантролера і праслойкі FTL (Flash Translation Layer). Для падвышэння эфектыўнасці пры некаторых выглядах нагрузкі арганізацыя NVMe стандартызавала інтэрфейс ZNS (Zoned Namespaces), які дазваляе напроста звяртацца да зон у абыход праслойкі FTL.

Western Digital апублікаваў спецыялізаваную ФС Zonefs для занаваных назапашвальнікаў

У Linux для занаваных цвёрдых дыскаў пачынаючы з ядра 4.10 прапануюцца блокавыя прылады ZBC (SCSI) і ZAC (ATA), а пачынальна з выпуску 4.13 дададзены модуль dm-zoned, уяўлялы занаваны назапашвальнік як звычайная блокавая прылада, хаваючы ўжывальныя падчас прац абмежаванні запісу. На ўзроўні файлавых сістэм падтрымка занавання ўжо інтэграваная ў ФС F2FS, а ў распрацоўцы знаходзіцца набор патчаў для ФС Btrfs, адаптацыю якой для занаваных назапашвальнікаў спрашчае праца ў рэжыме CoW (copy-on-write).
Працу Ext4 і XFS па-над занаванымі назапашвальнікамі можна арганізаваць пры дапамозе dm-zoned. Для спрашчэння перакладу файлавых сістэм прапанаваны інтэрфейс ZBD, які транслюе аперацыі выпадковага запісу ў файлы ў струмені паслядоўных аперацый запісу.

Western Digital апублікаваў спецыялізаваную ФС Zonefs для занаваных назапашвальнікаў

Крыніца: opennet.ru

Дадаць каментар