Kas yra skaidymas ir kaip tai veikia?
Pradžia
Straipsniai
Kas yra skaidymas ir kaip tai veikia?

Kas yra skaidymas ir kaip tai veikia?

Paskelbta Dec 4, 2023Naujinta Jan 11, 2024
9m

Trumpai

  • Skaidymas leidžia padalinti blokų grandinę į mažesnes dalis tam, kad būtų pašalinta su 1 sluoksnio tinklais susijusi išplečiamumo problema.

  • Skaidymas padidina operacijų atlikimo greitį, sumažina apdorojimo ir saugojimo išlaidas bei pagerina tinklo našumą.

  • Skaidymas taip pat turi trūkumų, pavyzdžiui, gali kilti problemų, susijusių su tinklo saugumu ir sudėtingomis kryžminio skaidymo operacijomis.

Įvadas

Blokų grandinės technologija suteikė precedento neturinčių decentralizavimo, skaidrumo ir saugumo galimybių. Tačiau ji susiduria su dideliu iššūkiu – išplečiamumo klausimu. Išplečiamumas yra vienas iš „blokų grandinės išplečiamumo trilemos“, į kurią taip pat įeina saugumas ir decentralizacija, punktų. Siekis, kad vienu metu būtų įgyvendinti visi trys punktai, išlieka aktualia blokų grandinės problema. Čia praverčia tokie strateginiai sprendimai kaip skaidymas.

Kas tai yra skaidymas?

Skaidymas – tai iš tradicinio duomenų bazių valdymo pasiskolinta sąvoka. Tai reiškia didesnės duomenų bazės skaidymo į mažesnes, lengviau valdomas dalis, vadinamas skaidiniais, procesą. Jį naudojant blokų grandinėje siekiama pagerinti jos išplečiamumą, kartu išlaikant decentralizacijos principą. Iš esmės skaidymas įvyksta, kai blokų grandinės tinklas padalinamas į keletą mažesnių dalių, kurių kiekviena gali apdoroti transakcijas ir išmaniuosius sandorius.

Kaip vyksta skaidymas?

Norint suprasti, kaip blokų grandinės tinkle vykdomas skaidymas, reikia suprasti, kaip paprastai saugomi ir apdorojami blokų grandinės duomenys. Duomenis galima apdoroti įvairiais būdais. Išnagrinėsime nuoseklaus ir lygiagretaus apdorojimo būdus.

Paprastai kiekvienas blokų grandinės mazgas yra atsakingas už visos transakcijų apimties tvarkymą tinkle. Šis duomenų apdorojimo būdas paprastai vadinamas nuosekliuoju apdorojimu. Tai reiškia, kad kiekvienas mazgas turi palaikyti ir saugoti visą svarbią informaciją, pavyzdžiui, sąskaitų likučius ir atliktų operacijų istoriją. Iš esmės kiekvienas mazgas turi apdoroti visas tinklo operacijas, duomenis ir operacijas.

Nors toks modelis sustiprina blokų grandinės saugumą, registruodamas kiekvieną operaciją visuose mazguose, jis labai sulėtina duomenų apdorojimo procesą. Štai tada svarbus tampa lygiagretus duomenų apdorojimas, nes jis leidžia vienu metu atlikti kelias operacijas.

Skaidymas gali būti pasitelkiamas kaip veiksmingas šios keblios situacijos sprendimo būdas, nes jis padalina arba „perskirsto“ sandorių apdorojimo krūvį visame blokų grandinės tinkle. Tai reiškia, kad ne visi mazgai turi valdyti arba apdoroti visą blokų grandinės apkrovą.

Vietoj to skaidymas atskiria darbo krūvį horizontaliojo skaidymo būdu. Šiame procese duomenys suskirstomi į horizontalius pogrupius, kurių kiekvienas skaidinys veikia kaip nepriklausoma duomenų bazė, galinti atskirai apdoroti operacijas. 

Horizontalusis ir vertikalusis skaidymas

Horizontalusis skaidymas ir vertikalusis skaidymas yra du pagrindiniai duomenų bazės išplėtimo būdai. Nors abu jie skirti dideliems duomenų rinkiniams veiksmingiau tvarkyti, jų veikimas iš esmės skiriasi. Skirstymas yra įprastas horizontaliojo skaidymo įgyvendinimo būdas.

Horizontaliojo skaidymo atveju duomenys suskirstomi į eilutes ir paskirstomi po skirtingus mazgus (arba duomenų bazes), kurių kiekviename yra duomenų poaibis. Kiekviena lentelės eilutė yra unikali, todėl jas atskyrus duomenų vientisumas neprarandamas. Akivaizdus horizontaliojo skaidymo pavyzdys yra blokų grandinės tinklų, tokių kaip Ethereum ir bitkoino, platinimas.

Vertikaliojo skaidymo atveju duomenys skirstomi į stulpelius, o ne į eilutes. Kiekviename vertikaliojo skaidymo skaidinyje yra duomenų poaibis kiekvienam objektui arba visam duomenų rinkiniui, bet tik tam tikram atributų rinkiniui. Pavyzdžiui, paanalizuokime klientų lentelę, kurią sudaro tokie stulpeliai kaip „Vardas ir pavardė“, „Būsena“, „Aprašymas“ ir „Nuotrauka“. Vertikaliojo skaidymo atveju „Vardas ir pavardė“ ir „Būsena“ gali būti laikomi vienoje lentelėje, o „Aprašymas“ ir „Nuotrauka“ – kitoje.

Kodėl pirmenybė teikiama horizontaliajam skaidymui?

Horizontalusis skaidymas blokų grandinių tinkluose paprastai yra pranašesnis už vertikalųjį dėl trijų pagrindinių priežasčių: išplečiamumo, decentralizacijos ir saugumo.

Išplečiamumas: skaidymas siūlo sprendimą suskaidant duomenis į mažesnius, lengviau valdomus skaidinius. Kiekvienas skaidinys gali veikti nepriklausomai, todėl vienu metu galima apdoroti daugiau operacijų, o tai pagerina tinklo greitį ir efektyvumą. Tuo tarpu naudojant vertikaliojo skaidymo būdą stulpelių paskirstymas skirtingose duomenų bazėse gali būti sudėtingesnis ieškant visos sandorio ar bloko informacijos ir gali apriboti išplečiamumo galimybes.

Decentralizacija: atsižvelgiant į pagrindinį blokų grandinės etosą, horizontaliojo skaidymo būdas palaiko decentralizacijos procesą. Kai mazgai turi apdoroti tik dalį visų duomenų (skaidinį), tinkle gali dalyvauti daugiau mazgų, nes sumažėja skaičiavimo ir saugojimo našta. Palyginimui: su vertikaliojo skaidymo būdu to padaryti nepavyktų, nes kiekvienam mazgui reikės prieigos prie visų skaidinių (visų duomenų stulpelių), kad būtų galima suprasti ir patikrinti visus bloko duomenis.

Saugumas ir duomenų vientisumas: horizontalusis skaidymas leidžia išlaikyti duomenų vientisumą, nes kiekviename skaidinyje yra visi operacijų duomenys, užtikrinant, kad kiekvienas mazgas turėtų visą ir tikslią savo blokų grandinės dalies kopiją. Vertikaliojo skaidymo atveju bloko duomenis iš esmės padalytumėte skirtingiems mazgams, todėl būtų sudėtinga užtikrinti duomenų vientisumą ir saugumą – svarbiausią blokų grandinės tinklų aspektą.

Kokie yra skaidymo privalumai?

Pasigilinkime į galimus blokų grandinės technologijai teikiamus skaidymo privalumus.

Didesnė sandorių vykdymo sparta: skaidymas palengvina lygiagretų operacijų apdorojimą. Užuot apdorojus sandorius vieną po kito nuosekliuoju būdu, skaidymas leidžia vienu metu apdoroti skirtinguose skaidiniuose esančias operacijas. Kiekvienas skaidinys veikia savarankiškai, todėl labai padidėja sandorio apdorojimo greitis. Tai ne tik pagreitina operacijų vykdymo greitį, bet ir reiškia, kad visas tinklas gali aptarnauti daugiau vartotojų, o tai skatina masinį naudojimą.

Blokų grandinės tinklo, naudojančio skaidinius išplečiamumo problemai spręsti, pavyzdys yra Ziliqa. Ziliqa skaidymo mechanizmas leidžia atlikti tūkstančius operacijų per sekundę.

Minimalios apdorojimo ir saugojimo išlaidos. Įprasta blokų grandinės konstrukcija įpareigoja kiekvieną mazgą saugoti visus sandorius, todėl didėjant blokų grandinei didėja reikalavimai aparatinei įrangai. Tačiau naudojant skaidymą kiekvienas mazgas yra atsakingas tik už dalies viso tinklo duomenų apdorojimą ir saugojimą – tai sumažina išteklius, reikalingus mazgui tinkle dalyvauti.

Taigi daugiau dalyvių gali prisijungti kaip tvirtintojai, o tai pagerina tinklo decentralizacijos procesą nepatiriant didelių išlaidų. Taip sumažinamos problemos, kai procese realiai galėtų dalyvauti tik subjektai, turintys aukštos klasės brangių skaičiavimo išteklių, ir išlaikomas demokratinis blokų grandinės tinklų pobūdis.

Pagerintas tinklo našumas. Skaidymas gali padėti pagerinti bendrą tinklo našumą ir pajėgumą. Tradicinėse blokų grandinėse, kai tinkle dalyvauja daugiau mazgų, našumas paradoksaliai mažėja dėl didesnio duomenų perdavimo ir sinchronizavimo tarp mazgų poreikio.

Tačiau skaidymas leidžia pakeisti šią situaciją. Kadangi kiekvienas skaidinys veikia atskirai ir vienu metu, sistema gali apdoroti daugiau sandorių ir skaičiavimų. Prisijungus naujam mazgui, jis gali būti prijungtas ne prie viso tinklo, o prie atskiro skaidinio, taip padidinamos tinklo išplėtimo galimybės. Padidėja efektyvumas, todėl sandoriai atliekami sklandžiau, o vartotojo patirtis yra geresnė.

Nepamirškite, kad ateityje patobulinus skaidymo technologiją gali atsirasti kitų privalumų arba gali būti ištobulinti esami privalumai, taip nuolat tobulinant blokų grandinės ekosistemą.

Kokie yra skaidymo trūkumai?

Nors skaidymas turi keletą potencialių privalumų, galinčių padėti blokų grandinės tinklams tapti efektyvesniems, šis procesas taip pat kelia unikalių iššūkių. Keli galimi pažeidžiamumo aspektai, kuriuos sukelia skaidymas. 

Vieno skaidinio perėmimo išpuoliai. Skaidymo aplinkoje skaičiavimo galia, reikalinga siekiant perimti vieną skaidinį, yra daug mažesnė nei galia, reikalinga visam tinklui perimti. Dėl to šie atskiri skaidiniai tampa labiau pažeidžiami „vieno procento atakos“ arba „skaidinio perėmimo“ atveju, kai užpuolikas, turintis nedaug išteklių, palyginti su visu tinklu, gali perimti atskirą skaidinį.

Kryžminio skaidymo skaidinių sandoriai. Sandoriai, atliekami tarp skirtingų skaidinių (kryžminio skaidymo skaidiniai), yra unikalus iššūkis. Kryžminio skaidymo skaidinių sandoriai yra sudėtingi ir gali sukelti dvigubai daugiau išlaidų, jei nebus kruopščiai valdomi. Jei sandorio metu vienas skaidinys tiksliai neseka kito skaidinio būsenos, vartotojai gali ja pasinaudoti ir taip sudaryti dvigubas išlaidas.

Duomenų prieinamumo problemos. Dėl skaidymo visos tinklo būsenos palaikymas tampa sudėtingu procesu. Jei tam tikri skaidiniai neprieinami, kai to reikia (nes tuos skaidinius prižiūrintys mazgai yra neprijungti), gali kilti duomenų pasiekiamumo problemų ir sutrikti viso tinklo veikimas.

Tinklo sauga. Norint atlikti skaidymą reikia įdiegti patikimą protokolą, kuris tolygiai paskirstytų apkrovą tarp skaidinių. Jei tai daroma netinkamai, duomenys gali būti paskirstomi netolygiai arba ištekliai gali būti nesubalansuoti ir dėl to gali atsirasti tinklo nestabilumas.

Mazgo sinchronizavimas. Mazgo sinchronizavimas gali sukelti tinklo trikdžius, kurie atsiranda dėl laiko, reikalingo informacijai skirtinguose mazguose bendrinti ir atnaujinti, delsos. Be to, jei lėtesnio apdorojimo pajėgumų arba tinklo ryšio mazgas atsilieka, tai gali sulėtinti visą sinchronizavimo procesą ir sumažinti bendrą blokų grandinės tinklo našumą.

Ar skaidymas įdiegtas Ethereum?

Ethereum planuoja įdiegti skaidymą kaip Ethereum 2.0 naujinimo dalį. Ethereum 2.0, taip pat žinomas kaip Eth2 arba Serenity, yra Ethereum blokų grandinės atnaujinimas, kuriuo siekiama padidinti tinklo greitį, veiksmingumą ir išplečiamumą, kad būtų galima apdoroti daugiau sandorių ir sumažinti tinklo perkrovą.

Šiuo metu atnaujinimas įgyvendinamas etapais, o paskutiniame etape (2 etape) bus visiškai įdiegtas skaidymas. Ethereum kūrėjai tikisi, kad šie patobulinimai padės išspręsti kai kurias dabartines tinklo problemas, susijusias su išplečiamumu ir sandorių sąnaudomis.

Tačiau svarbu atkreipti dėmesį į tai, kad įgyvendinant skaidymą susiduriama su tam tikrais iššūkiais, visų pirma susijusiais su tinklo saugumo ir decentralizacijos užtikrinimu. Todėl Ethereum kūrėjai šį perėjimo procesą kruopščiai apgalvoja ir atlieka išsamius bandymus, kad užtikrintų sėkmingą atnaujinimą, kai jis bus visiškai įgyvendintas.

Baigiamosios mintys

Apskritai skaidymas yra reikšmingas žingsnis sprendžiant blokų grandinės trilemą. Nors dėl to atsiranda naujų apsunkinimų ir galimų trūkumų, jo potencialas padidinti išplečiamumo galimybes nesumažinant decentralizacijos yra labai perspektyvus blokų grandinės tinklų ateičiai.

Nenuostabu, kad įvairios blokų grandinės tyrinėja skaidymą kaip galimą problemos sprendimo variantą. Ethereum integruoja skaidymą kaip Ethereum 2.0 naujinimo dalį, kad išspręstų šiuo metu egzistuojančias išplečiamumo problemas. Tikimasi, kad šis įgyvendinimas bus atliktas naudojant Cancun naujinimą, kuris yra esminis bendro tobulinimo plano komponentas. Vis dėlto, kaip ir bet kurios kitos besivystančios technologijos atveju, sėkmė priklausys nuo nuolat atliekamų mokslinių tyrimų, plėtros ir kruopštaus skaidymo diegimo testavimo.

Papildoma literatūra

Atsakomybės atsisakymas: šis turinys jums pateikiamas „toks, koks yra“ tik bendro informavimo ir švietimo tikslais, jis nesuteikia jokios garantijos ir nieko neteigia. Šis tekstas neturėtų būti suprantamas kaip finansinis, teisinis ar kitoks patarimas, taip pat nesiekiama rekomenduoti įsigyti kokį nors konkretų produktą ar paslaugą. Turėtumėte patys kreiptis patarimo į atitinkamus profesionalius patarėjus. Jei straipsnį pateikė trečiosios šalies bendraautoris, atkreipkite dėmesį, kad išsakytos nuomonės priklauso trečiosios šalies bendraautoriui ir nebūtinai atspindi Binance nuomonę. Daugiau informacijos rasite perskaitę visą atsakomybės atsisakymą čia. Skaitmeninių išteklių kainos gali būti nepastovios. Jūsų investicijos vertė gali sumažėti arba padidėti, o investuotos sumos galite ir neatgauti. Tik jūs esate atsakingi už savo investicinius sprendimus, o Binance nėra atsakinga už jokius jūsų patirtus nuostolius. Ši medžiaga neturėtų būti suprantama kaip finansinis, teisinis ar profesionalo patarimas. Jei reikia daugiau informacijos, žr. mūsų Naudojimo sąlygas ir įspėjimą dėl rizikos.