Docs
Поиск⌘ K
  • Главная страница
  • О The Graph
  • Поддерживаемые сети
  • Protocol Contracts
  • Субграфы
    • Субпотоки
      • Token API
        • AI Suite
          • Индексирование
            • Ресурсы
              Субграфы

              5 минуты

              Быстрый старт

              Узнайте, как легко создать, опубликовать и запросить Субграф на The Graph.

              Предварительные требования

              • Криптовалютный кошелек
              • Адрес смарт-контракта в поддерживаемой сети
              • Node.js⁠ установлен
              • Менеджер пакетов на Ваш выбор (npm, yarn или pnpm)

              Как создать субграф

              1. Создайте Субграф в Subgraph Studio

              Перейдите в Subgraph Studio и подключите свой кошелек.

              Subgraph Studio позволяет создавать, управлять, развертывать и публиковать Субграфы, а также создавать и управлять API-ключами.

              Нажмите “Создать субграф”. Рекомендуется называть субграф с использованием Заглавного регистра: “Subgraph Name Chain Name”.

              2. Установка Graph CLI

              Выполните одну из следующих команд на своём локальном компьютере:

              Использование npm⁠:

              1npm install -g @graphprotocol/graph-cli@latest

              Использование yarn⁠:

              1yarn global add @graphprotocol/graph-cli

              3. Инициализируйте ваш субграф

              Вы можете найти команды для вашего конкретного субграфа на странице субграфа в Subgraph Studio.

              Команда graph init автоматически создаст каркас субграфа на основе событий вашего контракта.

              Следующая команда инициализирует ваш субграф на основе существующего контракта:

              1graph init

              Если Ваш контракт верифицирован на соответствующем блоксканере, где он развернут (например, Etherscan⁠), то ABI будет автоматически создан в CLI.

              Когда вы инициализируете свой субграф, CLI запросит у вас следующую информацию:

              • Протокол: Выберите протокол, данные из которого будет индексировать ваш субграф.
              • Слаг субграфа: Создайте имя для вашего субграфа. Слаг субграфа — это идентификатор для вашего субграфа.
              • Каталог: Выберите каталог, в котором будет создан ваш субграф.
              • Сеть Ethereum (необязательно): Вам может понадобиться указать, из какой совместимой с EVM сети ваш субграф будет индексировать данные.
              • Адрес контракта: Найдите адрес смарт-контракта, из которого Вы хотите запрашивать данные.
              • ABI: Если ABI не заполнен автоматически, Вам придется ввести его вручную в формате JSON.
              • Начальный блок: Вы должны ввести начальный блок для оптимизации индексирования данных субграфа. Найдите начальный блок, определив блок, в котором был развернут ваш контракт.
              • Имя контракта: Введите имя Вашего контракта.
              • Индексирование событий контракта как объектов: Рекомендуется установить это значение в “true”, так как это автоматически добавит мэппинги для каждого сгенерированного события в ваш субграф.
              • Добавление еще одного контракта (опционально): Вы можете добавить еще один контракт.

              Вот скриншот, который демонстрирует, чего ожидать при инициализации вашего субграфа:

              Команда субграфа

              4. Редактирование вашего субграфа

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

              При внесении изменений в субграф вы будете в основном работать с тремя файлами:

              • Манифест (subgraph.yaml) — определяет, какие источники данных ваш субграф будет индексировать.
              • Схема (schema.graphql) — определяет, какие данные вы хотите извлекать из субграфа.
              • AssemblyScript Mappings (mapping.ts) - это код, который преобразует данные из Ваших источников данных в объекты, определенные в схеме.

              Для подробного объяснения того, как писать ваш субграф, ознакомьтесь с разделом Создание субграфа.

              5. Развертывание Вашего субграфа

              Помните, развертывание — это не то же самое, что публикация.

              Когда вы разворачиваете субграф, вы отправляете его в Subgraph Studio, где можете тестировать, настраивать и проверять его. Индексирование развернутого субграфа выполняется с помощью Upgrade Indexer, который является единственным Индексатором, принадлежащим и управляемым Edge & Node, а не многими децентрализованными Индексаторами в сети The Graph. Развернутый субграф бесплатен для использования, имеет ограничения по количеству запросов, не виден для общественности и предназначен для разработки, настройки и тестирования.

              Как только ваш субграф написан, выполните следующие команды:

              1```sh2graph codegen && graph build3```

              Аутентифицируйтесь и разверните ваш субграф. Ключ для развертывания можно найти на странице субграфа в Subgraph Studio.

              Deploy key
              1```sh23graph auth <DEPLOY_KEY>45graph deploy <SUBGRAPH_SLUG>6```

              CLI запросит метку версии. Настоятельно рекомендуется использовать семантическую версию⁠, например, 0.0.1.

              6. Просмотр Вашего субграфа

              Если вы хотите протестировать свой субграф перед его публикацией, вы можете использовать Subgraph Studio для выполнения следующих действий:

              • Запустить пример запроса.

              • Анализируйте свой субграф в панели управления, чтобы проверить информацию.

              • Проверьте логи на панели управления, чтобы узнать, есть ли ошибки в вашем субграфе. Логи работающего субграфа будут выглядеть так:

                Subgraph logs

              7. Опубликуйте свой субграф в сети The Graph

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

              • Это делает ваш субграф доступным для индексирования децентрализованными Индексаторами в сети The Graph.
              • Это снимает ограничения по количеству запросов и делает ваш субграф общедоступным для поиска и запросов в Graph Explorer.
              • Это делает ваш субграф доступным для Кураторов, чтобы они могли его курировать.

              Чем больше GRT вы и другие курируете на вашем субграфе, тем больше Индексаторов будут мотивированы индексировать ваш субграф, что улучшит качество обслуживания, уменьшит задержку и повысит избыточность сети для вашего субграфа.

              Публикация с помощью Subgraph Studio

              Чтобы опубликовать ваш субграф, нажмите кнопку “Опубликовать” на панели управления.

              Publish a Subgraph on Subgraph Studio

              Выберите сеть, в которую вы хотите опубликовать свой субграф.

              Публикация с помощью CLI

              Начиная с версии 0.73.0, вы также можете опубликовать свой субграф с помощью Graph CLI.

              Откройте graph-cli.

              Используйте следующие команды:

              1```sh2graph codegen && graph build3```45Затем,67```sh8graph publish9```
              1. Откроется окно, где Вы сможете подключить свой кошелек, добавить метаданные и развернуть финализированный субграф в выбранной Вами сети.
              cli-ui

              Чтобы настроить ваше развертывание, смотрите раздел Публикация субграфа.

              Добавление сигнала к Вашему субграфу

              1. Чтобы привлечь Индексаторов для запросов к вашему субграфу, вам следует добавить сигнал курирования GRT.

                • Это действие улучшает качество обслуживания, снижает задержку и повышает сетевую избыточность и доступность для вашего субграфа.
              2. Если индексаторы имеют право на получение вознаграждений за индексацию, они получат вознаграждения в GRT, в соответствии с количеством поданного сигнала.

                • Рекомендуется курировать как минимум 3,000 GRT, чтобы привлечь 3 Индексаторов. Проверьте право на вознаграждения в зависимости от использования функций субграфа и поддерживаемых сетей.

              Чтобы узнать больше о кураторстве, прочитайте статью Курирование.

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

              Публикация субграфа

              8. Запрос Вашего субграфа

              Теперь у вас есть доступ к 100 000 бесплатных запросов в месяц для вашего субграфа в The Graph Network!

              Вы можете выполнять запросы к своему субграфу, отправляя запросы GraphQL по его URL для запросов, который можно найти, нажав кнопку “Запрос”.

              Для получения дополнительной информации о том, как выполнять запросы к данным из вашего субграфа, прочитайте статью Запросы к данным в The Graph.

              ⁠Редактировать на GitHub⁠

              Protocol ContractsGraph Explorer
              На этой странице
              • Предварительные требования
              • Как создать субграф
              • 1. Создайте Субграф в Subgraph Studio
              • 2. Установка Graph CLI
              • 3. Инициализируйте ваш субграф
              • 4. Редактирование вашего субграфа
              • 5. Развертывание Вашего субграфа
              • 6. Просмотр Вашего субграфа
              • 7. Опубликуйте свой субграф в сети The Graph
              • 8. Запрос Вашего субграфа
              The GraphСтатусТестовая сетьБрундовые ресурсыФорумБезопасностьПолитика конфиденциальностиУсловия обслуживания