Mis on killustamine ja kuidas see toimib?
Avaleht
Artiklid
Mis on killustamine ja kuidas see toimib?

Mis on killustamine ja kuidas see toimib?

Keskmine
Avaldatud Dec 4, 2023Värskendatud Jan 11, 2024
9m

TL;DR

  • Killustamine jagab plokiahela väiksemateks „kildudeks“, et lahendada 1. kihi võrkudega seotud skaleeritavuse probleem.

  • Killustamine parandab tehingute kiirust, minimeerib töötlemis- ja salvestuskulusid ning suurendab võrgu jõudlust.

  • Killustamisega kaasnevad ka võimalikud puudused, nagu võrgu turvalisuse probleemid ja killu-üleste tehingute keerukus.

Sissejuhatus

Plokiahela tehnoloogia pakub detsentraliseerimise, läbipaistvuse ja turvalisuse vallas enneolematut potentsiaali. Kuid see seisab silmitsi olulise väljakutsega, milleks on skaleeritavus. Skaleeritavus on üks osa „plokiahela trilemmast“, lisaks turvalisusele ja detsentraliseerimisele. Kõigi kolme samaaegne saavutamine on plokiahela valdkonnas püsiv probleem. Siin tulevadki mängu strateegilised lahendused nagu „killustamine“.

Mis on killustamine?

Killustamine on traditsioonilisest andmebaasihaldusest laenatud kontseptsioon. See tähendab, et suur andmebaas killustatakse väiksemateks, paremini hallatavateks osadeks, mida nimetatakse kildudeks. Selle rakenduse eesmärk on parandada plokiahela skaleeritavust, säilitades samal ajal detsentraliseerimise põhimõtte. Sisuliselt on killustamine see, kui plokiahela võrk jagatakse väiksemateks osadeks, mida nimetatakse kildudeks, millest igaühes on võimalik paralleelselt töödelda tehinguid ja käivitada nutilepinguid.

Kuidas killustamine toimib?

Selleks, et mõista, kuidas plokiahela võrgus killustamist teostatakse, on vaja mõista, kuidas plokiahela andmeid tavaliselt salvestatakse ja töödeldakse. Andmete töötlemiseks on erinevaid viise. Vaatleme järjestikust ja paralleelset töötlemist.

Tavaliselt vastutab iga plokiahela sõlm kõigi võrgusiseste tehingute haldamise eest. Seda tüüpi andmetöötlust nimetatakse tavaliselt järjestikuseks töötlemiseks. See tähendab, et iga sõlm peab säilitama ja salvestama kogu kriitilise teabe, nagu kontode saldod ja tehingute ajalugu. Sisuliselt peab iga sõlm töötlema kõiki võrgutoiminguid, andmeid ja tehinguid.

Kuigi selline mudel, kus kõik tehingud registreeritakse kõigis sõlmedes, pakub suurt plokiahela turvalisust, aeglustab see oluliselt andmete töötlemist. Selle vältimiseks kasutatakse andmete paralleelset töötlemist, kuna see võimaldab teha mitut toimingut samaaegselt.

Killustamine on ilmselt selle keerulise probleemi tõhusaim lahendus, kuna see jagab või „tükeldab“ töökoormuse kogu plokiahela võrgus väiksemateks töölõikudeks. See tähendab, et kõik sõlmed ei pea haldama ega töötlema kogu plokiahela koormust.

Selle asemel eraldab killustamine töökoormuse horisontaalsete sektsioonide kaudu. Selles protsessis jaotatakse andmed horisontaalseteks alamhulkadeks, kusjuures iga kild toimib iseseisva andmebaasina, mis suudab tehinguid teistest kildudest eraldiseisvalt töödelda. 

Horisontaalne vs vertikaalne eraldamine

Horisontaalne ja vertikaalne eraldamine on kaks peamist lähenemist andmebaasi skaleerimisele. Kuigi mõlemad on loodud suurte andmekogumite tõhusamaks haldamiseks, töötavad need põhimõtteliselt erineval viisil. Killustamine on levinud meetod horisontaalseks eraldamiseks.

Horisontaalse eraldamise korral jagatakse andmed ridadeks ja jaotatakse erinevatesse sõlmedesse (või andmebaasidesse), millest igaüks sisaldab andmete alamhulka. Tabeli iga rida on kordumatu, nii et nende eraldamine ei too kaasa andmete terviklikkuse kadu. Silmapaistev näide horisontaalsest eraldamisest on plokiahelavõrkude, nagu Ethereum ja Bitcoin, jaotamine.

Vertikaalse eraldamise korral jagatakse andmed pigem veergudeks kui ridadeks. Iga vertikaalne jaotus sisaldab iga olemi või kogu andmestiku andmete alamhulka, kuid ainult teatud atribuutide komplekti jaoks. Näiteks oletame, et meil on klientide tabel veergudega „Nimi“, „Olek“, „Kirjeldus“ ja „Foto“. Vertikaalse eraldamise korral on näiteks „Nimi“ ja „Olek“ ühes tabelis ning „Kirjeldus“ ja „Foto“ teises tabelis.

Miks eelistatakse horisontaalset eraldamist?

Üldjuhul eelistatakse plokiahelavõrkudes horisontaalset eraldamist vertikaalsele eraldamisele kolmel peamisel põhjusel: skaleeritavus, detsentraliseerimine ja turvalisus.

Skaleeritavus: killustamine pakub lahenduseks, et andmed jagatakse väiksemateks, paremini hallatavateks „kildudeks“. Iga kild võib töötada iseseisvalt, võimaldades korraga töödelda rohkem tehinguid, parandades võrgu kiirust ja tõhusust. Vertikaalse jaotuse korral on veergude eraldamine erinevate andmebaaside vahel keerukas ja võib vajada täieliku tehingu- või plokiteabe hankimist ning sellega piirata skaleeritavust.

Detsentraliseerimine: horisontaalne eraldamine on plokiahela põhiideega kooskõlas, toetades detsentraliseerimist. Kui sõlmed peavad töötlema ainult osa koguandmetest (killu), võimaldab see rohkematel sõlmedel võrgus osaleda, kuna arvutus- ja salvestuskoormus väheneb. Vertikaalne eraldamine piiraks seda, kuna iga sõlm vajab juurdepääsu kõikidele lõikudele (kõikidele andmeveergudele), et mõista ja kontrollida ploki andmeid täielikult.

Turvalisus ja andmete terviklikkus: Horisontaalne eraldamine säilitab andmete terviklikkuse, kuna iga kild (või alamosa) sisaldab täielikke tehinguandmeid, tagades, et igal sõlmel on täielik ja täpne koopia oma plokiahela osast. Vertikaalse eraldamise korral jagataks ploki andmed sisuliselt erinevate sõlmede vahel, muutes andmete terviklikkuse ja turvalisuse tagamise keeruliseks, mis on aga plokiahela võrkude ülitähtsad aspektid.

Millised on killustamise eelised?

Uurime võimalikke eeliseid, mida killustamine plokiahela tehnoloogiale pakub:

Suurem tehingukiirus: killustamine hõlbustab tehingute paralleelset töötlemist. Selle asemel, et töödelda tehinguid ükshaaval järjestikku, võimaldab killustamine tehinguid töödelda samaaegselt, kuid erinevatel kildudel. Iga kild töötab iseseisvalt, suurendades seeläbi oluliselt tehingukiirust. See mitte ainult ei kiirenda tehingukiirust, vaid tähendab ka seda, et kogu võrk saab hakkama rohkemate kasutajatega, soodustades massilisemat kasutuselevõttu.

Näide olemasolevast plokiahela võrgustikust, mis kasutab skaleeritavuse lahendamiseks kilde, on Ziliqa. Ziliqa killustamismehhanism võimaldab teostada tuhandeid tehinguid sekundis.

Minimaalsed töötlemis- ja salvestuskulud: tavapärane plokiahela ülesehitus kohustab iga sõlme salvestama kõik tehingud, suurendades plokiahela kasvades nõudeid riistvarale. Kuid killustamise korral vastutab iga sõlm vaid murdosa kogu võrgu andmete töötlemise ja salvestamise eest – seega vajab sõlm võrgus osalemiseks vähem ressursse.

Selle tulemusel saab rohkem osalejaid valideerijatega liituda, suurendades võrgu detsentraliseerimist ilma liigseid kulusid kandmata. See leevendab probleeme, kus protsessis saavad reaalselt osaleda ainult kõrgekvaliteediliste ja kallite andmetöötlusressurssidega sõlmed, ning seega säilub plokiahelavõrkude demokratiseeritud olemus.

Võrgu suurem jõudlus: killustamine võib aidata parandada üldist võrgu jõudlust ja võimsust. Traditsioonilistes plokiahelates sõlmede lisandumisel paradoksaalselt jõudlus väheneb, kuna on vaja suurendada andmeside mahtu ja sõlmede vahelist sünkroonimist.

Kuid killustamine muudab seda stsenaariumit. Kuna iga kild töötab eraldi ja samaaegselt, saab süsteem töödelda rohkem tehinguid ja arvutusi. Kui uus sõlm liitub, lisatakse see kogu võrgu asemel ühele killule, suurendades selliselt kogu võrgu skaleeritavust. Tõhusam töötlus toob kaasa sujuvamad tehingud ja parema kasutajakogemuse.

Pea meeles, et killustamise tehnoloogia edusammud ja täiustused võivad tulevikus pakkuda muid eeliseid või tugevdada olemasolevaid, täiustades pidevalt plokiahela ökosüsteemi.

Millised on killustamise puudused?

Kuigi killustamine pakub mitmeid potentsiaalseid eeliseid, mis võivad aidata plokiahelavõrke tõhusamaks muuta, toob see protsess kaasa ka hulga väljakutseid. Mõned killustamisega kaasnevad potentsiaalsed probleemid on järgmised. 

Üksiku killu ülevõtmise rünnakud: killustamise korral on arvutusvõimsus ühe killu ülevõtmiseks oluliselt väiksem kui kogu võrgu ülevõtmiseks vajalik võimsus. See muudab need üksikud killud haavatavamaks „üheprotsendi‑rünnaku" või „killu ülevõtmise" suhtes, mille puhul ründaja, kes kogu võrku ei suudaks üle võtta, võib piisava ressursi olemasolul potentsiaalselt võtta üle individuaalse killu.

Killuülesed tehingud: erinevate kildude vahel toimuvad (killuülesed) tehingud kujutavad endast ainulaadset väljakutset. Killuülesed tehingud on keerulised ja võivad põhjustada topeltkulutusi, kui neid hoolikalt ei hallata. Kui üks kild ei jälgi tehingu ajal täpselt teise killu olekut, võivad kasutajad seda olukorda ära kasutada „topeltkulutamiseks“.

Andmete kättesaadavuse probleemid: killustamine muudab kogu võrgu ühtse oleku säilitamise keeruliseks pingutuseks. Kui teatud killud pole vajaduse korral saadaval (kuna näiteks neid kilde haldavad sõlmed on võrguühenduseta), võib see põhjustada andmete kättesaadavuse probleeme, mis häirib kogu võrku.

Võrgu turvalisus: killustamiseks on vaja rakendada tugevat protokolli, mis tasakaalustab töökoormust kildude vahel. Kui seda ei tehta õigesti, võib see põhjustada andmete ebaühtlast jaotumist või ressursside tasakaalustamatust, mis võib kaasa tuua ebastabiilsuse kogu võrgus.

Sõlme sünkroonimine: sõlmede sünkroonimine võib põhjustada võrgus viivitusi, mis on tuleneb teabe jagamisest ja uuendamisest erinevate sõlmede vahel. Veelgi enam, kui aeglasema töötlemiskiirusega või halvema võrguühendusega sõlm jääb maha, võib see aeglustada kogu sünkroonimisprotsessi, vähendades plokiahela võrgu üldist jõudlust.

Kas killustamine on Ethereumis rakendatud?

Ethereum kavatseb killustamise kasutusele võtta Ethereum 2.0 versiooniuuenduse osana. Ethereum 2.0, tuntud ka kui Eth2 või Serenity, on Ethereumi plokiahela täiendus, mille eesmärk on suurendada võrgu kiirust, tõhusust ja skaleeritavust, võimaldades sellel töödelda rohkem tehinguid ja leevendada võrguliikluse ummikuid.

Praeguse seisuga rakendatakse uuendust etapiviisiliselt, kusjuures viimane etapp (2. etapp) hõlmab täielikku killustamist. Ethereumi arendajad loodavad, et need täiustused lahendavad mõned võrgu praegused väljakutsed, mis on seotud skaleeritavuse ja tehingukuludega.

Siiski on oluline märkida, et killustamise rakendamisega kaasnevad omad väljakutsed, eriti võrgu turvalisuse ja detsentraliseerimise säilitamisel. Seetõttu mõtlevad Ethereumi arendajad selle ülemineku hoolikalt läbi ja katsetavad põhjalikult, et tagada uuenduse edu, kui see lõpuks täielikult rakendatakse.

Lõppmärkused

Üldiselt on killustamine märkimisväärne edasiminek plokiahela trilemma lahendamisel. Kuigi see toob kaasa uusi keerulisi probleeme ja võimalikke puudusi, annab selle potentsiaal suurendada skaleeritavust ilma detsentraliseerimist kahjustamata tohutult võimalusi plokiahela võrkude tuleviku jaoks.

Pole ime, et erinevad plokiahelad uurivad killustamist kui potentsiaalset lahendust. Ethereum integreerib killustamise skaleeritavuse probleemide lahendamiseks Ethereum 2.0 uuenduse osana. Eeldatakse, et selle rakendamine toimub Cancuni versiooniuuenduse kaudu, mis on üldise uuendusplaani oluline komponent. Sellegi poolest, nagu iga muu arenev tehnoloogia, sõltub edu jätkuvast uurimisest, arendustegevusest ja killustamisrakenduste rangest testimisest.

Lisalugemist

Lahtiütlemine: seda sisu esitatakse sellisel kujul, nagu see on, ainult üldiseks teabeks ja hariduslikel eesmärkidel, ilma igasuguse esinduse või garantiita. Seda ei tohiks tõlgendada kui finants-, juriidilist või muud professionaalset nõustamist ega kui soovitust konkreetse toote või teenuse ostmiseks. Peaksid küsima nõu asjakohastelt professionaalsetelt nõustajatelt. Kui artikli on koostanud kolmandast osapoolest kaastöötaja, pane tähele, et väljendatud seisukohad kuuluvad kolmandast osapoolest kaastöötajale ja ei pruugi kajastada Binance'i Akadeemia omasid. Lisateabe saamiseks loe meie täielikku lahtiütlemist siit. Digitaalsete varade hinnad võivad olla kõikuvad. Sinu investeeringu väärtus võib langeda või tõusta ja sa ei pruugi investeeritud summat tagasi saada. Sina vastutad ainuisikuliselt oma investeerimisotsuste eest ja Binance'i Akadeemia ei vastuta võimalike kahjude eest. Seda materjali ei tohiks tõlgendada kui finants-, juriidilist või muud professionaalset nõustamist. Lisateabe saamiseks loe meie kasutustingimusi ja riskihoiatust.