Sharding

Pokročilí
Sharding je metoda dělení blockchainů (nebo jiných typů databází) na menší segmentované blockchainy, které spravují konkrétní segmenty dat. Tento přístup ulehčuje práci jedinému blockchainu, který se musí starat o veškeré transakce a veškerou síťovou komunikaci. Každý segmentovaný blockchain (tzv. shard) má svou vlastní účetní knihu.
Tyto shardy pak mohou zpracovávat vlastní transakce, ale komunikaci mezi shardy spravuje hlavní blockchain (beacon chain). To ze shardingu dělá škálovací řešení první vrstvy, protože jde o změnu mainnetu blockchainu. Implementace shardů v porovnání s používáním jediné sítě výrazně zlepšuje škálovatelnost. Vývojáři Etherea zavádějí sharding v rámci přechodu Etherea na škálovatelnou síť s metodou konsenzu Proof of Stake.
V případě Etherea bude Beacon Chain koordinovat 64 jednotlivých shardů. Sloučení původního blockchainu Etherea s algoritmem Proof of Work a Beacon Chainu s algoritmem Proof of Stake už proběhlo a sharding přijde později.
Jednou z výhod rozdělení sítě na několik shardů je snadné a dostupné provozování uzlu. Vzhledem k tomu, že data sítě jsou rozdělena mezi jednotlivé shardy, validující uzly už nemusí mít uloženou celou historii blockchainu. Místo ní musí validátor uchovávat pouze potvrzení o integritě dat.
Sítě bez shardingu se často snaží zlepšit škálovatelnost pomocí rollupů. Ty přenáší transakce mimo blockchain, kde je společně zabalí a připraví k ověření na hlavním blockchainu. Takže i když se může zdát, že sharding je pro rollupy konkurencí, ve skutečnosti je zefektivňuje. Rollupy v síti rozdělené na shardy dokáží efektivněji hlásit svůj stav, takže pracují rychleji.
Hlavní obavou související se shardingem je možnost převzetí shardu subjekty s nekalými úmysly. Takový shard by pak mohl mít negativní dopad na zbytek sítě. Bez náležité péče a pravidel je převzetí shardu snadnější než převzetí celé sítě bez shardů.