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

                  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СтатусТестовая сетьБрундовые ресурсыФорумБезопасностьПолитика конфиденциальностиУсловия обслуживания