Mikor lesz kész?
~2021
A shard láncokat nagyjából 2021 körül kellene bevezetni attól függően, hogy milyen előrelépések történnek a Beacon Chain elindítása után. Ezek a shardok az Ethereum számára nagyobb tárolási és elérési kapacitást tesznek lehetővé, de kód futtatásra nem lehet majd használni. Annak részletei még kialakulóban vannak.
Mi az a sharding?
A sharding egy folyamat, melynek során egy adatbázist horizontálisan feldarabolunk, hogy szétosszuk a terhelést - ez egy általános fogalom a számítástechnikában. Az Ethereum esetében a sharding csökkenteni fogja a hálózati torlódást és új láncok létrehozásával növeli a másodpercenkénti tranzakciók számát, melyeket "shardoknak" hívunk.
Ez a skálázhatóság mellett több szempontból is fontos.
A sharding tulajdonságai
Mindenki tud csomópontot üzemeltetni
Egy meglévő adatbázis méretének megnövelésével szemben a sharding egy jó skálázási módszer, ha decentralizáltan szeretnéd tartani a dolgokat. Így a hálózati validátorok nehezebben férnének hozzá az Ethereumhoz, mivel így erősebb és drágább számítógépeket kellene használniuk. A shard láncoknál a validátoroknak csak a validált shardhoz tartozó adatot kell tárolniuk/futtatniuk, nem pedig a teljes hálózatot (mint, ahogy most történik). Ez felgyorsítja a dolgokat és drasztikusan csökkenti a hardverkövetelményeket.
Nagyobb hálózati részvétel
A sharding végsősoron lehetővé teszi az Ethereum futtatását a saját laptopodon vagy mobilodon. Így több ember tud majd résztvenni, vagy egy klienst futtatni a shardolt Ethereumban. Ez növelni fogja a biztonságot, mivel minél decentralizáltabb a hálózat, annál kisebb a támadási felület.
Az alacsonyabb hardver követelményekkel a sharding megkönnyíti a kliensek önálló futtatását, anélkül, hogy köztes szolgáltatásra kellene támaszkodnod. És ha van rá lehetőséged, érdemes fontolóra venni több kliens futtatását. Ez egészségesebbé teszi a hálózatot a hiba lehetőségek csökkentésével. Eth2 kliens futtatása
Shard láncok verzió 1: adat elérhetőség
Amikor a shard láncokat először bevezetik csak extra adatot fognak biztosítani a hálózatnak. Nem fognak tranzakciókat vagy okosszerződéseket kezelni. De még így is hihetetlen javulásokat fognak biztosítani a másodpercenkénti tranzakciós sebességben a rollupokkal kombinálva.
A rollupok egy "layer 2" technológia részei, melyek ma is léteznek. Lehetővé teszik a dappok számára, hogy off-chain módon több tranzakciók összekötegeljenek vagy "feltekerjenek (roll-up)" egy tranzakcióba, majd egy kriptográfiai bizonyítékot generálnak, ezután pedig továbbítják azt a láncra. Ez csökkenti egy adott tranzakció számára szükséges adatot. Ha ezt kombináljuk az extra adat elérhetőséggel, amit a shardok biztosítanak, akkor 100,000 tranzakció is lehetséges egy másodperc alatt.
Shard láncok verzió 2: kódfuttatás
Mindig is az volt a terv, hogy shardok extra funkciókat kapjanak, és minél inkább hasonlítsanak a jelenlegi Ethereum főhálózatra. Ez lehetővé tenné számukra, hogy okosszerződéseket tároljanak és futtassanak valamint számlákat kezeljenek. De tekintve a tranzakciós sebességet, amit az 1-es verziójú shardok biztosítanak, tényleg szükséges ennek megtörténnie? Ez még mindig vita tárgya a közösségen belül, és úgy tűnik, hogy jópár lehetséges megoldás létezik.
Kell a shardoknak kódot futtatniuk?
Amikor Vitalik Buterin a Bankless podcaston beszélt, három megvitatásra érdemes potenciális lehetőséget mutatott be.
1. Állapot-futtatás nem szükséges
Ez azt jelentené, hogy a shardok számára nem tesszük lehetővé, hogy okosszerződéseket kezeljenek és csak adattárolóként funkcionálnának.
2. Van pár futtatást végző shard
Lehet, hogy van olyan kompromisszum, ahol nem szükséges minden shardnak (64 van betervezve jelenleg) okosabbnak lennie. Némelyik shardhoz hozzáadhatjuk ezt a funkcionalitást, a többit pedig hagyjuk. Ez felgyorsíthatja a bevezetést.
3. Várunk addig, amíg elérhetővé válnak a Zero Knowledge (ZK) snarkok
Végül lehet, hogy akkor érdemes újra elővenni ezt a vitát, amikor a ZK snarkok életbe lépnek. Ez egy olyan technológia, mely lehetővé tenné a valóban privát tranzakciókat a hálózaton. Valószínűleg okosabb shardokat igényelnének, de még kutatás és fejlesztés alatt állnak.
További források
Itt van néhány gondolatébresztő ugyanezen a vonalon:
- Phase One and Done: Eth2 as a data availability engine – cdetrio, ethresear.ch
Ez még mindig aktívan vitatott pont. Frissítjük ezeket az oldalakat, amint többet megtudunk.
A fejlesztések közötti kapcsolat
Az Eth2 fejlesztések némileg összefüggnek. Foglaljuk össze tehát, hogy a shard láncok bevezetése hogyan hat a többi fejlesztésre.
Shardok és a Beacon Chain
A beacon chain tartalmazza a shardok biztonságához és szinkronizáltságához szükséges összes információt. A beacon chain fogja koordinálni a letétbe helyezőket a hálózaton úgy, hogy shardokat oszt ki nekik, amin dolgozniuk kell. És megkönnyíti a shardok közötti kommunikációt azáltal, hogy shardok tranzakciós adatait fogadja és tárolja, amelyekhez más shardok is hozzáférhetnek. Ez a shardoknak egy pillanatképet fog adni az Ethereum állapotáról, hogy minden naprakész legyen.
A Beacon ChainA shardok és a dokkolás
Az Ethereum főhálózat a ma ismert formában fog létezni a shardok bevezetése után is. Azonban egy ponton a főhálózatnak is egy sharddá kell válnia, hogy a letétbe helyezési átmenet megtörténjen. Később kiderül majd, hogy a főhálózat lesz-e végül az egyedüli "okos" shard, ami kódlefutást fog végezni - de így vagy úgy, ezt a döntést meg kell majd hozni a shardolás 2-es fázisában.
A dokkolás