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

              3 минуты

              Транзакции Solana

              Узнайте, как инициализировать проект Substreams на основе Solana в рамках Dev Container.

              Примечание: Этот гид не включает Изменения аккаунтов.

              Параметры

              Если вы предпочитаете начать работу локально в вашем терминале, а не через Dev Container (требуется VS Code), обратитесь к руководству по установке Substreams CLI⁠.

              Шаг 1: Инициализация Вашего проекта субпотоков Solana

              1. Откройте Dev Container⁠ и следуйте шагам на экране, чтобы инициализировать Ваш проект.

              2. Выполнив команду substreams init, Вам будет предложено выбрать между двумя вариантами проектов для Solana. Выберите наиболее подходящий вариант для Вашего проекта:

                • sol-minimal: Этот вариант создаёт простые субпотоки, которые извлекают сырые данные блоков Solana и генерирует соответствующий код на Rust. Этот путь начнёт с полного сырого блока, и вы сможете перейти к файлу substreams.yaml (манифест), чтобы изменить входные данные.
                • sol-transactions: Этот вариант создаёт субпотоки, которые фильтруют транзакции Solana на основе одного или нескольких Program ID и/или Account ID, используя кешированный Solana Foundational Module⁠.
                • sol-anchor-beta: Этот вариант создаёт субпотоки, которые декодируют инструкции и события с использованием Anchor IDL. Если IDL недоступен (смотрите Anchor CLI⁠), Вам нужно будет предоставить его самостоятельно.

              Модули в Solana Common не включают транзакции голосования. Чтобы уменьшить размер и затраты на обработку данных на 75%, задержите Ваш поток на более чем 1000 блоков от начала. Это можно сделать с помощью функции sleep⁠ в Rust.

              Чтобы получить доступ к транзакциям голосования, используйте полный блок Solana, sf.solana.type.v1.Block, в качестве входных данных.

              Шаг 2: Визуализация данных

              1. Выполните команду substreams auth, чтобы создать Ваш аккаунт⁠ и сгенерировать токен аутентификации (JWT), затем передайте этот токен обратно в качестве входных данных.

              2. Теперь Вы можете свободно использовать команду substreams gui, чтобы визуализировать и итеративно работать с Вашими извлечёнными данными.

              Шаг 2.5: (По желанию) Преобразование данных

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

              Шаг 3: Загрузка данных

              Чтобы сделать Ваш запрос в субпотоках доступным для выполнения (в отличие от прямой трансляции⁠), Вы можете автоматически сгенерировать субграф на базе субпотоков или базу данных SQL sink.

              Субграф

              1. Выполните команду substreams codegen subgraph, чтобы инициализировать sink, создавая необходимые файлы и определения функций.
              2. Создайте Ваши мэппинги субграфа в файле mappings.ts и связанные объекты в файле schema.graphql.
              3. Создайте и разверните локально или в Subgraph Studio, выполнив команду deploy-studio.

              SQL

              1. Выполните команду substreams codegen sql и выберите либо ClickHouse, либо Postgres, чтобы инициализировать sink и создать необходимые файлы.
              2. Выполните команду substreams build, чтобы собрать sink SQL субпотока⁠.
              3. Выполните команду substreams-sink-sql, чтобы записать данные в выбранную Вами базу данных SQL.

              Примечание: Выполните команду help, чтобы лучше ориентироваться в среде разработки и проверить состояние контейнеров.

              Дополнительные ресурсы

              Вам могут быть полезны следующие дополнительные ресурсы для разработки Вашего первого приложения на Solana.

              • Справочник по Dev Container поможет Вам ориентироваться в контейнере и решать распространённые ошибки.
              • Справочник по CLI⁠ позволяет Вам изучить все инструменты, доступные в CLI субпотоков.
              • Справочник по компонентам⁠ более подробно объясняет, как работать с файлом substreams.yaml.
              ⁠Редактировать на GitHub⁠

              Контейнер для разработкиAccount Changes
              На этой странице
              • Параметры
              • Шаг 1: Инициализация Вашего проекта субпотоков Solana
              • Шаг 2: Визуализация данных
              • Шаг 2.5: (По желанию) Преобразование данных
              • Шаг 3: Загрузка данных
              • Субграф
              • SQL
              • Дополнительные ресурсы
              The GraphСтатусТестовая сетьБрундовые ресурсыФорумБезопасностьПолитика конфиденциальностиУсловия обслуживания