Ang desentralisadong imbakan ng LF ay inilipat sa isang bukas na lisensya

Available na ngayon ang LF 1.1.0, isang desentralisado, kinokopyang key/value data store. Ang proyekto ay binuo ng ZeroTier, na bumubuo ng isang virtual Ethernet switch na nagbibigay-daan sa iyo upang pagsamahin ang mga host at virtual machine na matatagpuan sa iba't ibang mga provider sa isang virtual na lokal na network, ang mga kalahok na nagpapalitan ng data sa P2P mode. Ang code ng proyekto ay nakasulat sa wikang C. Ang bagong release ay kapansin-pansin para sa paglipat nito sa libreng lisensya ng MPL 2.0 (Mozilla Public License).

Dati, available ang LF code sa ilalim ng BSL (Business Source License), na hindi libre dahil sa diskriminasyon laban sa ilang kategorya ng mga user. Ang lisensya ng BSL ay iminungkahi ng mga co-founder ng MySQL bilang isang alternatibo sa Open Core na modelo. Ang kakanyahan ng BSL ay ang code ng advanced na pag-andar ay magagamit sa simula para sa pagbabago, ngunit sa loob ng ilang panahon ay magagamit lamang nang walang bayad kung ang mga karagdagang kundisyon ay natutugunan, na nangangailangan ng pagbili ng isang komersyal na lisensya upang makaiwas.

Ang LF ay isang ganap na desentralisadong sistema at nagbibigay-daan sa iyong mag-deploy ng isang solong data store sa isang format ng key-value sa itaas ng isang arbitrary na bilang ng mga node. Ang data ay pinananatiling naka-synchronize sa lahat ng node, at lahat ng pagbabago ay ganap na ginagaya sa lahat ng node. Ang lahat ng mga node sa LF ay katumbas ng bawat isa. Ang kawalan ng hiwalay na mga node na nag-uugnay sa pagpapatakbo ng imbakan ay nagbibigay-daan sa iyo upang mapupuksa ang isang solong punto ng pagkabigo, at ang pagkakaroon ng isang kumpletong kopya ng data sa bawat node ay nag-aalis ng pagkawala ng impormasyon kapag ang mga indibidwal na node ay nabigo o na-disconnect.

Upang ikonekta ang isang bagong node sa network, hindi mo kailangang kumuha ng hiwalay na mga pahintulot - sinuman ay maaaring magsimula ng kanilang sariling node. Ang modelo ng data ng LF ay binuo sa paligid ng isang nakadirekta na acyclic graph (DAG), na pinapasimple ang pag-synchronize at nagbibigay-daan para sa iba't ibang paglutas ng salungatan at mga diskarte sa seguridad. Hindi tulad ng mga distributed hash table (DHT) system, ang arkitektura ng IF ay unang idinisenyo para gamitin sa mga hindi mapagkakatiwalaang network kung saan ang patuloy na pagkakaroon ng mga node ay hindi ginagarantiyahan. Kabilang sa mga lugar ng aplikasyon ng LF, ang paglikha ng mga pinaka-survivable na sistema ng imbakan ay binanggit, kung saan medyo maliit na dami ng kritikal na data ang nakaimbak na bihirang magbago. Halimbawa, ang LF ay angkop para sa mga pangunahing tindahan, mga sertipiko, mga parameter ng pagkakakilanlan, mga file ng pagsasaayos, mga hash at mga pangalan ng domain.

Upang maprotektahan laban sa labis na karga at pang-aabuso, ang isang limitasyon sa intensity ng mga operasyon sa pagsulat sa nakabahaging imbakan ay inilalapat, na ipinatupad batay sa patunay ng trabaho - upang makapag-save ng data, ang isang kalahok sa network ng imbakan ay dapat kumpletuhin ang isang tiyak gawain, na madaling ma-verify, ngunit nangangailangan ng malalaking mapagkukunan kapag nagkalkula (katulad ng pag-aayos ng pagpapalawak ng mga system batay sa blockchain at CRDT). Ang mga kinakalkula na halaga ay ginagamit din bilang isang palatandaan kapag niresolba ang mga salungatan.

Bilang kahalili, maaaring ilunsad ang isang awtoridad ng sertipiko sa network upang mag-isyu ng mga cryptographic na sertipiko sa mga kalahok, na nagbibigay ng karapatang magdagdag ng mga talaan nang walang kumpirmasyon ng trabaho at pagbibigay ng priyoridad sa paglutas ng mga salungatan. Bilang default, ang imbakan ay magagamit nang walang mga paghihigpit para sa pagkonekta sa sinumang kalahok, ngunit opsyonal, batay sa isang sistema ng sertipiko, ang mga nabakuran na pribadong imbakan ay maaaring gawin, kung saan ang mga node lamang na na-certify ng may-ari ng network ang maaaring maging mga kalahok.

Mga pangunahing tampok ng LF:

  • Madaling i-deploy ang iyong sariling storage at kumonekta sa mga umiiral nang pampublikong storage network.
  • Walang iisang punto ng kabiguan at ang kakayahang isali ang lahat sa pagpapanatili ng imbakan.
  • Mataas na bilis ng pag-access sa lahat ng data at ang kakayahang ma-access ang data na natitira sa node nito, kahit na pagkatapos ng pagkagambala sa pagkakakonekta sa network.
  • Isang unibersal na modelo ng seguridad na nagbibigay-daan sa iyo upang pagsamahin ang iba't ibang mga mekanismo ng paglutas ng salungatan (lokal na heuristics, timbang batay sa nakumpletong trabaho, isinasaalang-alang ang antas ng tiwala ng iba pang mga node, mga sertipiko).
  • Isang flexible na API para sa pag-query ng data na nagbibigay-daan sa maraming nested key o mga hanay ng halaga na matukoy. Kakayahang magbigkis ng maramihang mga halaga sa isang susi.
  • Ang lahat ng data ay naka-imbak sa naka-encrypt na form, kabilang ang mga susi, at na-verify. Maaaring gamitin ang system upang ayusin ang pag-iimbak ng kumpidensyal na data sa mga hindi mapagkakatiwalaang node. Ang mga rekord kung saan ang mga susi ay hindi kilala ay hindi maaaring matukoy sa pamamagitan ng malupit na puwersa (nang hindi nalalaman ang susi, imposibleng makuha ang data na nauugnay dito).

Kasama sa mga limitasyon ang pagtutok sa pag-iimbak ng maliit, bihirang pagbabago ng data, kawalan ng mga lock at garantisadong pagkakapare-pareho ng data, mataas na kinakailangan para sa CPU, memorya, espasyo sa disk at bandwidth, at patuloy na pagtaas ng laki ng storage sa paglipas ng panahon.

Pinagmulan: opennet.ru

Magdagdag ng komento