Decentraliseret LF-lager er blevet overført til en åben licens

LF 1.1.0, et decentraliseret, replikeret nøgle/værdi datalager, er nu tilgængelig. Projektet udvikles af ZeroTier, som udvikler en virtuel Ethernet-switch, der giver dig mulighed for at kombinere værter og virtuelle maskiner placeret hos forskellige udbydere i ét virtuelt lokalt netværk, hvor deltagerne udveksler data i P2P-tilstand. Projektkoden er skrevet i C-sprog. Den nye udgivelse er kendt for sin overgang til den gratis MPL 2.0-licens (Mozilla Public License).

Tidligere var LF-koden tilgængelig under en BSL (Business Source License), som ikke er gratis på grund af diskrimination mod visse kategorier af brugere. BSL-licensen blev foreslået af medstifterne af MySQL som et alternativ til Open Core-modellen. Essensen af ​​BSL er, at koden for avanceret funktionalitet i første omgang er tilgængelig for ændring, men i nogen tid kun kan bruges gratis, hvis yderligere betingelser er opfyldt, som kræver køb af en kommerciel licens for at omgå.

LF er et fuldstændig decentraliseret system og giver dig mulighed for at implementere et enkelt datalager i et nøgleværdiformat oven på et vilkårligt antal noder. Data holdes synkroniseret på tværs af alle noder, og alle ændringer replikeres fuldt ud på tværs af alle noder. Alle noder i LF er ens med hinanden. Fraværet af separate noder, der koordinerer driften af ​​lageret, giver dig mulighed for at slippe af med et enkelt fejlpunkt, og tilstedeværelsen af ​​en komplet kopi af dataene på hver node eliminerer tabet af information, når individuelle noder fejler eller er afbrudt.

For at forbinde en ny node til netværket behøver du ikke at opnå separate tilladelser - alle kan starte deres egen node. LFs datamodel er bygget op omkring en rettet acyklisk graf (DAG), som forenkler synkronisering og giver mulighed for en række forskellige konfliktløsnings- og sikkerhedsstrategier. I modsætning til distributed hash table (DHT)-systemer er IF-arkitekturen oprindeligt designet til brug i upålidelige netværk, hvor den konstante tilgængelighed af noder ikke er garanteret. Blandt anvendelsesområderne for LF nævnes skabelsen af ​​de mest overlevende lagersystemer, hvor der lagres relativt små mængder af kritiske data, som sjældent ændres. For eksempel er LF velegnet til nøglelagre, certifikater, identitetsparametre, konfigurationsfiler, hashes og domænenavne.

For at beskytte mod overbelastning og misbrug anvendes en grænse for intensiteten af ​​skriveoperationer til det delte lager, implementeret på grundlag af bevis for arbejde - for at kunne gemme data skal en deltager i lagernetværket gennemføre en vis opgave, som let kan verificeres, men kræver store beregningsressourcer (svarende til at organisere udvidelsen af ​​systemer baseret på blockchain og CRDT). De beregnede værdier bruges også som tegn ved løsning af konflikter.

Som et alternativ kan en certifikatmyndighed lanceres på netværket til at udstede kryptografiske certifikater til deltagere, hvilket giver ret til at tilføje poster uden bekræftelse af arbejdet og prioriterer løsning af konflikter. Som standard er lageret tilgængeligt uden begrænsninger for tilslutning af eventuelle deltagere, men valgfrit, baseret på et certifikatsystem, kan der oprettes afskærmede private lager, hvor kun noder certificeret af ejeren af ​​netværket kan blive deltagere.

Hovedtræk ved LF:

  • Nemt at implementere dit eget lager og oprette forbindelse til eksisterende offentlige lagernetværk.
  • Der er ikke et enkelt point of failure og muligheden for at involvere alle i at vedligeholde lageret.
  • Højhastighedsadgang til alle data og mulighed for at få adgang til data, der er tilbage på dens node, selv efter en afbrydelse i netværksforbindelsen.
  • En universel sikkerhedsmodel, der giver dig mulighed for at kombinere forskellige konfliktløsningsmekanismer (lokal heuristik, vægt baseret på udført arbejde, under hensyntagen til tillidsniveauet for andre noder, certifikater).
  • En fleksibel API til at forespørge data, der gør det muligt at specificere flere indlejrede nøgler eller værdiområder. Evne til at binde flere værdier til en nøgle.
  • Alle data gemmes i krypteret form, inklusive nøgler, og verificeres. Systemet kan bruges til at organisere lagring af fortrolige data på utroværdige noder. Registreringer, for hvilke nøglerne ikke er kendt, kan ikke bestemmes med brute force (uden at kende nøglen er det umuligt at få de data, der er knyttet til den).

Begrænsninger omfatter fokus på lagring af små, sjældent skiftende data, fravær af låse og garanteret datakonsistens, høje krav til CPU, hukommelse, diskplads og båndbredde og en konstant stigning i lagerstørrelse over tid.

Kilde: opennet.ru

Tilføj en kommentar