Глоссарий

Шардинг

Сложность: высокая

Шардинг - это подход к масштабированию, который позволяет разделить состояния блокчейна на разделы, содержащие состояния и историю транзакций.

Что такое шардинг?

Шардинг (sharding) - это техника разделения баз данных, которая может быть использована для масштабирования блокчейна. Он позволяет блокчейнам обрабатывать больше транзакций в секунду, достигая более высокой пропускной способности. Шардинг разбивает сеть блокчейна на более мелкие части. Эти так называемые шарды обрабатывают только часть данных всего блокчейна, что делает их независимыми от других шардов и освобождает от лишних вычислений.

Благодаря шардингу сеть может вычислять больше транзакций и таким образом быстрее масштабироваться, достигая скорости обработки привычной по централизованным базам данных. С другой стороны, критики отмечают, что шарды подвержены атакам и снижают безопасность сети.

Как работает шардинг?

Блокчейн-сети состоят из узлов, которые подтверждают транзакции в сети. Узлы независимы друг от друга и хранят историю данных блокчейна. Все полные узлы хранят всю историю блокчейна целиком, что повышает безопасность и децентрализацию блокчейна, но замедляет скорость транзакций.

Шардинг разделяет рабочую нагрузку узлов по разным шардам. В этом случае каждый узел не должен подтверждать каждую транзакцию, что излишне нагружало бы узлы и замедляло бы работу сети. Вместо этого работа разделена по разным шардам. Базы данных блокчейна разделены горизонтально, то есть различные шарды разделены в соответствии с их характеристиками. Например, шарды могут отвечать за хранение транзакций определенного типа, или в другом случае шарды могут быть разделены на основе типа криптоактива, который они хранят.

В результате не каждый узел подтверждает каждую транзакцию. Это резко снижает нагрузку на блокчейн и увеличивает его скорость.

Насколько безопасен шардинг?

Шардинг критиковали за то, что он потенциально снижает децентрализацию и безопасность блокчейна. Шарды могут быть взломаны, когда один осколок захватывает другой, что может привести к потере информации или данных. К примеру, хакеры могут получить контроль над шардом и ввести ложные транзакции, тогда это приведет к рассогласованию среди других шардов относительно достоверности данных.

Как Ethereum использует шардинг?

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