“Het Graph protocol is een indexeringsprotocol dat gebruikt wordt voor het organiseren van blockchain-gegevens. Hierbij wordt een GraphQL API gebruikt om op eenvoudige wijze toegang te bieden tot on-chain informatie. In vergelijking met de traditionele methode van het verzenden van een RPC-oproep, is deze aanpak sneller en efficiënter. Het netwerk organiseert de gegevens met behulp van subgrafieken, die open-source API’s zijn die ontwikkeld worden door de community. Deze subgrafieken worden gebruikt voor het ophalen van gegevens van Indexeerders, Curatoren en Delegators. In dit artikel zullen we bekijken hoe u The Graph en subgraphs kunt gebruiken voor het opvragen van Web3-gegevens.
Indexeerders bedienen de knooppunten van het netwerk, die gegevens indexeren en de vragen beantwoorden. Aangezien het Graph Network een proof-of-stake-algoritme gebruikt, zetten indexeerders Graph Tokens (GRT) in om indexerings- en queryverwerkingsservices te bieden. Indexeerders kunnen op hun beurt querykosten en indexeringsbeloningen verdienen. Ze selecteren subgrafieken om te indexeren op basis van het curator’s signaal van de subgrafiek. Toepassingen die de gegevens van de indexeerders gebruiken, kunnen parameters instellen voor welke indexeerders ze hun query’s willen verwerken, samen met hun voorkeuren voor prijzen voor querykosten.
Curatoren signaleren subgrafieken van hoge kwaliteit. Ze organiseren gegevens uit de subgrafieken door de subgrafieken te signaleren die moeten worden geïndexeerd door het Graph Network. Ze doen dit met behulp van Graph Curation Shares (GCS), waarmee ze het equivalent van een investering op een subgraaf kunnen plaatsen. Curatoren zetten GRT in, waardoor ze GCS kunnen slaan. Elke subgrafiek heeft een bindingscurve die de relatie bepaalt tussen de prijs van GRT en het aantal aandelen dat kan worden geslagen. Volgens de documentatie van The Graph wordt cureren als riskant beschouwd en mag het alleen worden uitgevoerd na grondig onderzoek en afweging van de betrokken afwegingen.
Delegators beveiligen het netwerk door afgevaardigden in te zetten. Zij zetten GRT in op een of meer Indexers om het netwerk te helpen beveiligen zonder zelf een node te hoeven draaien. Delegators verdienen delen van de vergoedingen en beloningen van de Indexeerder, die afhankelijk zijn van de inzet van de Indexeerder en Delegator, samen met de prijs die de Indexeerder in rekening brengt voor elke zoekopdracht. Door meer belang toe te wijzen aan een Indexer kunnen meer potentiële vragen worden verwerkt. De documentatie van The Graph stelt dat Delegator zijn minder risico’s met zich meebrengt dan Curator, omdat ze niet worden blootgesteld aan schommelingen in de prijs van GRT als gevolg van brandende aandelen van GCS.
The Graph protocol wordt ontwikkeld en onderhouden door The Graph Foundation. Om ervoor te zorgen dat het netwerk en de gemeenschap blijven groeien en verbeteren, verleent de stichting subsidies (Graph Grants) aan gemeenschapsleden die werken aan protocolinfrastructuur, tooling, dApps, subgraphs en gemeenschapsopbouw.
Er zijn drie verschillende manieren om met The Graph te communiceren als u geen eigen subgraaf host:
– The Graph Explorer: Verken verschillende subgrafieken en communiceer met het Graph-protocol.
– Subgraph Studio: Maak, beheer en publiceer subgrafieken en API-sleutels met behulp van Ethereum Mainnet.
– Gehoste dienst: Maak, beheer en publiceer subgrafieken en API-sleutels met behulp van andere netwerken dan Ethereum, zoals Avalanche, Harmony, Fantom en Celo. Deze dienst vereist geen crypto-portemonnee en kan worden gebruikt met een GitHub-account.
Als u een project wilt maken op de gehoste service, maakt u een account aan en klikt u op ‘mijn dashboard’ in de navigatiebalk. Klik vervolgens op ‘Add Subgraph’ om een subgrafiek te maken en vul de vereiste gegevens in. Nadat u de gegevens van uw subgrafiek hebt ingevuld, scrolt u omlaag naar de onderkant van de pagina en klikt u op ‘subgrafiek maken’.
Met onze subgraafopstelling op de gehoste service kunnen we onze projectbestanden maken. Maak een nieuwe map aan, initialiseer een package.jsonen installeer de vereiste afhankelijkheden.
Om de applicatie te laten werken moet je de AssemblyScript-code laten omzetten. Meer instructies staan hier.”