Skip to content

Commit

Permalink
New translations cosmos.mdx (Russian)
Browse files Browse the repository at this point in the history
  • Loading branch information
benface committed May 18, 2024
1 parent 7714092 commit 83efa06
Showing 1 changed file with 43 additions and 43 deletions.
86 changes: 43 additions & 43 deletions website/pages/ru/cookbook/cosmos.mdx
Original file line number Diff line number Diff line change
@@ -1,51 +1,51 @@
---
title: Создание подграфов на Cosmos
title: Создание субграфов на Cosmos
---

This guide is an introduction on building subgraphs indexing [Cosmos](https://cosmos.network/) based blockchains.
Это руководство представляет собой введение в создание субграфов, индексирующих блокчейны на основе [Cosmos](https://cosmos.network/).

## Что такое Cosmos подграфы?
## Что такое субграфы на Cosmos?

The Graph позволяет разработчикам обрабатывать события блокчейна и делать полученные данные легко доступными через открытый API GraphQL, известный как подграф. [Graph Node](https://github.com/graphprotocol/graph-node) теперь может обрабатывать события Cosmos, а это означает, что разработчики Cosmos теперь могут создавать подграфы для удобного индексирования событий в сети.
The Graph позволяет разработчикам обрабатывать события блокчейна и делать полученные данные легко доступными через открытый API GraphQL, известный как субграф. [Graph Node](https://github.com/graphprotocol/graph-node) теперь может обрабатывать события Cosmos, а это означает, что разработчики Cosmos теперь могут создавать субграфы для удобного индексирования событий в сети.

Существует четыре типа обработчиков, поддерживаемых в подграфах Cosmos:
Существует четыре типа обработчиков, поддерживаемых в субграфах Cosmos:

- **Обработчики блоков** запускаются всякий раз, когда к цепочке добавляется новый блок.
- **Обработчики блоков** запускаются всякий раз, когда к чейну добавляется новый блок.
- **Обработчики событий** запускаются при возникновении определенного события.
- **Обработчики транзакций** запускаются, когда происходит транзакция.
- ** Обработчики сообщений** запускаются при появлении определенного сообщения.

На основе [официальной документации Cosmos](https://docs.cosmos.network/):

> [Events](https://docs.cosmos.network/main/learn/advanced/events) are objects that contain information about the execution of the application. They are mainly used by service providers like block explorers and wallets to track the execution of various messages and index transactions.
> [События](https://docs.cosmos.network/main/learn/advanced/events) — это объекты, содержащие информацию о выполнении приложения. В основном они используются поставщиками услуг, такими как обозреватели блоков и кошельки, для отслеживания выполнения различных сообщений и индексных транзакций.
> [Transactions](https://docs.cosmos.network/main/learn/advanced/transactions) are objects created by end-users to trigger state changes in the application.
> [Транзакции](https://docs.cosmos.network/main/learn/advanced/transactions) — это объекты, созданные конечными пользователями для инициирования изменений состояния приложения.
> [Messages](https://docs.cosmos.network/main/learn/advanced/transactions#messages) are module-specific objects that trigger state transitions within the scope of the module they belong to.
> [Сообщения](https://docs.cosmos.network/main/learn/advanced/transactions#messages) — это объекты, специфичные для модуля, которые запускают переходы состояний в пределах модуля, которому они принадлежат.
Хотя доступ ко всем данным можно получить с помощью обработчика блоков, другие обработчики позволяют разработчикам субграфов обрабатывать данные гораздо более детально.

## Создание субграфа на Cosmos

### Зависимости подграфа
### Зависимости субграфа

[graph-cli](https://github.com/graphprotocol/graph-tooling/tree/main/packages/cli) is a CLI tool to build and deploy subgraphs, version `>=0.30.0` is required in order to work with Cosmos subgraphs.
[graph-cli](https://github.com/graphprotocol/graph-tooling/tree/main/packages/cli) — это инструмент CLI для создания и развертывания субграфов. Для работы с субграфами Cosmos требуется версия `>=0.30.0`.

[graph-ts](https://github.com/graphprotocol/graph-tooling/tree/main/packages/ts) is a library of subgraph-specific types, version `>=0.27.0` is required in order to work with Cosmos subgraphs.
[graph-ts](https://github.com/graphprotocol/graph-tooling/tree/main/packages/ts) — это библиотека типов, специфичных для субграфов. Для работы с субграфами Cosmos требуется версия `>=0.27.0`.

### Основные компоненты подграфа
### Основные компоненты субграфа

Когда дело доходит до определения субграфа, имеется три ключевых момента:

**subgraph.yaml**: файл YAML, содержащий манифест подграфа, который определяет, какие события отслеживать и как их обрабатывать.
**subgraph.yaml**: файл YAML, содержащий манифест субграфа, который определяет, какие события отслеживать и как их обрабатывать.

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

**AssemblyScript Mappings**: код [AssemblyScript](https://github.com/AssemblyScript/assemblyscript), преобразующий данные блокчейна в определенные объекты в Вашей схеме.

### Определение манифеста подграфа
### Определение манифеста субграфа

Манифест подграфа (`subgraph.yaml`) определяет источники данных для подграфа, релевантные триггеры и функции (`handlers`), которые должны выполняться в ответ на эти триггеры. Ниже приведен пример манифеста подграфа для подграфа на Cosmos:
Манифест субграфа (`subgraph.yaml`) определяет источники данных для субграфа, релевантные триггеры и функции (`handlers`), которые должны выполняться в ответ на эти триггеры. Ниже приведен пример манифеста субграфа для субграфа на Cosmos:

```yaml
specVersion: 0.0.5
Expand Down Expand Up @@ -74,14 +74,14 @@ dataSources:
file: ./src/mapping.ts # ссылка на мэппинг-файл скрипта сборки
```
- Подграфы на Cosmos представляют новый `вид` источника данных (`cosmos`).
- `Сеть` должна соответствовать чейну в экосистеме Cosmos. В примере используется майннет Cosmos Hub.
- Субграфы на Cosmos представляют новый `вид` источника данных (`cosmos`).
- `network` должен соответствовать чейну в экосистеме Cosmos. В примере используется майннет Cosmos Hub.

### Определение схемы

Schema definition describes the structure of the resulting subgraph database and the relationships between entities. This is agnostic of the original data source. There are more details on subgraph schema definition [here](/developing/creating-a-subgraph/#the-graphql-schema).
Определение схемы описывает структуру результирующей базы данных субграфа и взаимосвязи между объектами. Это не зависит от исходного источника данных. Более подробная информация об определении схемы субграфа приведена [здесь](/developing/creating-a-subgraph/#the-graphql-schema).

### Сопоставления AssemblyScript
### Мэппинги AssemblyScript

Обработчики событий написаны на языке [AssemblyScript](https://www.assemblyscript.org/).

Expand Down Expand Up @@ -163,7 +163,7 @@ class Any {
}
```

Каждый тип обработчика имеет свою собственную структуру данных, которая передается в качестве аргумента функции сопоставления.
Каждый тип обработчика имеет свою собственную структуру данных, которая передается в качестве аргумента функции мэппинга.

- Обработчики блоков получают тип `Block`.
- Обработчики событий получают тип `EventData`.
Expand All @@ -176,37 +176,37 @@ class Any {

### Расшифровка сообщений

It's important to note that Cosmos messages are chain-specific and they are passed to a subgraph in the form of a serialized [Protocol Buffers](https://protobuf.dev/) payload. As a result, the message data needs to be decoded in a mapping function before it can be processed.
Важно отметить, что сообщения Cosmos специфичны для каждой чейна и передаются в субграф в виде сериализованной нагрузки [Protocol Buffers](https://protobuf.dev/). В результате данные сообщения должны быть декодированы в функции мэппинга перед их обработкой.

Пример того, как расшифровываются данные сообщения в подграфе, можно найти [здесь](https://github.com/graphprotocol/graph-tooling/blob/main/examples/cosmos-validator-delegations/src/decoding.ts).
Пример того, как расшифровываются данные сообщения в субграфе, можно найти [здесь](https://github.com/graphprotocol/graph-tooling/blob/main/examples/cosmos-validator-delegations/src/decoding.ts).

## Создание и построение подграфа на Cosmos
## Создание и построение субграфа на Cosmos

Первым шагом перед началом написания мэппингов подграфов является создание привязок типов на основе объектов, определенных в файле схемы подграфа (`schema.graphql`). Это позволит функциям мэппинга создавать новые объекты этих типов и сохранять их в хранилище. Для этого используется команда CLI `codegen`:
Первым шагом перед началом написания мэппингов субграфов является создание привязок типов на основе объектов, определенных в файле схемы субграфа (`schema.graphql`). Это позволит функциям мэппинга создавать новые объекты этих типов и сохранять их в хранилище. Для этого используется команда CLI `codegen`:

```bash
$ graph codegen
```

После того как мэппинги готовы, необходимо построить подграф. На этом шаге будут выделены все ошибки, которые могут быть в манифесте или мэппингах. Подграф должен быть успешно построен, чтобы его можно было развернуть на Graph Node. Это можно сделать с помощью команды `build` командной строки:
После того, как мэппинги готовы, необходимо построить субграф. На этом шаге будут выделены все ошибки, которые могут быть в манифесте или мэппингах. Субграф должен быть успешно построен, чтобы его можно было развернуть на Graph Node. Это можно сделать с помощью команды `build` командной строки:

```bash
$ graph build
```

## Развертывание подграфа на Cosmos
## Развертывание субграфа на Cosmos

Как только ваш подграф создан, вы можете развернуть его с помощью команды `graph deploy` CLI:
Как только Ваш субграф создан, Вы можете развернуть его с помощью команды `graph deploy` CLI:

**Subgraph Studio**

Visit the Subgraph Studio to create a new subgraph.
Посетите Subgraph Studio, чтобы создать новый субграф.

```bash
graph deploy --studio subgraph-name
```

**Local Graph Node (based on default configuration):**
**Локальная Graph Node (на основе конфигурации по умолчанию):**

```bash
graph create subgraph-name --node http://localhost:8020
Expand All @@ -216,42 +216,42 @@ graph create subgraph-name --node http://localhost:8020
graph deploy subgraph-name --node http://localhost:8020/ --ipfs http://localhost:5001
```

## Запрос подграфа на Cosmos
## Запрос субграфа на Cosmos

The GraphQL endpoint for Cosmos subgraphs is determined by the schema definition, with the existing API interface. Please visit the [GraphQL API documentation](/querying/graphql-api/) for more information.
Конечная точка GraphQL для субграфов на Cosmos устанавливается определением схемы с помощью существующего интерфейса API. Дополнительную информацию можно найти в [документации GraphQL API](/querying/graphql-api/).

## Поддерживаемые блокчейны Cosmos

### Cosmos Hub

#### Что такое Cosmos Hub?

The [Cosmos Hub blockchain](https://hub.cosmos.network/) is the first blockchain in the [Cosmos](https://cosmos.network/) ecosystem. You can visit the [official documentation](https://docs.cosmos.network/) for more information.
[Блокчейн Cosmos Hub](https://hub.cosmos.network/) — первый блокчейн в экосистеме [Cosmos](https://cosmos.network/). Дополнительную информацию можно найти в [официальной документации](https://docs.cosmos.network/).

#### Сети

Cosmos Hub mainnet is `cosmoshub-4`. Cosmos Hub current testnet is `theta-testnet-001`. <br/>Other Cosmos Hub networks, i.e. `cosmoshub-3`, are halted, therefore no data is provided for them.
Основная сеть Cosmoshub — `cosmoshub-4`. Текущая тестовая сеть Cosmos Hub — `theta-testnet-001`. <br/>Другие сети Cosmos Hub, например, `cosmoshub-3`, остановлены, поэтому данные для них не предоставляются.

### Osmosis

> Osmosis support in Graph Node and on Subgraph Studio is in beta: please contact the graph team with any questions about building Osmosis subgraphs!
> Поддержка Osmosis в Graph Node и Subgraph Studio находится в стадии бета-тестирования: обращайтесь к команде the Graph по любым вопросам, касающимся создания субграфов Osmosis!

#### Что такое Osmosis?

[Osmosis](https://osmosis.zone/) is a decentralized, cross-chain automated market maker (AMM) protocol built on top of the Cosmos SDK. It allows users to create custom liquidity pools and trade IBC-enabled tokens. You can visit the [official documentation](https://docs.osmosis.zone/) for more information.
[Osmosis](https://osmosis.zone/) – это децентрализованный межсетевой протокол автоматизированного маркет-мейкера (AMM), построенный на основе Cosmos SDK. Он позволяет пользователям создавать собственные пулы ликвидности и торговать токенами с поддержкой IBC. Дополнительную информацию можно найти в [официальной документации](https://docs.osmosis.zone/).

#### Сети

Osmosis mainnet is `osmosis-1`. Osmosis current testnet is `osmo-test-4`.
Майннет Osmosis `osmosis-1`. Текущая тестовая сеть Osmosis — `osmo-test-4`.

## Примеры подграфов
## Примеры субграфов

Here are some example subgraphs for reference:
Вот несколько примеров субграфов для справки:

[Block Filtering Example](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-block-filtering)
[Пример блочной фильтрации](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-block-filtering)

[Validator Rewards Example](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-validator-rewards)
[Пример вознаграждения валидатора](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-validator-rewards)

[Validator Delegations Example](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-validator-delegations)
[Пример делегирования валидатору](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-validator-delegations)

[Osmosis Token Swaps Example](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-osmosis-token-swaps)
[Пример свопа токенов на Osmosis](https://github.com/graphprotocol/graph-tooling/tree/main/examples/cosmos-osmosis-token-swaps)

0 comments on commit 83efa06

Please sign in to comment.