2 минуты
Контейнер для разработки субпотоков
Разработайте свой первый проект с помощью контейнера для разработки.
Что такое контейнер для разработки?
Это инструмент, который поможет Вам создать первый проект. Вы можете использовать его удалённо через Github Codespaces или локально, клонировав репозиторий Substreams Starter.
Внутри контейнера для разработки команда substreams init
настраивает сгенерированный код проекта субпотоков, позволяя вам легко создать субграф или решение на базе SQL для обработки данных.
Предварительные требования
- Убедитесь, что Docker и VS Code обновлены до последних версий.
Ориентирование в контейнере для разработки
В контейнере для разработки вы можете либо создать, либо импортировать свой собственный файл substreams.yaml
и ассоциировать модули в минимальном пути, либо выбрать автоматически сгенерированные пути субпотоков. Затем, когда вы запускаете команду Substreams Build
, она создаёт файлы Protobuf.
Параметры
- Minimal: Начинает с необработанного блока
.proto
и требует доработки. Этот путь предназначен для опытных пользователей. - Non-Minimal: Извлекает отфильтрованные данные, используя сетевые кэши и Protobuf файлы, полученные из соответствующих основных модулей (поддерживаемых командой StreamingFast). Этот путь создаёт рабочие субпотоки “из коробки”.
Чтобы поделиться своей работой с широкой аудиторией, опубликуйте свой .spkg
в реестре субпотоков с помощью:
substreams registry login
substreams registry publish
Примечание: Если у вас возникнут проблемы внутри контейнера для разработки, используйте команду help
, чтобы получить доступ к инструментам для устранения неполадок.
Создание Sink для вашего проекта
Вы можете настроить свой проект для запроса данных либо через субграф, либо напрямую из базы данных SQL:
- Субграф: Запустите команду
substreams codegen subgraph
. Это создаст проект с базовыми файламиschema.graphql
иmappings.ts
. Вы можете настроить эти файлы для определения объектов на основе данных, извлечённых с помощью субпотоков. Больше настроек смотрите в документации по хранилищу субграфа. - SQL: Запустите команду
substreams codegen sql
для SQL-запросов. Для получения дополнительной информации о настройке SQL sink, обратитесь к документации по SQL.
Варианты развертывания
Чтобы развернуть субграф, вы можете либо запустить graph-node
локально с помощью команды deploy-local
, либо развернуть его в Subgraph Studio, используя команду deploy
, указанную в файле package.json
.
Распространённые ошибки
- При запуске локально убедитесь, что все Docker-контейнеры работают корректно, выполнив команду
dev-status
. - Если при создании проекта вы указали неверный начальный блок, откройте файл
substreams.yaml
, измените номер блока и заново выполните командуsubstreams build
.