METABYTE
Inapoi la articole

Eliminăm fsync: cum am făcut stocarea mai rapidă și puțin mai periculoasă

Dezvoltatorii Fractal Bits au decis că fsync este o frână și l-au scos. Ce ar putea merge prost?

9 mai 20262 min de citit
Eliminăm fsync: cum am făcut stocarea mai rapidă și puțin mai periculoasă

Dezvoltatorii de la Fractal Bits au împărtășit povestea eliminării fsync-ului din motorul lor local de stocare. Dacă ați așteptat vreodată ca baza de date să se sincronizeze cu discul, știți durerea — fsync poate fi un adevărat frână, mai ales pe discurile cloud. Echipa a decis că, pentru scenariile lor de utilizare, consistența datelor nu este la fel de critică precum viteza și pur și simplu au dezactivat sincronizarea. Rezultatul? O creștere a performanței de câteva ori. Dar, cum se spune, fără durere — fără garanții.

Ce este fsync și de ce vrei să-l omori

fsync este un apel de sistem care forțează sistemul de operare să scrie bufferele pe disc. Fără el, datele pot pluti în memorie ca șosetele într-o mașină de spălat și pot dispărea la o întrerupere bruscă de curent. Dar dacă lucrați cu date temporare sau vă puteți permite pierderea ultimelor câteva înregistrări, renunțarea la fsync oferă un câștig uriaș de viteză. Fractal Bits au mers all-in și l-au eliminat complet, bazându-se pe faptul că aplicația lor își va restabili singură starea după o repornire.

Dar siguranța?

Desigur, nu este pentru toată lumea. Dacă scrieți un sistem bancar sau înregistrări medicale, nu încercați acasă. Dar pentru baze de date analitice, cache-uri sau log-uri — de ce nu? Dezvoltatorii menționează că au adăugat verificări suplimentare de integritate și folosesc jurnalizarea pentru a minimiza riscurile. Până la urmă, motorul lor funcționează ca un „Ferrari fără frâne” — rapid și cu adrenalină.

Verdictul nostru

Povestea Fractal Bits este un exemplu excelent de cum poți sacrifica garanțiile stricte pentru viteză, dacă îți cunoști cerințele. Dar înainte de a repeta, asigurați-vă că șeful nu vă va cere să recuperați datele din backup într-o vineri seara.

Comentariul studioului METABYTE: Dacă baza de date începe să semene cu o ruletă rusească, poate ar fi bine să regândiți arhitectura. Noi vă ajutăm să găsiți echilibrul între viteză și fiabilitate, ca să nu vă treziți în sudori reci după un deploy de noapte.

URMATORUL PAS

Ti-a placut abordarea?

Aplicam aceleasi principii in proiectele clientilor: AI, automatizari, produse care nu se sting dupa lansare.