Eduard Şişkin
Printre inovațiile dezvoltate recent, furnizarea de
oportunitatea pentru utilizator de a adăuga un mic de înaltă performanță
blocați dispozitivul (de exemplu, NVRAM) apelat
volum logic relativ mare compus din lente
unități bugetare. Acest lucru va crea impresia că toate
volumul este compus din aceleași scumpe de înaltă performanță
dispozitive, cum ar fi un „disc proxy”.
Metoda implementată s-a bazat pe observația simplă că, în practică, discul nu este scris în mod constant, iar curba de încărcare I/O are forma unor vârfuri. În intervalul dintre astfel de „vârfuri”, este întotdeauna posibil să resetați datele de pe discul proxy, rescriind toate datele (sau doar o parte) în fundal în stocarea principală, „lentă”. Astfel, discul proxy este întotdeauna gata să primească o nouă porțiune de date.
Această tehnică (cunoscută sub numele de Burst Buffers) a apărut inițial în
domenii de calcul de înaltă performanță (HPC). Dar s-a dovedit a fi solicitat și pentru aplicațiile obișnuite, în special pentru cele care impun cerințe sporite integrității datelor (de obicei diverse tipuri de baze de date). Astfel de aplicații efectuează orice modificări în orice fișier într-un mod atomic, și anume:
Eliberează blocurile ocupate de date vechi.
Toți acești pași, într-o măsură sau alta, cauzează semnificative
degradarea performanței pe orice sistem de fișiere. Situatie
se îmbunătățește dacă noul fișier este scris mai întâi în cel alocat
dispozitiv de înaltă performanță, care este exact ceea ce se întâmplă în
sistem de fișiere cu suport Burst Buffers.
În Reiser5 este planificat să trimită opțional nu numai
noi blocuri logice ale fișierului, dar și toate paginile murdare în general. În plus,
nu numai pagini cu date, ci și cu metadate care
sunt scrise în pașii (2) și (3).
Suportul pentru discurile proxy se realizează în contextul lucrului obișnuit cu
Reiser5 volume logice,
sistemul agregat „disc proxy - stocare principală” este normal
volum logic, singura diferență fiind că discul proxy are prioritate
printre alte componente de volum din politica de alocare a adreselor de disc.
Adăugarea unui disc proxy la un volum logic nu este însoțită de niciunul
reechilibrarea datelor, iar eliminarea acesteia are loc exact în același mod ca
scoaterea unui disc obișnuit. Toate operațiunile de disc proxy sunt atomice.
Gestionarea erorilor și implementarea sistemului (inclusiv după o blocare a sistemului) are loc exact în același mod ca și când discul proxy ar fi o componentă obișnuită
volum logic.
După adăugarea unui disc proxy, capacitatea totală a volumului logic
crește cu capacitatea acestui disc. Monitorizare spațiu liber
discul proxy este realizat în același mod ca și pentru alte componente de volum, de exemplu. folosind utilitarul volum.reiser4(8).
Discul proxy trebuie curățat periodic, adică. resetați datele de la
acesta la depozitul principal. După atingerea stabilității beta Reiser5
curățarea este planificată să fie automată (va fi gestionată de
fir nucleu special). În această etapă, responsabilitatea pentru curățare
revine utilizatorului. Resetarea datelor de pe discul proxy pe cel principal
stocarea este produsă prin simpla apelare a utilitarului volume.reiser4 cu opțiunea
„-b”. Ca argument, trebuie să specificați punctul de montare al logicii
volume Desigur, trebuie să vă amintiți să efectuați curățarea periodic. Pentru
Puteți scrie un script shell simplu pentru a face acest lucru.
Dacă nu există spațiu liber pe discul proxy, toate datele
sunt scrise automat în memoria principală. În același timp, implicit
performanța generală a FS este redusă (datorită apelurilor constante
procedurile de angajare a tuturor tranzacţiilor existente). Opțional puteți seta
modul fără pierderi de performanță. Cu toate acestea, în acest caz, discul
Spațiul dispozitivului proxy va fi utilizat mai puțin eficient.
Este convenabil să utilizați o subsecțiune de metadate (cărămidă) ca disc proxy, cu condiția ca aceasta să fie creată pe un dispozitiv bloc suficient de performant.
Sursa: opennet.ru