Децентрализованные вычисления на основе технологии блокчейн — новое поколение облачных сервисов

Децентрализованные вычисления на основе технологии блокчейн — новое поколение облачных сервисов

Несмотря на широкое распространение крупных облачных платформ и ежегодно-снижающуюся стоимость на облачные вычисления, они всё ещё остаются централизованными с точки зрения управления. А это несёт за собой целый ряд вопросов: от приватности данных и защищенности централизованных серверов от взлома, до зависимости от корпорации, которая в любой момент может указать вам на дверь или просто перекрыть кислород. Поэтому сейчас как никогда актуальна идея реализации данной технологии путём объединения свободных вычислительных мощностей рядовых интернет-пользователей и профессиональных майнеров.

История

Попытки создания сетей для децентрализованных вычислений предпринимались ещё в 70-х годах прошлого века. Никакой глобальности: объединялись максимум несколько десятков компьютеров в рамках локальной сети. Их использовали для решения сложных математических задач, которые были не по зубам процессорам того времени. О хранении данных, дистрибуции контента и более сложных функции сетей в ту пору даже не задумывались.

Децентрализованные вычисления на основе технологии блокчейн — новое поколение облачных сервисов

В 90-е годы бурное развитие интернета существенно расширило возможности построения сетей. Начали организовываться более серьёзные проекты. Большинство — для решения конкретных задач, часто разовых.
Типичные примеры сетей того времени:
— SEMI@home — сеть энтузиастов в области поиска сигналов внеземных цивилизаций;
— GIMPS — сеть по определению простых чисел Мерсенна;
— distributed.net — сеть конкурсных вычислений под разные, как правило некоммерческие задачи.

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

Теория

В изначально правильной модели существовала одна проблема, которая крылась в самой теории развития сетей. «Сначала мы научимся вычислять,
а потом поймём, как на этом заработать», – рассуждали первопроходцы.
Увы, основатели таких проектов оказались никудышными коммерсантами. Да ещё вдобавок медленный и дорогой интернет 90-х и начала нулевых неизбежно приводил к проблемам масштабирования.

Децентрализованные вычисления на основе технологии блокчейн — новое поколение облачных сервисов

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

В базовом виде подобным сетям не хватало ряда ключевых элементов:
— большой и быстрорастущей клиентской базы, запросов на вычисления;
— готовых наборов утилит для клиентов;
— готовых легкоинтегрируемых решений для новых участников сети;
— маркетинга в чистом виде;
— бесконечной задачи, на которую нужны фактически все ресурсы сети при полной круглосуточной загрузке;
— легкой и понятной участникам сети формы взаиморасчетов.

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

Если с, условно говоря, «заказчиками», всё относительно ясно, то перед «исполнителями» сразу же встаёт ряд вопросов: чем платить — в начале
и в процессе, как загружать их мощности, каким образом определять объём проведённых операций и т.д.

Применение

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

— мобильные устройства с установленным сетевым приложением;

— старый домашний компьютер на *nix;

— современная майнинговая ферма;

— свободные серверные мощности небольших компаний и дата-центров;

— умные устройства, бортовые компьютеры транспортных средств и многое другое.

Нейросети

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

— экономический анализ;

— маркетинговый анализ;

— предиктивный анализ;

— поведенческий анализ;

— решение и формирование исследовательский алгоритмов;

— управление беспилотниками и их обучение;

— оценка и улучшение качества производства.

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

Вычисления

Процессоры большой мощности и оперативная обработка данных — дорогое удовольствие. Простейшие сервера, способные поддерживать корпоративную систему документооборота на 200 пользователей, стоят
по 250-400 долларов США в месяц. При этом для их настройки
и обслуживания придётся нанимать сотрудника или аутсорсинговую компанию. Если же сервер предоставляется в комплекте SaaS, то подобное решение обойдётся примерно в 10 долларов за пользователя.
А это – уже 2000 долларов в месяц.

Децентрализованные вычисления на основе технологии блокчейн — новое поколение облачных сервисов

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

Распределённые вычисления способны решить скейлабилити-задачу именно по принципу «чем больше – тем быстрее». И за гораздо меньшие деньги!

В распределённой сети утилиты, отвечающие за постановку CPU-задач, способны поднимать скейл участников сети, на которых приходятся пиковые нагрузки. Поэтому клиент не чувствует снижения скорости. А в моменты снижения нагрузки на сеть для проведения операции можно использовать мощность единственного участника.

Хранение данных

Коммерческие облачные сервисы идеально – недорого и легко масштабируемо – решают проблему хранения открытых данных. В том же AWS S3 не существует привязки к изначальным параметрам дискового пространства: вы используете всё доступное дисковое пространство
и платите за запросы.

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

Если со статикой и контентом всё более-менее понятно, то с приватными данными вопросов очень много. Дело в том, что базы данных абсолютного большинства коммерческих облачных сервисов – централизованные,
т.е. по умолчанию вы поднимаете сервер или утилиту в которой определяете дисковое пространство и разворачиваете СУБД.
Проблема централизованного хранения, даже если вы используете две СУБД с разной степенью доступа, заключается в недостаточной глубине шифрования данных. Безусловно для взлома хорошо защищённой базы данных злоумышленнику придётся повозиться. Зато в случае успеха
он получает полный доступ к данным.

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

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

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

Дистрибуция контента

Важнейшие показатели дистрибуции контента — скорость и скейлабильность. Главные проблемы — так называемая Последняя миля, а также загруженность узлов крупных провайдеров при пиковых нагрузках. Предиктивные модели распространения контента по сети такими провайдерами используются довольно слабо, вместо них применяют модель «По запросу»: если запрос на контент Х прошёл в каком-либо узле сети,
то этот узел сохраняет такой контент для дистрибуции.

Использование предиктивной модели, в свою очередь, подразумевает анализ истории запросов и распределение контента на основе предполагаемых запросов на новый и старый контент. Если из Х следует запрос
на появившийся Y, то Y будет распространён по узлам до повышения нагрузки.
В итоге контент распределяется в период начала его появления, не нагружая ни основные узлы, ни Последнюю милю. В пиковые моменты основные узлы будут свободны для выполнения приоритетных задач, а дистрибуция будет вестись из Последней мили, в классическом понимании — из локальной сети провайдера в округе, городе, районе или секторе.

Где блокчейн?

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

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

Продолжение следует

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

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

В чем основная проблема организации децентрализованных добровольных вычислений?
Сложность интеграции разных вычислительных мощностей
Низкая скорость сети
Другое
Оценка выполненной работы и соизмеримой оплата
Недоверие пользователей, владельцев данных
Безопасность данных
5555
10 комментариев

Как вы пишите "Процессоры большой мощности и оперативная обработка данных — дорогое удовольствие" , но по мне это самый оптимальный вариант на 2018 год

2

считаю 2018 год, годом криптовалют))

Из статьи я почерпнул ничего. Слово "небулятивный" отправлено в парижскую палату мер и весов.

скейлабильностьЕсть в русском языке такое слово - масштабируемость.
скейл участников сетимасштаб...

Ну пасиб за интересную инфу