О проекте The Graph

The Graph Protocol - это протокол индексации запросов к сетям, таким как Ethereum и IPFS. Любой может создавать и публиковать открытые API, называемые подграфамиarrow-up-right (subgraphs), с помощью них можно запросить данные, которые трудно получить напрямую из блокчейна.

С момента запуска в январе 2019 года The Graph расширился и теперь поддерживает многие ведущие протоколы DeFi, включая Synthetix, Uniswap, Aave, Balancer, Aragon и другие. Все эти DeFi-протоколы запрашивают данные из подграфов, такие как торговые операции, ликвидность на DEX площадках и многое другое. Другими словами, The Graph действует как критически важный компонент промежуточного программного обеспечения для того, чтобы сделать данные более удобными для приложений DeFi. До появления The Graph командам приходилось разрабатывать и эксплуатировать проприетарные серверы индексирования. Это требовало значительных инженерных и аппаратных ресурсов и нарушало важные свойства безопасности, необходимые для децентрализации.

Почему The Graph так важен для Web3.0

Давайте рассмотрим, для чего нужен The Graph на конкретном примере. Например, к популярному приложению CryptoKittiesarrow-up-right относительно просто задать следующие вопросы:

Сколько CryptoKitties принадлежит конкретной учетной записи Ethereum?

Когда родился конкретный CryptoKitty?

Это связано с тем, что чтение этих данных напрямую поддерживается методами balanceOfarrow-up-right и getKittyarrow-up-right, предоставляемым контрактомarrow-up-right.

Однако, на другие вопросы ответить сложнее:

Кто являются владельцами CryptoKitties, рожденных в период с января по февраль 2018 года?

Чтобы ответить на этот вопрос, вы должны обработать все Birthсобытия,arrow-up-right а затем вызвать ownerOfметодarrow-up-right для каждого созданного CryptoKitty.

Даже на этот относительно простой вопрос децентрализованному приложению (dApp), работающему в браузере, потребуются часы или даже дни, чтобы получить ответ. Индексировать данные блокчейна сложно. Свойства блокчейна, такие как finality, chain reorganizations или uncled blocks еще больше усложняют этот процесс и делают не только трудоемким, но и концептуально сложным получение правильных результатов запроса из блокчейна.

Сегодня Graph решает эту проблему с помощью сервиса, который индексирует данные блокчейна. Затем эти индексы («подграфы») можно запросить с помощью стандартного API GraphQL. В будущем размещенный сервис превратится в полностью децентрализованный протокол с теми же возможностями. Оба они поддерживаются реализацией Graph Nodearrow-up-right с открытым исходным кодом.

Если для вас это объяснение было непонятным, прочитайте небольшую статью "Простыми словами о The Grapharrow-up-right".

Более подробно с техническими аспектами можно ознакомиться в официальной документацииarrow-up-right. В следующих материалах мы более подробно разберем структуру The Graph, постараясь не вдаваться сильно в технические моменты.

Ссылки

Сайт: https://thegraph.com/arrow-up-right

Github: https://github.com/graphprotocolarrow-up-right

Discord: https://discord.gg/vtvv7FParrow-up-right

Telegram: http://t.me/graphprotocolarrow-up-right

Twitter: https://twitter.com/graphprotocolarrow-up-right

Last updated