Использование шардинга для масштабируемости блокчейна

18.06.2019
15 мин
478
0

Когда программисты создают децентрализованные приложения (DApp), они ограничены общедоступными блокчейнами. Их самое большое ограничение – пропускная способность сети – максимальная скорость, с которой блокчейн может подтверждать транзакции. Чтобы иметь возможность создать DApp, который может обеспечить необходимую пропускной способности, блокчейны должны быть масштабируемыми.

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

Что такое масштабируемость?

Масштабируемость – это характеристика системы, описывающая, насколько хорошо система работает с возрастающей нагрузкой. Любая система, которая хорошо масштабируется, может поддерживать высокую производительность или повышать эффективность.

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

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

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

Необходимость масштабировать блокчейн

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

Это заставляет разработчиков сконцентрироваться на масштабируемости.

Одним из решений является увеличение комиссий, поскольку они жизненно важны для нормального функционирования сети.

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

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

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

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

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

Заключение

Шардирг представляет многообещающее решение проблемы масштабируемости сети. Если разработчики смогут успешно внедрить шардинг в сети Ethereum, это будет знаменательным событием.
Источник: https://medium.com/@monetha/explaining-sharding-for-blockchain-scalability-d59d4b646605

Будет интересно

Как вам статья?

0
0

статьи на эту же тему

Как эффективно отменить...
avatar Ivan Obrevko
18.04.2024
Что такое аппчейны и как они...
avatar Ilya Surgan
17.04.2024
Кроссчейн-мосты: как работают и какие...
avatar Vlad Shevchenko
16.04.2024