Megnyílt a TernFS elosztott fájlrendszer forráskódja

Az XTX Markets cég megnyitotta a TernFS fájlrendszer forráskódját, amelyet a földrajzi elhelyezkedésükben elkülönített adatközpontok közötti elosztott tároló létrehozására terveztek, és amely képes akár több exabájt adat tárolására, trillió fájlra és több milliárd könyvtárra, amelyeket egyszerre milliók érhetnek el. A projekt kódja C++ és Go nyelveken íródott, és GPLv2 licenc alatt kerül forgalomba. A protokoll specifikációk és a kliens könyvtárak Apache 2.0 licenc alatt állnak rendelkezésre.

A fájlrendszert a gépi tanulási rendszerek terheléseire optimalizálták — fájlok írására és olvasására, amelyek a létrehozás után nem módosulnak, és több megabájtnál nagyobb adatokat tartalmaznak. A fájlrendszer nem alkalmas új könyvtárak gyakori létrehozására és fájlok könyvtárak közötti gyakori áthelyezésére. Lehetőség van véletlenül törölt fájlok vagy könyvtárak helyreállítására, valamint véglegesen törlésre vonatkozó politikák beállítására. A fájlrendszer tartalmát több adatközpont között replikálni lehet különböző régiókban. A tároló csomópontok különféle tárolótípusokat tartalmazhatnak (merevlemezek és flash memória alapú eszközök).

A tervezés egyik követelménye volt az egyetlen hibapont hiánya és a tárolás magas megbízhatóságának biztosítása — a hirtelen áramkimaradások nem okozhatják a fájlrendszer sérülését, és a fájlok nem lehetnek részlegesen írva (csak teljesen írt fájlok érhetők el olvasásra). A rendszer ellenálló a különböző tárolók, metainformációs csomópontok és tárolócsomópontok meghibásodásával szemben. A tároló karbantartása leállítás nélkül elvégezhető.

A TernFS alapú tároló bevezetése az XTX Markets cégnél 2023 nyarán kezdődött, másfél évnyi a fájlrendszer fejlesztése után. 2024 közepére az XTX Markets összes gépi tanulási rendszere átkerült a TernFS-re. Jelenleg a tároló több mint 30 ezer merevlemezt és 10 ezer flash tárolót foglal magában, amelyek három adatközpontban helyezkednek el. A tárolt adatok összkapacitása 500 petabátra becsülhető, a csúcsteljesítménye pedig több petabájt másodpercenként. A tárolót egy több mint 100 ezer számítási csomópontból álló klaszter használja. Az utolsó két év üzemeltetése alatt adatvesztéssel járó incidensek nem fordultak elő.

A TernFS korlátozásai közé tartozik: a rögzített fájlok nem módosíthatók; alacsony hatékonyság a 2 MB-nál kisebb fájlokkal; alacsony teljesítmény a könyvtárak létrehozása és törlése során; a hozzáférési jogok elválasztásának hiánya.

A TernFS tárolóklauster összetevői:

  • Metaadat-tároló csomópontok, amelyek a könyvtárstruktúrával és a fájlattribútumokkal kapcsolatos információk kezeléséért felelősek.
  • Munkakapcsolati csomópontok (CDC - Cross-Directory Coordinator), amelyek különböző könyvtárakat átfogó tranzakciókat hajtanak végre.
  • Tárolószolgáltatások, amelyek a fájlok tartalmának tárolását biztosítják.
  • Nyilvántartás, amely információkat tartalmaz az összes többi szolgáltatásról, és figyelemmel kíséri azokat.
  • Felhasználói hozzáférési szolgáltatások a fájlrendszerhez:
    • ternweb - hozzáférés a tárolóhoz Web API-n keresztül.
    • terncli - parancssori felület.
    • ternfs.ko - Linux kernel modul, amely lehetővé teszi a tároló csatlakoztatását lokális fájlrendszerként való működéshez.
    • ternfuse - a FUSE alrendszert használó fájlrendszerrel való interakciót megvalósító kliens.
    • terns3 - Amazon S3 API megvalósítása.
  • Háttérfolyamatok:
    • GC - szemétgyűjtő, amely felszabadítja a lejárt pillanatképeket (törölt, de nem tisztított fájlok) és megtisztítja az irreverzibilisen törölt fájlok blokkjait.
    • scrubber - a fájlok adatromlásának és helyreállításának azonosítása.
    • migrator - a tárolóból hibás lemezek eltávolítása.

Megnyílt a TernFS elosztott fájlrendszer forráskódja


Forrás: opennet.ru
Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster