Что такое технология шардинг (sharding) для криптовалюты и блокчейна Ethereum?

Битрикс24. Инструкция для начинающих. Стратегический маркетинг, обзоры интернет-рынков, актуальные новости для маркетологов – все это и многое другое на Quokka Media.

 

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

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

Именно такова нынешняя проблема сети Ethereum. Решить ее предлагается с помощью шардинга (sharding) — способа, позволяющего увеличить масштабируемость и скорость транзакций.

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

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

Можно описать простейший пример шардинга. Создатель Эфириума Виталик Бутерин называет это «масштабированием на 1000 альткойнов».

 

Читайте также:  Что такое депозитарные расписки: объясняю простыми словами на морковках

 

В данном случае вместо одного блокчейна используется несколько, и каждый из них называется «шард». В свою очередь, каждый шард имеет свою сеть валидаторов, или узлов, которые либо майнят блоки с помощью алгори]доказательства выполнения работы (PoW)[/anchor], либо голосуют на основе доли владения (PoS).

Подключение оффлайн рекламных каналов

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

    1. Создать в Битрикс24 новые каналы.

подключение новых источников трафика в Битрикс24

    1. Выделить отдельный телефонный номер и email для каждого оффлайн источника. Не забывать в рекламе каждого канала использовать контактную информацию, которые вы укажете в Битрикс24.
    2. Распределить соответствующие номера и емейлы по каналам в сквозной аналитике Битрикс24.

Подробную инструкцию по настройке отдельных рекламных каналов можно найти в курсе Битрикс по сквозной аналитике .

Вызовы шардинга

Первая проблема шардинга в том, что, поскольку у каждого шарда своя сеть узлов, он менее безопасен, чем один большой блокчейн вроде Эфириума. Поэтому, если какое-то число узлов Эфириума решат провести хард-форк и образовать блокчейн с 10 шардами, каждый шард будет иметь лишь 10% безопасности изначального блокчейна. То есть каждый шард можно скомпрометировать или исказить, контролируя не 51% узлов изначального блокчейна, а 5,1%.

Вторая проблема в том, как будут выбираться узлы, выполняющие валидацию в каждом шарде. Для злоумышленника контроль 5,1% сетевых узлов представляет проблему, только если все они выполняют валидацию в одном и том же шарде. Если позволить узлам выбирать, в каком шарде они будут выполнять валидацию, это может вызвать частые сетевые атаки, так что лучший способ минимизировать риски – не предоставлять узлам такой выбор.

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

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

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

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

Настройка отслеживания источников обращения клиентов по рекламным каналам

Для отслеживания источников обращений клиентов используют:

UTM-метки

В ссылке на сайт в объявлении или на странице в соцсети нужно указать UTM-метку, которую мы задали при настройке канала в Битрикс24. При переходе на сайт по такой ссылке и отправке заявки на услугу, например, с сайта, в CRM создастся новая сделка. Сквозная аналитика автоматически определит источник обращения по UTM-метке.

 

Читайте также:  Как отличить настоящий ICO от мошеннического проекта

 

UTM-метки создаются при подключении источников обращений к сквозной аналитике. Эти метки нужно прописать в ссылке на сайт на ваших рекламных каналах в таком виде:

https://intervolga.ru/ ?utm_source=vkontakte

  • где https://intervolga.ru/ — сайт,
  • vkontakte — UTM-метка, указанная нами при подключении рекламного канала в Битрикс24.

Итак, чтобы использовать UTM-метку:

  • указываем ее при подключении рекламного канала,
  • в контактах рекламного канала указываем ссылку на сайт, подключенный к Битрикс24, с UTM-меткой.

Аналогично нужно прописать ссылки для всех рекламных площадок.

Коллтрекинг

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

В Битрикс24 на вкладке Коллтрекинг для каждого рекламного источника указывается свой номер телефона.

Технология подмены номера работает не только для Битрикс24.Сайтов и БУС, но для сайтов на любых платформах. Если посетитель переходит на сайт из рекламного канала, номер телефона на странице подменяется на привязанный к данному каналу. При звонке на привязанный номер телефона, в CRM будет создан новый лид (сделка), запись разговора сохранится, а в источнике звонка будет указан рекламный канал.

Чтобы настроить коллтрекинг нужно:

  • Подключить телефонию Битрикс24.
  • Купить нужное количество номеров по количеству рекламных каналов. Рекомендуем купить дополнительный номер нужен для выделения прочих источников переходов.
  • В настройках коллтрекинга распределить номера по каналам, как показано на картинке ниже.
  • Указать в материалах рекламного канала соответствующий телефонный номер. Для рекламных площадок использовать номер в объявлениях и визитках. Для наружной рекламы — печатать на баннерах.

распределение телефонных номеров в Битрикс24

Email-трекинг

Работает аналогично коллтрекингу. Он подменяет email на сайте на соответствующий каналу, с которого перешел клиент.

Для настройки CRM нужно:

  • подключить почтовые ящики к CRM,
  • распределить email адреса по источникам трафика,
  • указать в рекламных каналах соответствующие email-адреса.

распределение емейлов в Битрикс24

Как можно разбить данные на шарды?

Для начала рассмотрим, какие функции обычно выполняют узлы в блокчейне:

  1. Обрабатывают/валидируют транзакции.
  2. Передают эти транзакции и намайненные блоки другим узлам сети.
  3. Хранят историю всех транзакций.

Узлам нужно поспевать за ростом сети:

  1. При увеличении числа обрабатываемых транзакций каждому узлу нужно больше вычислительной мощности.
  2. При увеличении числа передаваемых транзакций каждому узлу нужна большая пропускная способность на выходе.
  3. Для хранения всех данных блокчейна узлу также постепенно нужно всё больше места.

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

 

Читайте также:  Руководство: Как работает майнинг и подтверждение транзакций в блокчейне

 

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

Далее давайте рассмотрим кросс-шардовые транзакции, недействительные транзакции и нечестное поведение. Базовый тип шардинга, описанный выше, не слишком полезен на практике, потому что такие шарды не могут взаимодействовать друг с другом и, как следствие, это всё равно что отдельные блокчейны.

Рассмотрим пример простого платежа. Если пользователь A и пользователь B находятся в одном шарде, валидаторы этого шарда смогут без проблем обработать транзакцию. Но что, если их счета находятся в разных шардах?

Пользователь A относится к шарду №1, а пользователь B – к шарду №2. Валидаторы каждого из этих шардов не смогут списать или зачислить средства, потому что они не имеют полномочий в другом шарде.

Однако эта проблема имеет решения, так что давайте подробнее рассмотрим некоторые из них:

Проблема масштабируемости и скорости транзакций

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

Чем больше число полных узлов, тем медленнее блокчейн. Разработчикам Ethereum приходится выбирать, какие из следующих трех требований удовлетворять в первую очередь:

  • Безопасность
  • Масштабируемость
  • Децентрализация

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

Асинхронные кросс-шардовые транзакции

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

Опять же, будем использовать пример пользователя A с шарда №1, который хочет переслать деньги пользователю B с шарда №2.

В этом сценарии шард, который отвечает за зачисление средств на счёт пользователя B, подтвердит свою часть транзакции только после того, как получит достаточно доказательств, что шард, отвечающий за списание средств со счёта пользователя A, сделал это.

Однако такой подход не идеален, так как есть ненулевая вероятность, что блок одного из шардов окажется «осиротевшим». А ненулевая, хоть и низкая вероятность – это всё равно уязвимость, которую нельзя игнорировать.

Пояснить можно на следующем рисунке.

В этом блокчейне два шарда, и по чистой случайности в обоих происходит форк как раз в момент включения транзакции в блок A в шарде №1 и блок X’ в шарде №2.

Когда случается такой форк, шард должен отклонить одну цепочку и принять другую. В данном случае, если шард №1 примет цепочку A, B и т. д., а шард №2 – цепочку W’, X’ и т. д., то транзакция будет подтверждена и всё будет в порядке.

Если же шард №1 примет цепочку A’, B’ и т. д., а шард №2 – цепочку W, X и т. д., то транзакция будет отклонена, что также приемлемый исход, так как её можно отправить повторно.

Но что будет, если шард №1 примет цепочку A, B и т. д., а шард №2 – цепочку W, X и т. д.? Одна часть транзакции будет подтверждена (A, B и т. д.), а другая – нет (W, X и т. д.).

Настройка сайта для работы сквозной аналитики

После настройки Битрикс24 и рекламных каналов Битрикс24.Сайты будут автоматически подставлять нужные контактные данные для клиентов и отображать их при переходе на сайт. При обращении клиента автоматически фиксируется источник.

Для других сайтов, в том числе, работающих на других cms, для работы сквозной аналитики нужно добавить на сайт JS-код одного из виджетов Битрикс24 (открытых линий или сквозной аналитики).

Кроме того, необходимо подключить сайт к CRM:

  • скопируйте адрес вашего сайта,
  • перейдите в раздел Сквозной аналитики -> Свой сайт и вставьте адрес в открывшемся окне.

подключение кода сквозной аналитики

JS-код виджета открытых линий можно найти в контакт-центре для открытых линий:

где взять код сквозной аналитики Битрикс24

Если открытые линии не используются, воспользуйтесь JS-кодом виджета сквозной аналитики:

 

Читайте также:  Амортизация облигаций. Облигации с амортизацией долга

 

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

Как настроить бизнес-процессы в RPA

Настройка процесса отображается в виде канбана и состоит из трёх частей:

  • стадии;
  • задания;
  • роботы.

Для начала редактирования на вкладке «Роботизация бизнеса» выбираем нужный нам процесс.

Стадии

По умолчанию Битрикс24 предлагает три стадии, которые можно редактировать и удалять. При необходимости можно добавлять собственные.

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

Добавление нового этапа бизнес процесса в RPA Битрикс24

Пример использования: если необходимо согласование нескольких лиц, можно создать стадию похожие стадии для каждого из согласований.

Задания

Задания показывают, какое действие в данный момент требуется совершить ответственному: оплатить счёт, утвердить назначение, указать дату.

Нажав «Добавить задание» мы увидим четыре типа:

  1. Утвердить или отклонить
  2. Запросить информацию
  3. Ознакомиться с информацией
  4. Просто передвинуть.

Выбираем подходящий вариант.

Шаблоны задания бизнес процесса в RPA Битрикс24

Откроется окно создания задания, слева которого расположены две вкладки:

  1. Основные. Здесь указываются основные параметры задания: название, текст, очередь ответственных и вид кнопки действия. В конце отмечается на какую стадию перейдёт выполненное задание.Основные поля задания бизнес процесса в RPA Битрикс24
  2. Поля, которые надо показать.Выбираем поля, которые будут видны сотруднику, выполняющему это задание.

    Поля которые надо показать в задании в RPA Битрикс24

Пример использования: если на какой-то из стадий необходима оплата счёта, сотрудник может предоставить необходимые для бухгалтерии документы.

Роботы

На канбане можно размещать не только задания, но и роботов. С их помощью помощью можно взаимодействовать и с теми сотрудниками, которые не являются ответственными за данный этап. Для добавления роботов нажмите на одноименную кнопку, расположенную справа от канбана.

Роботы в бизнес процессах в RPA Битрикс24

Откроется окно с отображением всех возможных стадий, для каждой из которых можно добавить робота.

Пример использования: если руководитель согласовал заявление сотрудника на отпуск, то сотруднику приходит уведомление об этом.

Пример робота в бизнес процессе в RPA Битрикс24

Настройка уведомлений в Битрикс24

В правом верхнем углу экрана нажмите на стрелочку рядом с вашим именем, дальше «Настройка уведомлений».

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

Как создать новый бизнес-процесс в RPA

Перед тем, как создавать процесс непосредственно в Битрикс24, важно заранее продумать его детали:

  • сколько этапов понадобится для этого процесса?
  • какие действия нужно будет выполнить на каждом этапе?
  • кто будет участником процесса?
  • какие нужны права доступа и кому?

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

Если вы уже готовы, то переходите во вкладку «Роботизация бизнеса (RPA)» и нажимайте на «Новый процесс».э

В открывшемся слайдере указываются основные параметры:

  • Название процесса
  • Кто может запускать процесс
  • Поля, которые надо заполнить при запуске. Например, если вам необходимо согласовать командировку, то создайте поле типа «Деньги», чтобы руководитель мог указать выделенную вам сумму.
  • Кто может изменять процесс
  • Изображение процесса. На выбор предоставляется 7 вариантов иконок.

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

Возможности триггеров Bitrix24

У триггеров есть возможность перемещения лидов или сделок в конкретную стадию, если выполняется одно из следующих действий:

Возможности триггеров

  1. Trigger будет активирован, как только клиенты присылают сообщение на e-mail.
  2. Участвуют все исходящие письма по конкретной сделке или лиду.
  3. Адресат прочитал письмо, которое было отправлено из CRM.
  4. Человек, указанный как получатель письма, перешел по ссылке в письме. Ссылки указываются во время создания triggers.
  5. Входящий звонок для любого варианта подключённой телефонии.
  6. Пропущенный звонок для любого варианта подключённой телефонии.
  7. У вас есть возможность отслеживания заполненных и отправленных CRM-форм от клиентов
  8. Можно отслеживать, конкретно, когда человек заполнял или отправлял CRM – форму, находящуюся на вашем сайте.
  9. Возможность использования вебхука. Для взаимодействия с таким триггером нужно указывать URL (специальную форму, обозначающую индивидуальный адрес в интернете).
  10. Trigger активируется при использовании визит-трекера.
  11. Когда клиенты заполняют форму CRM или же форму для обратных звонков Bitrix24 автоматически отслеживает момент повторного посещения сайта клиентом.
  12. Первые сообщения из выбранной вами открытой линии из любой подключённой.
  13. Любые сообщения из выбранной вами открытой линии из любой подключённой.
  14. Trigger срабатывает в момент бронирования любого ресурса из лидов или сделок.
  15. Trigger активируется, если в карточке сделки или лида создаётся документ.
  16. Стадии меняются после просмотра документа в карточке лида или сделки.
  17. Можно создать различные события при помощи каталога с различными приложениями в Приложения24.

Если после прочтения статьи у вас остались вопросы по настройке и внедрению Bitrix24, наша команда с радостью придёт к вам на помощь и ответит на все интересующие вас вопросы в чате или по телефону.

Тарификация в Битрикс24

Бесплатный тариф без ограничений по времени есть, с возможностью подключения не более 12 сотрудников. При регистрации вы можете подключить демо-режим на 30 дней с доступом к платным инструментам бизнес-пакета «Команда». Подробное сравнение тарифных планов здесь.

Разработчик предлагает воспользоваться сервисом:

  • В облаке – пользование в качестве онлайн-сервиса (по подписке).

  • Из коробки – установка на вашем сервере (конечная лицензия, то есть вы становитесь владельцем лицензии на продукт).

Начало работы в Битрикс24

Регистрация и создание

Откройте страницу регистрации Битрикс24, нажмите «Начать бесплатно». Выберите удобный способ регистрации.

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

 

Читайте также:  Всё о товарно-сырьевой бирже: чем на них торгуют + список крупнейших

 

Понравилась статья? Поделиться с друзьями: