Emmagatzematge descentralitzat LF transferit a una llicència oberta

LF 1.1.0, un magatzem de dades de clau/valor descentralitzat i replicat, ja està disponible. El projecte està desenvolupat per ZeroTier, que està desenvolupant un commutador Ethernet virtual que permet combinar amfitrions i màquines virtuals ubicades a diferents proveïdors en una xarxa local virtual, els participants de la qual intercanvien dades en mode P2P. El codi del projecte està escrit en llenguatge C. La nova versió destaca per la seva transició a la llicència gratuïta MPL 2.0 (Mozilla Public License).

Anteriorment, el codi LF estava disponible sota una llicència BSL (Business Source License), que no és gratuïta a causa de la discriminació contra determinades categories d'usuaris. La llicència BSL va ser proposada pels cofundadors de MySQL com una alternativa al model Open Core. L'essència de BSL és que el codi de funcionalitat avançada està inicialment disponible per a la modificació, però durant algun temps només es pot utilitzar de forma gratuïta si es compleixen condicions addicionals, que requereixen la compra d'una llicència comercial per evitar-la.

LF és un sistema completament descentralitzat i us permet desplegar un únic magatzem de dades en un format clau-valor a sobre d'un nombre arbitrari de nodes. Les dades es mantenen sincronitzades a tots els nodes i tots els canvis es reprodueixen completament en tots els nodes. Tots els nodes de LF són iguals entre si. L'absència de nodes separats que coordin el funcionament de l'emmagatzematge permet desfer-se d'un únic punt de fallada, i la presència d'una còpia completa de les dades a cada node elimina la pèrdua d'informació quan els nodes individuals fallen o es desconnecten.

Per connectar un nou node a la xarxa, no cal obtenir permisos separats: qualsevol pot iniciar el seu propi node. El model de dades de LF es basa en un gràfic acíclic dirigit (DAG), que simplifica la sincronització i permet una varietat d'estratègies de seguretat i resolució de conflictes. A diferència dels sistemes de taula hash distribuïda (DHT), l'arquitectura IF està dissenyada inicialment per utilitzar-se en xarxes poc fiables on no es garanteix la disponibilitat constant de nodes. Entre les àrees d'aplicació de l'LF, s'esmenta la creació dels sistemes d'emmagatzematge més supervivents, en els quals s'emmagatzemen volums relativament petits de dades crítiques que rarament canvien. Per exemple, LF és adequat per a magatzems de claus, certificats, paràmetres d'identitat, fitxers de configuració, hash i noms de domini.

Per protegir-se de la sobrecàrrega i l'abús, s'aplica un límit a la intensitat de les operacions d'escriptura a l'emmagatzematge compartit, implementat sobre la base d'una prova de treball; per poder desar dades, un participant de la xarxa d'emmagatzematge ha de completar un determinat tasca, que es verifica fàcilment, però requereix grans recursos computacionals (similar a organitzar l'expansió de sistemes basats en blockchain i CRDT). Els valors calculats també s'utilitzen com a senyal a l'hora de resoldre conflictes.

Com a alternativa, es pot llançar una autoritat de certificació a la xarxa per emetre certificats criptogràfics als participants, donant dret a afegir registres sense confirmació del treball i donant prioritat a la resolució de conflictes. Per defecte, l'emmagatzematge està disponible sense restriccions per connectar cap participant, però opcionalment, basant-se en un sistema de certificats, es poden crear emmagatzematges privats tancats, en els quals només es poden convertir nodes certificats pel propietari de la xarxa.

Característiques principals de LF:

  • Fàcil d'implementar el vostre propi emmagatzematge i connectar-vos a les xarxes d'emmagatzematge públic existents.
  • No hi ha un únic punt de falla i la capacitat d'implicar tothom en el manteniment de l'emmagatzematge.
  • Accés d'alta velocitat a totes les dades i la possibilitat d'accedir a les dades que queden al seu node, fins i tot després d'una interrupció en la connectivitat de la xarxa.
  • Un model de seguretat universal que permet combinar diversos mecanismes de resolució de conflictes (heurística local, pes en funció del treball realitzat, tenint en compte el nivell de confiança d'altres nodes, certificats).
  • Una API flexible per consultar dades que permet especificar diverses claus imbricades o intervals de valors. Capacitat d'enllaçar diversos valors a una clau.
  • Totes les dades s'emmagatzemen en forma xifrada, incloses les claus, i es verifiquen. El sistema es pot utilitzar per organitzar l'emmagatzematge de dades confidencials en nodes no fiables. Els registres dels quals no es coneixen les claus no es poden determinar per força bruta (sense conèixer la clau, és impossible obtenir les dades associades a ella).

Les limitacions inclouen un enfocament en l'emmagatzematge de dades petites i que rarament canvien, l'absència de bloquejos i la coherència de les dades garantida, requisits elevats de CPU, memòria, espai de disc i amplada de banda i un augment constant de la mida d'emmagatzematge al llarg del temps.

Font: opennet.ru

Afegeix comentari