Sistema de fitxers Reiser5 disponible

Disponible Per provar, el sistema de fitxers Reiser5 amb suport per a volums lògics a la màquina local. La principal innovació és l'escalat paral·lel (escalat vertical), que no es realitza a nivell de bloc, sinó mitjançant el sistema de fitxers.

Com a avantatge d'aquest enfocament, s'afirma que no hi ha desavantatges inherents a les combinacions FS+RAID/LVM i als sistemes de fitxers no paral·lels (ZFS, Btrfs), com ara el problema de l'espai lliure, la degradació del rendiment quan s'omple el volum. més del 70%, algorismes obsolets per organitzar volums lògics (RAID/LVM), que no permeten una distribució eficient de dades en un volum lògic. En un FS paral·lel, abans d'afegir un dispositiu a un volum lògic, s'ha de formatar mitjançant la utilitat mkfs estàndard.

Reiser5 utilitza un assignador de blocs lliure O(1). El cost màxim de qualsevol operació de cerca de blocs gratuïta no depèn de la mida del volum lògic. És possible muntar de manera senzilla i eficient un volum lògic des de dispositius de bloc de diferents mides i amplades de banda. La distribució de dades a través d'aquests dispositius es produeix mitjançant nous algorismes (l'anomenat "fibre striping") proposat pel matemàtic i programador rus Eduard Shishkin.

La part de les sol·licituds d'E/S dirigides a cada dispositiu és igual a la seva capacitat relativa assignada per l'usuari, de manera que el volum lògic s'omple de dades "de manera uniforme" i "just". Al mateix temps, els dispositius de bloc amb menor capacitat reben menys blocs per a l'emmagatzematge i els dispositius amb una amplada de banda inferior no es converteixen en un "coll d'ampolla" (com passa, per exemple, a les matrius RAID).

L'addició d'un dispositiu a un volum i l'eliminació d'un dispositiu d'un volum s'acompanya d'un reequilibri, que preserva la "equitat" de la distribució. En aquest cas, la part de les dades migrades també és igual a la capacitat relativa del dispositiu que s'afegeix (elimina). La velocitat de migració de les dades no fragmentades és propera a la velocitat d'escriptura al disc. És possible mantenir simultàniament tots els dispositius de bloc inclosos en un volum lògic, utilitzant un enfocament individual per a cadascun d'ells (desfragmentació per a HDD, emissió de sol·licituds de descart per a SSD, etc.). L'espai lliure en un volum lògic es supervisa mitjançant la utilitat estàndard df(1). A més, l'usuari té l'oportunitat de controlar l'espai lliure de cada dispositiu component del volum lògic.

Totes les operacions amb volums lògics (afegir, eliminar dispositius, etc.) són atòmiques i s'implementen mitjançant eines estàndard per treballar amb transaccions a Reiser4. El correcte "desplegament" del volum després d'una operació tan interrompuda està regulat per instruccions. De moment, Reiser5 encara no disposa d'eines per gestionar els volums fora de línia (muntats), de manera que els usuaris estan convidats a emmagatzemar i actualitzar de manera independent les configuracions dels seus volums lògics de moment. Aquesta configuració es pot preparar fàcilment per a un volum muntat mitjançant la utilitat de volum lògic inclosa al paquet reiser4progs.

Del previst:

  • Distribució de metadades en diversos subvolums;
  • Comprovació/recuperació de volums lògics mitjançant la utilitat fsck (actualitzant la seva versió antiga);
  • Control personalitzat de la distribució i migració transparent de dades, que és de gran importància per a les aplicacions HPC (Burst Buffers);
  • Sumes de comprovació de dades i metadades;
  • Imatges en 3D de volums lògics amb la possibilitat de revertir no només les operacions de fitxers habituals, sinó també les operacions sobre els volums (com ara afegir i eliminar dispositius);
  • Volums globals (de xarxa) que agrupen dispositius en diferents màquines.

Font: opennet.ru

Afegeix comentari