Sharding

Определение

Шардинг — это метод горизонтального масштабирования, заимствованный из архитектуры баз данных, который разделяет сеть блокчейна на более мелкие, параллельно обрабатывающие блоки, называемые «шардами». Вместо того чтобы каждый узел проверял каждую транзакцию (традиционный подход, создающий узкие места в пропускной способности), каждый шард обрабатывает одновременно только подмножество транзакций — при этом разные узлы отвечают за разные шарды. Это позволяет масштабировать пропускную способность линейно: удвоение количества шардов примерно удваивает пропускную способность транзакций. Применительно к блокчейну шардинг решает «трилемму масштабируемости», увеличивая пропускную способность без ущерба для безопасности или децентрализации. Долгожданное обновление шардинга в Ethereum (теперь превратившееся в «danksharding», ориентированное на доступность данных) и Nightshade от NEAR Protocol представляют собой основные реализации шардинга в блокчейне.

Происхождение и история

ВремяСобытия
1990sКонцепция шардинга разработана для систем управления базами данных (Oracle, MySQL).
2014Виталик Бутерин Обсуждается шардинг блокчейна в ранних исследованиях Ethereum.
2018Формализован план развития шардинга Ethereum; определено необходимое условие для PoS.
2019В основе архитектуры протокола NEAR лежит шардинг Nightshade.
2020Основная сеть NEAR запущена с поддержкой шардинга, встроенной с самого начала.
2020Запущена сеть Ethereum Beacon Chain; начался нулевой этап дорожной карты Ethereum 2.0.
2022Слияние Ethereum завершено; первоначальный план шардирования (ранее Фаза 1) трансформируется в дорожную карту данкшардинга.
2024В EIP-4844 (прото-данксшардинг) вводится понятие «блобов» как шаг к полноценному данксшардингу.
2024Near Protocol обеспечивает работу с 4 сегментами сети с помощью Nightshade 2.0; масштабирование происходит динамически.
2024–?Для Ethereum планируется полная реализация дарксшардинга; это обеспечит масштабируемость доступности данных.
«Шардинг — это способ, с помощью которого блокчейны увеличивают свою производительность с 15 транзакций в секунду до 15 000 транзакций в секунду, не жертвуя при этом децентрализацией, которая изначально делает их ценными».
исследователь Эфириума

Как это работает

БлокчейнТип сегментированияОсколкиTPS (теоретический)
ЭфириумDanksharding (доступность данных)~64 фрагмента данныхБолее 100 000 (с учетом сводных данных)
РЯДОМПаслен (динамический)В настоящее время 4100,000+
Кондо ХармониЭффективное PoS + шардинг4 осколков10,000+
МультиверсXАдаптивное состояние Sharding3 осколков15,000+

Простыми словами

  1. Разделите работу на части.Вместо того чтобы каждый узел выполнял всю работу самостоятельно, шардинг распределяет между узлами разные части работы. Это как разделение шоссе на несколько полос, позволяющее одновременно увеличить общий объем транспортного потока.
  2. Линейное масштабирование пропускной способностиКаждый дополнительный сегмент пропорционально увеличивает пропускную способность. 10 сегментов примерно в 10 раз увеличивают пропускную способность транзакций в сети без сегментов.
  3. Межсерверная задачаКогда пользователю в Шарде 1 необходимо отправить данные пользователю в Шарде 3, требуется механизм координации. Это увеличивает задержку и сложность межшардовских транзакций.
  4. Эволюционный подход EthereumВ рамках стратегии шардинга Ethereum произошел переход от «шардинга выполнения» (параллельная обработка транзакций) к «шардингу доступности данных» (экономичное параллельное хранение данных роллапов). Это дополняет роллапы второго уровня, а не заменяет их.
  5. Вопросы безопасности для каждого сегментаЕсли в шардах слишком мало валидаторов, их легче атаковать. Решения включают случайное назначение валидаторов (предотвращает целенаправленные атаки), доказательства мошенничества между шардами и внутришардовый консенсус в стиле BFT.

Примеры из реального мира

СценарийРеализацияРезультат
Рядом с пасленомNEAR автоматически увеличивает количество шардов по мере роста использования.Теоретическая производительность составляет более 100 000 транзакций в секунду; стоимость остается на уровне ~0.001 долл. США/транзистор независимо от масштаба.
Прото-данксшардинг EthereumИспользование блоков данных EIP-4844 позволяет снизить затраты на передачу данных в канале L2 в 10-100 раз.арбитум После обновления до EIP-4844 размер комиссионных сборов снижается с 0.10 до 0.01 доллара.
Шардинг Harmony ONEАктивны 4 шарда; межшардовские транзакции занимают около 2 секунд.Была продемонстрирована сегментация производства; позже мост был взломан за 100 миллионов долларов.
Адаптивное сегментирование MultiversXНачинается с 1 сегмента; сегменты добавляются по мере присоединения валидаторов.Продемонстрировано динамическое масштабирование; 3 сегмента = 15 000 транзакций в секунду на момент запуска.

Преимущества

ПреимуществаОписание
Линейная масштабируемостьДобавление фрагментов пропорционально увеличивает пропускную способность.
Сохранение децентрализацииКаждый сегмент может иметь множество валидаторов; централизация не требуется.
Сниженные требования к узламУзлы хранят и обрабатывают только данные своего сегмента; более низкие требования к оборудованию.
Масштабируемость уровня 1Встроенное масштабирование без предположений о доверии уровня L2.

Недостатки и риски

НедостатокОписание
Межсегментная сложностьМежсегментные транзакции увеличивают задержку и сложность программирования.
Безопасность на каждый сегментМеньшее количество валидаторов на сегмент снижает стоимость атаки по сравнению с монолитной цепочкой.
Сложности реализацииШардинг — один из наиболее технически сложных подходов к масштабированию блокчейна.
фрагментация государстваРазделение данных и состояния по сегментам увеличивает сложность работы разработчиков.
Накладные расходы на координациюУровень цепочки маяков/координации усложняет инфраструктуру.

Советы по управлению рисками:

  • При использовании шардированных блокчейнов важно понимать, на каком сегменте находятся ваши активы; некоторые обозреватели блокчейна привязаны к конкретному сегменту.
  • Транзакции между сегментами могут иметь более высокую задержку; учитывайте это при проведении операций DeFi, чувствительных ко времени.
  • Отслеживайте распределение валидаторов в сегментах; очень небольшие наборы валидаторов в сегментах представляют собой концентрированный риск атаки.

FAQ

Почему Ethereum изменил свою стратегию шардинга?

Первоначально шардинг в Ethereum (шардинг выполнения) предполагал выполнение транзакций в 64 параллельных сегментах. Однако доминирующим подходом к масштабированию стали роллапы L2, и Ethereum перешёл к «данксшардингу» — обеспечению дешёвой доступности данных для роллапов — вместо конкуренции с L2. В результате он стал более эффективным: роллапы обрабатывают шардинг выполнения, а Ethereum обеспечивает шардинг доступности данных.

Шардинг — это то же самое, что и второй уровень?

Нет. Шардинг — это решение для масштабирования на первом уровне (Layer 1) — он разделяет собственную обработку блокчейна на параллельные сегменты. Второй уровень масштабируется за счет обработки транзакций вне блокчейна и периодического перевода на первый уровень. Подход Ethereum сочетает в себе оба подхода: шардинг данных на первом уровне (danksharding) + масштабирование выполнения на втором уровне (rollups).

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

Danksharding — это планируемая реализация шардинга в Ethereum (названная в честь исследователя Данкрада Фейста), которая фокусируется на предоставлении 64 параллельных каналов для хранения данных в виде «блоков» с низкими затратами. Она не шардирует выполнение (Ethereum L1 по-прежнему обрабатывает все блоки); она шардирует доступность хранилища данных.

Что такое прото-данкшардинг (EIP-4844)?

В рамках EIP-4844 были введены «блобы» — большие временные блоки данных, прикрепленные к блокам, — как шаг к полноценному дарксхардингу. Блобы значительно снижают затраты на данные L2 без усложнения, характерного для полноценного дарксхардинга. Внедрено в марте 2024 года на Ethereum.

Ставит ли сегментирование данных под угрозу безопасность?

Правильно спроектированная система шардинга обеспечивает безопасность за счет: случайного назначения валидаторов шардам (предотвращает целевые атаки), межшардовских доказательств мошенничества или доказательств действительности, а также обеспечения достаточного количества валидаторов в каждом шарде. Неправильно спроектированная система шардинга (слишком мало валидаторов на шард) может снизить безопасность.

Медиа