Web3 yra daug dalykų, bet tai nėra lengva. Tai ypač pasakytina apie kūrėjus, kurie nuolat susiduria su iš pažiūros neįmanoma užduotimi vienu metu optimizuoti priešingus rezultatus. Pavyzdžiui, kurti blokų grandinės programas, kurios yra labai decentralizuotos, su duomenimis, saugomais kuo daugiau mazgų, bet ir greičiau nei bet kas kada nors sukurta.
Tai prilygsta prašymui sukurti lengvą ir itin patogų automobilį. Vieno požymio tobulinimas paprastai nulemia kito ir atvirkščiai. Tačiau web3 kūrėjai neįstojo į pramonę, nes norėjo išgyventi savo dienas lengvuoju režimu, koduodami vos patobulintas esamų sprendimų iteracijas. Ambicingi kūrėjai džiaugiasi iššūkiu, kai jų prašoma paspartinti „blockchain“ technologijos galimybes, ir tai nėra daug sunkesnė nei decentralizuotos saugyklos trilemos nulaužimas.
Ši mažai žinoma, bet labai pamokanti taisyklė teigia, kad labai sudėtinga sukurti web3 saugyklos sluoksnius, kurie vienu metu pasiektų šiuos dalykus: mastelio keitimą, atsitiktinę prieigą ir protingą sutarčių integravimą. Norint nustatyti, kodėl ši mįslė yra svarbi ir kaip galima išspręsti šią trilemą, reikia aiškiai paaiškinti. Taigi paaiškinkime.
1 tikslas: mastelio keitimas
Nors originalią „blockchain“ trilemą, apibūdinančią tinklo optimizavimo sudėtingumą, kad būtų užtikrintas mastelio keitimas, saugumas ir decentralizavimas, sugalvojo Vitalikas Buterinas, mažiau aišku, kas sukūrė jos blokų grandinės saugyklos atitikmenį. Nepriklausomai nuo kūrėjo, jis vadovaujasi ta pačia 2 iš 3 formule: pasiekti mastelio, atsitiktinės prieigos ir išmaniosios sutarties integravimo vienu metu yra labai sunku.
Lengviausia iš šių sąvokų vizualizuoti yra susijusi su mastelio keitimu: tai yra, žiniatinklio 3 saugyklos sluoksnių mastelio keitimas, kad būtų galima laikyti vis didesnį duomenų kiekį. Teoriškai duomenų, kuriuos gali laikyti išlikę web3 saugyklos sluoksniai, viršutinių ribų nėra: sunku tai padaryti neįvedant delsos.
Decentralizuotose saugojimo sistemose duomenys paprastai atkartojami keliuose mazguose, kad būtų užtikrintas dubliavimas ir pasiekiamumas. Kad pasiektų eksabaitų masto saugyklą, sistema turi iki minimumo sumažinti pridėtines išlaidas, kurias sukelia duomenų dubliavimas, nepakenkiant patikimumui. Didėjant saugyklos tinklui, vis daugiau mazgų turės apdoroti didėjantį duomenų ir operacijų kiekį. Tačiau didelis tinklo delsos laikas ir ribotas pralaidumas tarp mazgų gali sulėtinti duomenų gavimą ir padidinti išlaidas. Matote, niekas nesakė, kad tai lengva.
2 tikslas: atsitiktinė prieiga
Atsitiktinė prieiga reiškia galimybę beveik akimirksniu gauti bet kokius duomenis, kad ir kur jie būtų saugomi decentralizuotame tinkle. Kadangi žiniatinklio 3 duomenys dažnai suskaidomi į gabalus ir saugomi įvairiuose mazguose, efektyviai gauti tam tikrą duomenų dalį yra sunku, ypač didėjant duomenų rinkinio dydžiui. Iššūkis yra išlaikyti greitą paieškos ir gavimo laiką, nereikalaujant centralizuotų indeksų ir neaukojant decentralizacijos.
Sukurti decentralizuotas saugojimo sistemas, kurios palaiko sudėtingas užklausas neįvedant centralizacijos, yra sudėtinga, nes web3 neturi reliacinių duomenų bazių ir sudėtingų indeksavimo sistemų, kurios yra prieinamos web2 platformoms. Šią problemą dar labiau apsunkina tai, kad duomenų vientisumui patikrinti naudojami sutarimo mechanizmai gali vėluoti prieigai prie duomenų realiuoju laiku, o tai gali sukelti iššūkių įtaisams, kuriems reikalinga momentinė sąveika.
3 tikslas: Sumanus sutarčių integravimas
Paskutinis iššūkis kuriant web3 saugyklos sluoksnį yra užtikrinti, kad jis sklandžiai veiktų su išmaniosiomis sutartimis, kurias vykdo 1 arba L2 tinkle veikiančios dapps. Jei išmaniosios sutartys dažnai pateikia užklausas dėl didelių duomenų rinkinių, šių operacijų kaina gali tapti pernelyg didelė. Taigi optimizavimas yra būtinas norint sumažinti grandininių operacijų skaičių, reikalingą prieigai prie duomenų, kad mokesčiai už dujas būtų kuo mažesni.
Kai duomenų sluoksnis gali sklandžiai integruotis su išmaniosiomis sutartimis, dalijasi ta pačia programavimo kalba ir galimybe nukreipti savo duomenis per esamus blokų grandinės RPC mazgus, delsa sumažinama iki minimumo. Tuo tarpu „Dapp“ kūrėjai gali lengvai pasiekti didžiulius duomenų kiekius, neįstrigo integruodami nevietinius sprendimus, kuriems reikia kruopštaus konfigūravimo ir priežiūros. Kai duomenų sluoksnis savaime veikia su išmaniosiomis sutartimis, viskas tampa lengviau.
Kaip arti mes pasiekiame „blockchain“ saugojimo trilemą?
Dabartinės web3 duomenų saugojimo sluoksnių pažangos nustatymas labai priklauso nuo atitinkamo tinklo. Kadangi norint dar kartą nurodyti trečiąjį tikslą, idealus duomenų sluoksnis yra optimizuotas tam tikro blokų grandinės tinklo programavimo kalbai ir išmaniosioms sutartims. Kitaip tariant, tai, kas tinka „Polkadot“, nelabai veiks „Ethereum“.
„Solana“ sistemoje „Xandeum“ mano, kad išsprendė saugojimo trilemą, įdiegusi „Buckets“ – decentralizuotą failų sistemą, prijungtą prie specialių RPC mazgų, suteikiančią išmaniosioms sutartims prieigą prie praktiškai neriboto duomenų kiekio. Mastelio keitimo komponentas yra tinkamai padengtas suteikiant eksabaitų duomenų – 100 kartų daugiau nei siūlo dabartiniai sprendimai, tuo tarpu užtikrinama atsitiktinė prieiga, suteikianti aiškų pranašumą prieš duomenų sluoksnius, kurie suteikia prieigą tik failo lygiu.
Nors „Xandeum“ yra patraukli parinktis „Solana“ kūrėjams, kaip apie web3 projektus, veikiančius likusioje daugiagrandinėje aplinkoje? Šiuo metu „web3“ saugyklos sluoksniai yra beveik pasirengę atlikti savo užduotį. Tačiau netolimoje ateityje dėl sparčiai didėjančių dapps poreikių, ypač susijusių su AI išvadomis ir LLM, reikės daug daugiau duomenų, nei šiuo metu gali pasiūlyti decentralizuota saugykla.
Saugyklos atsiejimas nuo „blockchain“ sluoksnio yra prasmingas, nes tai leidžia „blockchain“ tvarkyti valdymą, paskatas ir metaduomenis, o saugyklos sluoksnis sutelkia dėmesį tik į didelių duomenų rinkinių valdymą ir gavimą. Iššūkis kyla bandant paskirstyti duomenis keliuose mazguose išlaikant pasiekiamumą.
Web3 nuolatos ieško kitos viršūnės, kurią galėtų užkariauti. Spręsdamas decentralizuotos saugyklos Gordijaus mazgo problemą, jis susiduria su sunkiausiu kol kas iššūkiu. Niekas nesakė, kad web3 sprendimų projektavimas yra paprastas. Tačiau už tai, kad patenkinti naujos kartos decentralizuotų programų keliamus reikalavimus, visa tai bus naudinga.