Спасибо за прочтение Shoal Research! Подпишитесь бесплатно, чтобы получать новые сообщения и поддержать мою работу.
Подписаться
Но что такое точно транзакция?
Транзакции на блокчейнах включают передачу цифровых активов с одного адреса на распределенном реестре на другой, обеспеченные использованием криптографии открытого ключа. Транзакции могут использоваться для децентрализованных передач от одного участника к другому или для различных процессов аутентификации и верификации.
Пример транзакции, которую может наблюдать любой пользователь в обозревателе блокчейна, таком как SeiTrace### 1.1 Как работают транзакции в блокчейнеКогда инициируется транзакция, то есть Боб отправляет некоторые токены Элис, транзакция Боба транслируется в базовую сеть блокчейна. Впоследствии кластеры специализированных узлов в сети начинают проверять и подтверждать транзакцию как легитимную. Как только достаточное количество этих узлов подтвердят содержимое транзакции, транзакция добавляется в блок вместе с другими транзакциями пользователей. Как только блок заполнен, он добавляется в цепочку, отсюда и название 'блокчейн'. Транзакция Боба теперь является частью безопасного и прозрачного реестра, и он и Алиса могут проверить содержимое.
В общем, все транзакции блокчейна содержат метаданные, которые помогают узлам, работающим и обеспечивающим безопасность сети, идентифицировать и выполнить конкретный набор инструкций и параметров. У каждой транзакции будет высокоуровневые данные, введенные исходным отправителем, такие как сумма для передачи, адрес назначения и цифровая подпись для подтверждения транзакции, а также различные низкоуровневые данные, которые создаются и автоматически прикрепляются, хотя эти данные различаются в зависимости от сети и дизайна.
В конечном итоге, однако, процессы, заложенные за кулисами на сетевом уровне перед выполнением транзакции, различаются в зависимости от дизайна блокчейна.
Для лучшего понимания мы можем изложить жизненный цикл транзакции на блокчейне, использующем пул памяти;

Давайте пройдемся по жизненному циклу транзакции на блокчейне без пула транзакций:

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

Изначально реализованный только в системах высокопроизводительных вычислений, параллельные вычисления развились до доминирующей парадигмы в архитектуре компьютеров сегодня, поскольку спрос на вычисления экспоненциально возрос в интернет-эпоху, обостренную ограничениями масштабирования частоты в предыдущие десятилетия.
Этот архитектурный стандарт применяется к блокчейнам таким же образом, только что основная задача, которую решают компьютеры, - это обработка и выполнение транзакций, или передача стоимости от смарт-контракта A к смарт-контракту B, отсюда и термин параллельное выполнение.
Параллельное выполнение означает, что вместо последовательной обработки транзакций блокчейн может обрабатывать несколько не конфликтующих транзакций одновременно. Это может значительно увеличить пропускную способность сети блокчейн, сделав ее более масштабируемой и эффективной для обработки более высоких нагрузок активности и спроса на место в блоке.
Для более простой аналогии. рассмотрим эффективность продуктового магазина с несколькими кассами для покупателей по сравнению с одной для всех.
Хотя это может показаться просто интуитивной функцией повышения качества жизни, разблокировка производительности сети, обеспеченная параллельным выполнением, открывает путь к разработке новых и инновационных сценариев использования и приложений, которые могут использовать низкую задержку и высокие объемы, что само по себе заложит основу для привлечения следующей массовой группы пользователей в крипто-экосистемы.
Параллельное выполнение на блокчейнах может быть классифицировано как детерминированное или оптимистичное. Детерминированное параллельное выполнение, используемое блокчейнами, такими как Solana, неизбежно требует от транзакций заранее объявлять все зависимости памяти, т.е. какие части глобального состояния они хотят получить заранее. Хотя этот шаг создает дополнительные накладные расходы для разработчиков, более общим образом это позволяет сети сортировать и идентифицировать транзакции, не конфликтующие между собой, перед выполнением, создавая оптимизированную систему, которая является предсказуемой и эффективной. Напротив, оптимистичное параллельное выполнение структурировано для обработки всех транзакций параллельно, действуя на предположении, что конфликтов нет. Это позволяет базовому блокчейну обеспечивать более быстрое выполнение транзакций, хотя за счет потенциальной повторной обработки в случае конфликта. Если обнаруживаются две конфликтующие транзакции, система может затем повторно обрабатывать и выполнять их параллельно или последовательно.
Для лучшего понимания последствий этих тонких моментов дизайна может быть полезным проанализировать параллельное выполнение через призму команд, продвигающих границы параллельного выполнения сегодня.


В средах на базе SM Sealevel использует многопоточную архитектуру, что означает, что она может обрабатывать несколько транзакций одновременно в пределах мощности ядра валидатора.
Ключ к возможности параллельного выполнения Соланы заключается в том, что когда транзакция активируется, сеть назначит список инструкций для выполнения этой транзакции, конкретно указывая, к каким учетным записям и состоянию обращаться и какие изменения вносить - это ключевой момент для определения того, какие транзакции не конфликтуют и могут выполняться одновременно, а также для возможности выполнения транзакций, которые пытаются получить доступ к одному и тому же состоянию, одновременно.
Рассмотрим эффективность, которую обеспечивают этикетки для системы регистрации багажа в аэропортах.
Solana также использует Cloudbreak, свою собственную пользовательскую accountsDB, для хранения и управления состоянием данных с целью обеспечить параллельное чтение и запись транзакций. Cloudbreak, оптимизированный для параллельного выполнения, горизонтально масштабируется для распределения и управления состоянием данных по нескольким узлам.
Благодаря своей параллельной архитектуре Солана может обрабатывать большое количество транзакций и при этом быстро выполнять их, обеспечивая почти мгновенную окончательность транзакций. Солана в настоящее время обрабатывает от 2 000 до 10 000 транзакций в секунду (TPS) в среднем. Более того, сферы применения SVM медленно, но верно расширяются, поскольку команды, такие как Eclipse, начинают внедрять инфраструктуру уровня 2, которая стремится использовать SVM в качестве среды выполнения.
Изначально Sei использовал детерминированную параллельную модель выполнения, в которой умные контракты заранее объявляют свой необходимый доступ к состоянию, чтобы система могла одновременно выполнять не конфликтующие транзакции. С началом их обновления до V2 Sei переходит к оптимистичной параллельной модели, что означает, что все транзакции будут обрабатываться параллельно после их отправки в сеть (стадия выполнения), а затем будут проверяться на наличие конфликтующей информации с предыдущими транзакциями (стадия валидации). В случае двух или более конфликтующих транзакций, т.е. транзакций, пытающихся получить доступ к одному и тому же состоянию сети, Sei определяет эту точку конфликта, а затем повторно выполняет транзакции параллельно или последовательно в зависимости от характера конфликта.

Для хранения и обслуживания данных транзакций Sei также представит SeiDB, специальную базу данных, которая стремится улучшить недостатки v1 путем оптимизации параллельного выполнения. SeiDB нацелена на снижение накладных расходов по хранению избыточных данных и поддержанию эффективного использования диска для улучшения сетевой производительности. V2 сокращает объем метаданных, необходимых для отслеживания и хранения, и позволяет использовать журнал предварительной записи для помощи в восстановлении данных в случае сбоя.

Наконец, Sei также недавно объявила о запуске своего Parallel Stack, открытой платформы для обеспечения масштабируемых решений Layer 2, т. е. rollups, с возможностью использования и получения выгоды от параллельного выполнения.

Monad реализует параллельное выполнение и суперскалярное конвейерное выполнение для оптимизации скорости и пропускной способности транзакций. Подобно Sei v2, Monad будет использовать оптимистичную модель выполнения, что означает, что сеть начинает выполнять все входящие транзакции одновременно, а затем анализирует и проверяет транзакции на наличие конфликтов и перезапускает их соответственно, с конечной целью, чтобы результат был идентичен, если бы транзакции были выполнены последовательно.

Важно отметить, что для поддержания синхронизации с Ethereum заказы Monad транзакций в блоке выполняются последовательно, с обновлением каждой транзакции по порядку.
Для более эффективного обслуживания и доступа к данным блокчейна, чем это предлагают текущие состояния клиентов Ethereum, Monad создал свою собственную собственную MonadDB, созданную нативно для блокчейнов. Monad DB использует передовые функции ядра Linux для эффективных асинхронных операций с диском, устраняя ограничения синхронного доступа к вводу/выводу. MonadDB предлагает асинхронный доступ к вводу/выводу (async I/O), ключевая функция для обеспечения параллельного выполнения, при которой система может начать обработку следующей транзакции, ожидая чтения состояния предыдущей транзакции.
Для простой аналогии можно рассмотреть приготовление многофункционального блюда (спагетти с фрикадельками). Включенные шаги: 1) приготовление соуса, 2) приготовление фрикаделек и 3) приготовление пасты. Эффективный повар начал бы с кипячения воды для пасты, затем приготовил бы ингредиенты для соуса, затем бросил бы пасту в уже кипящую воду, затем приготовил бы соус, и, наконец, фрикадельки, в отличие от выполнения каждого шага поочередно, завершения каждой задачи полностью перед переходом к следующей.
MoveVM служит в качестве среды выполнения для блокчейнов, основанных на Move, используя параллелизацию для обеспечения более быстрой скорости выполнения транзакций и общей эффективности.

Блок-STM - это многопоточный параллельный исполнительный механизм, который позволяет оптимистично выполнять параллельные операции. Транзакции предварительно упорядочены и стратегически упорядочены внутри блоков, что является ключом к эффективному разрешению конфликтов и повторному выполнению этих транзакций. Исследование, проведенное Aptos, показало, что с помощью параллелизации Block-STM теоретически можно поддерживать до 160 тыс. транзакций в секунду.

Подобно Solana, Sui реализует детерминированное параллельное выполнение, которое требует, чтобы транзакции заранее указывали, к каким счетам им нужно получить доступ.
Movement создает набор инструментов для разработчиков и сервисов инфраструктуры блокчейна, позволяющих разработчикам легко получить преимущества разработки на Move. Действуя как поставщик услуг выполнения как сервиса, сходного с AWS, для разработчиков Move, Movement реализует параллелизацию как основную концепцию проектирования для обеспечения более высокой производительности и общей эффективности сети. MoveVM - модульная среда выполнения, которая позволяет блокчейн-сетям расширять и настраивать свои возможности обработки транзакций по мере необходимости для поддержки увеличивающегося объема транзакций, укрепляя их способности обрабатывать и выполнять транзакции параллельно.

Архитектура MoveVM
Движение также запустит M2, ZK-rollup, который будет совместим с клиентами EVM и Move. M2 унаследует движок параллелизации Block-STM и, как ожидается, обеспечит десятки тысяч TPS в результате.
Не является финансовыми или налоговыми консультациями. Цель этого информационного бюллетеня чисто образовательная и не должна рассматриваться как инвестиционный совет, юридический совет, запрос на покупку или продажу каких-либо активов или предложение принять какие-либо финансовые решения. Это не заменяет налоговый совет. Пожалуйста, проконсультируйтесь со своим бухгалтером и проведите собственное исследование.
Раскрытия. Все сообщения являются собственностью авторов, а не точкой зрения их работодателя. Этот пост был спонсирован Aster Foundation. Хотя Shoal Research получила финансирование для этой инициативы, спонсоры не влияют на аналитический контент. В Shoal Research мы стремимся обеспечить объективность и независимость всего контента. Наши внутренние процессы рецензирования поддерживают высочайшие стандарты целостности, и все потенциальные конфликты интересов раскрываются и строго управляются для поддержания достоверности и беспристрастности наших исследований.





