Stocarea LF descentralizată a fost transferată într-o licență deschisă

LF 1.1.0, un depozit de date cheie/valoare descentralizat, replicat, este acum disponibil. Proiectul este dezvoltat de ZeroTier, care dezvoltă un switch Ethernet virtual care vă permite să combinați gazde și mașini virtuale situate la diferiți furnizori într-o singură rețea locală virtuală, participanții cărora fac schimb de date în modul P2P. Codul proiectului este scris în limbaj C. Noua versiune se remarcă prin tranziția la licența gratuită MPL 2.0 (Mozilla Public License).

Anterior, codul LF era disponibil sub o licență BSL (Business Source License), care nu este gratuită din cauza discriminării anumitor categorii de utilizatori. Licența BSL a fost propusă de co-fondatorii MySQL ca alternativă la modelul Open Core. Esența BSL este că codul de funcționalitate avansată este inițial disponibil pentru modificare, dar de ceva timp poate fi folosit gratuit doar dacă sunt îndeplinite condiții suplimentare, care necesită achiziționarea unei licențe comerciale pentru a o eluda.

LF este un sistem complet descentralizat și vă permite să implementați un singur depozit de date într-un format cheie-valoare deasupra unui număr arbitrar de noduri. Datele sunt menținute sincronizate între toate nodurile și toate modificările sunt replicate complet în toate nodurile. Toate nodurile din LF sunt egale între ele. Absența nodurilor separate care coordonează funcționarea stocării vă permite să scăpați de un singur punct de defecțiune, iar prezența unei copii complete a datelor pe fiecare nod elimină pierderea de informații atunci când nodurile individuale eșuează sau sunt deconectate.

Pentru a conecta un nou nod la rețea, nu trebuie să obțineți permisiuni separate - oricine își poate începe propriul nod. Modelul de date al lui LF este construit în jurul unui grafic aciclic direcționat (DAG), care simplifică sincronizarea și permite o varietate de strategii de soluționare a conflictelor și de securitate. Spre deosebire de sistemele DHT (Distributed Hash Table), arhitectura IF este inițial concepută pentru a fi utilizată în rețele nefiabile în care disponibilitatea constantă a nodurilor nu este garantată. Dintre domeniile de aplicare ale LF se menționează crearea celor mai supraviețuitoare sisteme de stocare, în care sunt stocate volume relativ mici de date critice care se modifică rar. De exemplu, LF este potrivit pentru depozite de chei, certificate, parametri de identitate, fișiere de configurare, hashuri și nume de domenii.

Pentru a proteja împotriva supraîncărcării și abuzului, se aplică o limită a intensității operațiunilor de scriere în stocarea partajată, implementată pe baza dovezilor de lucru - pentru a putea salva date, un participant în rețeaua de stocare trebuie să finalizeze un anumit sarcină, care este ușor de verificat, dar necesită resurse mari la calcul (similar cu organizarea extinderii sistemelor bazate pe blockchain și CRDT). Valorile calculate sunt folosite și ca semn la rezolvarea conflictelor.

Ca alternativă, o autoritate de certificare poate fi lansată în rețea pentru a emite certificate criptografice participanților, dând dreptul de a adăuga înregistrări fără confirmarea lucrărilor și acordând prioritate în rezolvarea conflictelor. În mod implicit, stocarea este disponibilă fără restricții pentru conectarea oricăror participanți, dar opțional, pe baza unui sistem de certificate, pot fi create depozite private îngrădite, în care pot deveni participanți doar nodurile certificate de proprietarul rețelei.

Principalele caracteristici ale LF:

  • Ușor de implementat propriul spațiu de stocare și de conectare la rețelele publice de stocare existente.
  • Nu există un singur punct de eșec și capacitatea de a implica pe toată lumea în întreținerea stocării.
  • Acces de mare viteză la toate datele și capacitatea de a accesa datele rămase pe nodul său, chiar și după o întrerupere a conectivității la rețea.
  • Un model de securitate universal care vă permite să combinați diferite mecanisme de soluționare a conflictelor (euristică locală, pondere bazată pe munca finalizată, ținând cont de nivelul de încredere al altor noduri, certificate).
  • Un API flexibil pentru interogarea datelor care permite specificarea mai multor chei imbricate sau intervale de valori. Abilitatea de a lega mai multe valori la o singură cheie.
  • Toate datele sunt stocate în formă criptată, inclusiv cheile, și verificate. Sistemul poate fi folosit pentru a organiza stocarea datelor confidențiale pe noduri nedemne de încredere. Înregistrările pentru care cheile nu sunt cunoscute nu pot fi determinate prin forță brută (fără cunoașterea cheii este imposibil să se obțină datele asociate acesteia).

Limitările includ concentrarea pe stocarea datelor mici, care se schimbă rar, absența blocărilor și a consistenței garantate a datelor, cerințe ridicate pentru CPU, memorie, spațiu pe disc și lățime de bandă și o creștere constantă a dimensiunii stocării în timp.

Sursa: opennet.ru

Adauga un comentariu