Decentralizirano shranjevanje LF je bilo preneseno na odprto licenco

LF 1.1.0, decentralizirana, podvojena shramba podatkov ključ/vrednost, je zdaj na voljo. Projekt razvija ZeroTier, ki razvija navidezno ethernet stikalo, ki omogoča združevanje gostiteljev in navideznih strojev, ki se nahajajo pri različnih ponudnikih, v eno navidezno lokalno omrežje, katerega udeleženci izmenjujejo podatke v načinu P2P. Koda projekta je napisana v jeziku C. Nova izdaja je znana po prehodu na brezplačno licenco MPL 2.0 (Mozilla Public License).

Prej je bila koda LF na voljo pod licenco BSL (Business Source License), ki ni brezplačna zaradi diskriminacije določenih kategorij uporabnikov. Licenco BSL so predlagali soustanovitelji MySQL kot alternativo modelu Open Core. Bistvo BSL je v tem, da je koda napredne funkcionalnosti na začetku na voljo za spreminjanje, nekaj časa pa jo je mogoče uporabljati brezplačno le ob izpolnjevanju dodatnih pogojev, ki za obhod zahtevajo nakup komercialne licence.

LF je popolnoma decentraliziran sistem in omogoča namestitev ene same podatkovne shrambe v formatu ključ-vrednost na vrhu poljubnega števila vozlišč. Podatki so sinhronizirani v vseh vozliščih in vse spremembe se v celoti ponovijo v vseh vozliščih. Vsa vozlišča v LF so med seboj enaka. Odsotnost ločenih vozlišč, ki usklajujejo delovanje pomnilnika, vam omogoča, da se znebite ene same točke okvare, prisotnost popolne kopije podatkov na vsakem vozlišču pa odpravlja izgubo informacij, ko posamezna vozlišča odpovejo ali so prekinjena.

Če želite novo vozlišče povezati z omrežjem, vam ni treba pridobiti ločenih dovoljenj – vsak lahko zažene svoje vozlišče. Podatkovni model LF je zgrajen okoli usmerjenega acikličnega grafa (DAG), ki poenostavlja sinhronizacijo in omogoča različne rešitve konfliktov in varnostne strategije. Za razliko od sistemov porazdeljene razpršitvene tabele (DHT) je arhitektura IF prvotno zasnovana za uporabo v nezanesljivih omrežjih, kjer stalna razpoložljivost vozlišč ni zagotovljena. Med področji uporabe LF je omenjeno ustvarjanje najbolj vzdržljivih sistemov za shranjevanje, v katerih so shranjene relativno majhne količine kritičnih podatkov, ki se redko spreminjajo. LF je na primer primeren za shrambe ključev, certifikate, parametre identitete, konfiguracijske datoteke, zgoščene vrednosti in imena domen.

Za zaščito pred preobremenitvijo in zlorabo velja omejitev intenzivnosti zapisovanja v skupni pomnilnik, izvedena na podlagi dokazila o delu – da lahko udeleženec v pomnilniškem omrežju shrani podatke, mora opraviti določeno nalogo, ki je enostavno preverljiva, vendar zahteva velike vire pri izračunu (podobno kot pri organizaciji širitve sistemov, ki temeljijo na blockchainu in CRDT). Izračunane vrednosti se uporabljajo tudi kot znak pri reševanju konfliktov.

Kot alternativo se lahko v omrežju zažene overitelj potrdil, ki udeležencem izdaja kriptografska potrdila, ki dajejo pravico do dodajanja zapisov brez potrditve dela in dajejo prednost pri reševanju konfliktov. Shramba je privzeto na voljo brez omejitev za povezovanje poljubnih udeležencev, opcijsko pa je mogoče na podlagi sistema certifikatov ustvariti ograjene zasebne shrambe, v katerih lahko postanejo udeleženci samo vozlišča, ki jih je certificiral lastnik omrežja.

Glavne značilnosti LF:

  • Preprosta uvedba lastnega pomnilnika in povezovanje z obstoječimi javnimi omrežji za shranjevanje.
  • Ni ene same točke neuspeha in možnost vključitve vseh v vzdrževanje shranjevanja.
  • Visokohitrosten dostop do vseh podatkov in možnost dostopa do podatkov, ki so ostali na njegovem vozlišču, tudi po prekinitvi omrežne povezave.
  • Univerzalni varnostni model, ki omogoča kombiniranje različnih mehanizmov reševanja konfliktov (lokalna hevristika, utež na podlagi opravljenega dela, upoštevanje stopnje zaupanja drugih vozlišč, certifikati).
  • Prilagodljiv API za poizvedovanje po podatkih, ki omogoča določanje več ugnezdenih ključev ali obsegov vrednosti. Sposobnost vezave več vrednosti na en ključ.
  • Vsi podatki so shranjeni v šifrirani obliki, vključno s ključi, in preverjeni. Sistem se lahko uporablja za organizacijo shranjevanja zaupnih podatkov na vozliščih, ki niso vredna zaupanja. Zapisov, za katere ključi niso znani, ni mogoče določiti s surovo silo (brez poznavanja ključa je nemogoče pridobiti z njim povezane podatke).

Omejitve vključujejo osredotočenost na shranjevanje majhnih, redko spreminjajočih se podatkov, odsotnost zaklepanja in zajamčeno konsistentnost podatkov, visoke zahteve glede procesorja, pomnilnika, prostora na disku in pasovne širine ter nenehno povečevanje velikosti pomnilnika skozi čas.

Vir: opennet.ru

Dodaj komentar