Шардинг
Шардинг - это подход к масштабированию, который позволяет разделить состояния блокчейна на разделы, содержащие состояния и историю транзакций.
Что такое шардинг?
Шардинг (sharding) - это техника разделения баз данных, которая может быть использована для масштабирования
блокчейна. Он позволяет блокчейнам обрабатывать больше
транзакций в секунду, достигая более высокой
пропускной способности. Шардинг разбивает
сеть блокчейна на более мелкие части. Эти так называемые шарды обрабатывают только часть данных всего блокчейна, что делает их независимыми от других шардов и освобождает от лишних вычислений.
Благодаря шардингу сеть может вычислять больше транзакций и таким образом быстрее масштабироваться, достигая скорости обработки привычной по централизованным базам данных. С другой стороны, критики отмечают, что шарды подвержены атакам и снижают безопасность сети.
Как работает шардинг?
Блокчейн-сети состоят из
узлов, которые подтверждают транзакции в сети. Узлы независимы друг от друга и хранят историю данных блокчейна. Все
полные узлы хранят всю историю блокчейна целиком, что повышает безопасность и децентрализацию блокчейна, но замедляет скорость транзакций.
Шардинг разделяет рабочую нагрузку узлов по разным шардам. В этом случае каждый узел не должен подтверждать каждую транзакцию, что излишне нагружало бы узлы и замедляло бы работу сети. Вместо этого работа разделена по разным шардам. Базы данных блокчейна разделены горизонтально, то есть различные шарды разделены в соответствии с их характеристиками. Например, шарды могут отвечать за хранение транзакций определенного типа, или в другом случае шарды могут быть разделены на основе типа криптоактива, который они хранят.
В результате не каждый узел подтверждает каждую транзакцию. Это резко снижает нагрузку на блокчейн и увеличивает его скорость.
Насколько безопасен шардинг?
Шардинг критиковали за то, что он потенциально снижает децентрализацию и безопасность блокчейна. Шарды могут быть взломаны, когда один осколок захватывает другой, что может привести к потере информации или данных. К примеру,
хакеры могут получить контроль над шардом и ввести ложные транзакции, тогда это приведет к рассогласованию среди других шардов относительно достоверности данных.
Как Ethereum использует шардинг?
Ethereum планирует использовать шардинг в качестве одного из подходов к масштабированию для увеличения пропускной способности блокчейна. В будущем в сети появятся 64 новые шард-цепи, и значительно снизят нагрузку на
мейннет Ethereum, который называется
Beacon Chain. Этот процесс произойдет в рамках процесса масштабирования Ethereum, после перехода на
механизм консенсуса proof-of-stake. Этот переход получил название
the Merge (слияние). Шардинг станет одним из
следующих шагов для Ethereum согласно его дорожной карте.