BNB

Project Insight: The Graph Protocol - An Indexing Protocol for Querying Blockchain Data

by BSCN

March 28, 2021

chain

A blockchain typically comprises large sets of data. It can be redundant to retrieve specific information from such a large data pool without an indexing service. The Graph Protocol was developed as a robust and decentralized blockchain index service.

Introduction

Until recently, developers of decentralized applications had a hard time efficiently accessing data from a blockchain. Every blockchain arranges transactions in blocks starting from, say, block 1. As transactions grow, new blocks are formed. These new blocks connect to adjacent blocks. Eventually, you have a long chain of connected blocks. 

Now, imagine a scenario where you are looking for a particular transaction. With no idea which block the transaction is in, where would you start? What a laborious, time-consuming process it would be to search through hundreds and thousands of blocks randomly. Well, this is a simple way of illustrating the problem of efficient blockchain data retrieval.

As blockchain technology evolved, some blockchain service providers developed protocols to handle blockchain data. These protocols aggregate data in a form that can be easily queried. Most of us that have been around blockchain for some time know about blockchain data aggregators such as Ethereum's Etherscan and Binance's BSCscan. The issue with these aggregators is that they are centralized. Should they be trusted with all our blockchain data? Apart from that, we are in an era of decentralized finance/applications. True decentralization requires that blockchain data should not be the exclusive preserve of a central authority. It, therefore, became necessary for the DeFi world to have a fully decentralized data indexing and querying service. Enter the Graph Protocol. 


What is the Graph Protocol

Graph Protocol is a decentralized blockchain data indexing service. Its cardinal aim is to give developers a tool that would enable them to access blockchain data without compromising security seamlessly. 

The Graph Protocol was conceived in 2017 by the software engineers Yaniv Tal, Brandon Ramirez, and Jannis Pohlmann. In their experience as developers, they repeatedly were frustrated by the lack of tools that simplify Dapp development. Mainly the absence of a decentralized blockchain data indexing service. So they set out to develop one of their own. It took them about three years to fine-tune their innovation. Then in December 2020, the mainnet of their project, called The Graph, was launched.


Features of the Graph Protocol

  • The Graph makes use of an open application programming interface (API). Graph's indexing service does not use a central server as the sole repository of blockchain data. There is, therefore, no single point of failure. 
  • It provides an easy-to-customize backend solution for Dapp development. This takes away some infrastructure burden from developers and frees up time for developing a solid user experience. 
  • It is straightforward to use and is secure.
  • It complements blockchain apps by providing a seamless exchange of data between them and a blockchain. The apps can now do this with no difficulty adhering to blockchain's finality and chain reorganization requirements.

How It Works

The Graph Protocol has a regularly updated index of blockchain data. The main aim of an index is to reduce to the bare minimum time spent finding and fetching data from its location. The architecture of the protocol comprises several layers. Each layer performs a specialized role in the ecosystem. Some of these roles are defined as follows:

  • Subgraphs

They are essentially open APIs published by developers that specify how blockchain data is to be indexed. They also contain data that can be queried.

  • Graph Query Language (GraphQL)

This is the special language that details the search fields and criteria that would be applied in a particular query. It specifies the parameters that are used to address the queried data.

  • Indexers

These are nodes in the Graph ecosystem that index subgraphs and process queries.

  • Curators

It comprises developers and end-users who propose to indexers what subgraphs they deem worthy of being indexed. 

  • Fishermen

These are nodes whose function is to ascertain if the response to a query is correct. 

This is a shortlist of some of the roles that function in the Graph Protocol. An expansive description of other roles can be seen in this documentation


Graph Tokenomics

The main token of the Graph Protocol is the Graph Token, GRT. It is an Erc20-based token, and it powers the use-cases of the Graph Protocol. It would confer governance privileges on holders when the protocol fully implements its decentralized autonomous organization (DAO). Participation in the network as Indexers, Curators, etc. is rewarded in GRT tokens too 

GRT had an initial total supply of 1 Billion tokens and is currently listed on major exchanges like Binance, Coinbase, Huobi, Poloniex, KuCoin etc. Other performance metrics of the Graph Token can be seen here on its Coinmarketcap page and on the project's website

Conclusion

An index is a beneficial tool. It makes retrieving specific data much easier, especially when large data sets are involved. Previously, developers of decentralized applications had a hard time building dApps to query the blockchain for data efficiently. The Graph Protocol was developed as a robust and decentralized blockchain index service. This will make developers' work more manageable, especially as the DeFi sector continues to experience expansion and development. 

For more information about the Graph Protocol, here are the project's media links. 

Website 

Twitter 

GitHub 

Reddit

Discord

;