Данные и аналитика
Введение
По мере роста использования сети все больше ценной информации будет содержаться в ончейн-данных. Поскольку объем данных стремительно увеличивается, вычисление и агрегирование этой информации для создания отчетов или управления децентрализованным приложением (dapp) может стать трудоемким процессом, требующим больших затрат времени.
Использование существующих поставщиков данных может ускорить разработку, обеспечить более точные результаты и снизить затраты на текущее обслуживание. Это позволит команде сосредоточиться на основных функциях, которые пытается предоставить их проект.
Предварительные требования
Вам следует понимать базовую концепцию обозревателей блоков, чтобы лучше понять их использование в контексте аналитики данных. Кроме того, ознакомьтесь с концепцией , чтобы понять, какие преимущества он дает при проектировании системы.
С точки зрения архитектурных основ, необходимо понимать, что такое API (открывается в новой вкладке) и REST (открывается в новой вкладке), хотя бы в теории.
Обозреватели блоков
Многие обозреватели блоков предлагают шлюзы RESTful (открывается в новой вкладке) API (открывается в новой вкладке), которые предоставляют разработчикам доступ к данным в реальном времени о блоках, транзакциях, валидаторах, аккаунтах и другой ончейн-активности.
Затем разработчики могут обрабатывать и преобразовывать эти данные, чтобы предоставить своим пользователям уникальную аналитику и возможности взаимодействия с . Например, Etherscan (открывается в новой вкладке) и Blockscout (открывается в новой вкладке) предоставляют данные об исполнении и консенсусе для каждого 12-секундного слота.
The Graph
The Graph (открывается в новой вкладке) — это протокол индексирования, который предоставляет простой способ запроса данных блокчейна через открытые API, известные как подграфы.
С The Graph разработчики могут воспользоваться следующими преимуществами:
- Децентрализованное индексирование: позволяет индексировать данные блокчейна с помощью нескольких индексаторов, тем самым устраняя любую единую точку отказа.
- Запросы GraphQL: предоставляет мощный интерфейс GraphQL для запроса индексированных данных, что делает извлечение данных невероятно простым.
- Настройка: определяйте собственную логику для преобразования и хранения данных блокчейна, а также повторно используйте подграфы, опубликованные другими разработчиками в сети The Graph.
Следуйте этому краткому руководству (открывается в новой вкладке), чтобы создать, развернуть и сделать запрос к подграфу за 5 минут.
Разнообразие клиентов
Разнообразие клиентов важно для общего состояния сети Эфириум, поскольку оно обеспечивает устойчивость к ошибкам и эксплойтам. В настоящее время существует несколько панелей мониторинга разнообразия клиентов, включая clientdiversity.org (открывается в новой вкладке), rated.network (открывается в новой вкладке), supermajority.info (открывается в новой вкладке) и Ethernodes (открывается в новой вкладке).
Dune Analytics
Dune Analytics (открывается в новой вкладке) предварительно обрабатывает данные блокчейна в таблицы реляционной базы данных (DuneSQL), позволяет пользователям запрашивать данные блокчейна с помощью SQL и создавать панели мониторинга на основе результатов запросов. Ончейн-данные организованы в 4 необработанные таблицы: blocks, transactions, (события) logs и (вызовы) traces. Популярные контракты и протоколы были декодированы, и каждый из них имеет собственный набор таблиц событий и вызовов. Эти таблицы событий и вызовов обрабатываются дальше и организуются в таблицы абстракций по типу протоколов, например, dex, кредитование, стейблкоины и т. д.
SQD
SQD (открывается в новой вкладке) — это децентрализованная гипермасштабируемая платформа данных, оптимизированная для обеспечения эффективного общедоступного доступа к большим объемам данных. В настоящее время она обслуживает исторические ончейн-данные, включая журналы событий, квитанции транзакций, трассировки и изменения состояния для каждой транзакции. SQD предлагает мощный набор инструментов для создания пользовательских конвейеров извлечения и обработки данных, достигая скорости индексирования до 150 тысяч блоков в секунду.
Для начала посетите документацию (открывается в новой вкладке) или посмотрите примеры EVM (открывается в новой вкладке) того, что вы можете создать с помощью SQD.
SubQuery Network
SubQuery (открывается в новой вкладке) — это ведущий индексатор данных, который предоставляет разработчикам быстрые, надежные, децентрализованные и настраиваемые API для их проектов Web3. SubQuery предоставляет разработчикам из более чем 165 экосистем (включая Эфириум) богатые индексированные данные для создания интуитивно понятного и захватывающего опыта для своих пользователей. Сеть SubQuery обеспечивает работу ваших непрерывно работающих приложений с помощью отказоустойчивой и децентрализованной инфраструктурной сети. Используйте набор инструментов разработчика блокчейна SubQuery для создания приложений Web3 будущего, не тратя время на создание собственного бэкенда для обработки данных.
Для начала посетите краткое руководство по Эфириуму (открывается в новой вкладке), чтобы начать индексировать данные блокчейна Эфириум за считанные минуты в локальной среде Docker для тестирования перед запуском в управляемом сервисе SubQuery (открывается в новой вкладке) или в децентрализованной сети SubQuery (открывается в новой вкладке).
Codex
Codex (открывается в новой вкладке) — это API данных блокчейна в реальном времени, предоставляющий обогащенные данные для более чем 70 миллионов токенов в более чем 80 сетях. Разработчики могут получить доступ к структурированным ценам на токены, балансам кошельков, истории транзакций и агрегированной аналитике (объем, ликвидность, уникальные кошельки) без поддержки собственной инфраструктуры индексирования. Codex поддерживает доставку данных за доли секунды через интеграции WebSocket и вебхуков.
Для начала посетите документацию (открывается в новой вкладке), попробуйте Обозреватель (открывается в новой вкладке) или зарегистрируйтесь на панели управления (открывается в новой вкладке).
Mobula (открывается в новой вкладке) — это высокопроизводительный API криптовалютных данных, предоставляющий рыночные данные в реальном времени и исторические данные, метаданные токенов, портфели кошельков и ончейн-аналитику для более чем 90 блокчейнов. Разработчики могут получить доступ к конечным точкам REST и GraphQL для получения цен на токены, рыночной капитализации, объемов торгов, данных о ликвидности и балансов мультичейн-кошельков без запуска собственной инфраструктуры. Mobula предлагает как бесплатные (100 000 запросов в месяц), так и платные тарифные планы для рабочих приложений.
Для начала посетите документацию (открывается в новой вкладке), изучите справочник по API (открывается в новой вкладке) или зарегистрируйтесь на панели управления (открывается в новой вкладке).
EVM Query Language
EVM Query Language (EQL) — это SQL-подобный язык, предназначенный для запросов к цепям EVM (виртуальной машины Эфириума). Конечная цель EQL — поддержка сложных реляционных запросов к объектам первого класса цепи EVM (блокам, аккаунтам и транзакциям), предоставляя разработчикам и исследователям эргономичный синтаксис для повседневного использования. С помощью EQL разработчики могут извлекать данные блокчейна, используя знакомый SQL-подобный синтаксис, и устранить необходимость в сложном шаблонном коде. EQL поддерживает стандартные запросы данных блокчейна (например, получение нонса и баланса аккаунта в Эфириуме или получение текущего размера блока и временной метки) и постоянно добавляет поддержку более сложных запросов и наборов функций.
Envio (открывается в новой вкладке) — это фреймворк индексирования, который превращает ончейн-события в GraphQL API с возможностью запросов. Он поддерживает Эфириум и любую EVM-совместимую цепь. Разработчики пишут обработчики событий на TypeScript, JavaScript или ReScript для предоставления данных в реальном времени и исторических данных с поддержкой реорганизации, мультичейн-индексирования и управляемого хостинга в Envio Cloud или самостоятельного хостинга.
Для начала следуйте краткому руководству по HyperIndex (открывается в новой вкладке), чтобы создать, развернуть и сделать запрос к индексатору.
Дополнительная литература
- Изучение криптоданных I: архитектуры потоков данных (открывается в новой вкладке)
- Обзор сети Graph (открывается в новой вкладке)
- Песочница запросов Graph (открывается в новой вкладке)
- Примеры кода API на Etherscan (открывается в новой вкладке)
- Документация по API на Blockscout (открывается в новой вкладке)
- Обозреватель сигнальной цепочки Beaconcha.in (открывается в новой вкладке)
- Основы Dune (открывается в новой вкладке)
- Краткое руководство по SubQuery для Эфириума (открывается в новой вкладке)
- Обзор сети SQD (открывается в новой вкладке)
- EVM Query Language (открывается в новой вкладке)
Руководства: Данные и аналитика / SQL в Эфириуме
- Изучение базовых тем Эфириума с помощью SQL — запрашивайте ончейн-данные Эфириума с помощью SQL, чтобы понять основы транзакций, блоков и газа.