Querying > ID de Subgraph contra ID de Lançamento

ID de Subgraph contra ID de Lançamento

Reading time: 2 min

Um subgraph é identificado por uma ID de Subgraph, e cada versão do subgraph é identificada por uma ID de Lançamento.

Ao consultar um subgraph, qualquer das IDs pode ser usada, mas recomendamos usar a ID de Lançamento (Deployment ID) pela sua habilidade de especificar uma versão específica de um subgraph.

Aqui estão algumas diferenças importantes entre as duas IDs:

ID de Lançamento

Link para esta seção

A ID de Lançamento é o hash IPFS do arquivo manifest compilado, que refere a outros arquivos no IPFS em vez de URLS relativas no computador. Por exemplo, o manifest compilado pode ser acessado via: https://api.thegraph.com/ipfs/api/v0/cat?arg=QmQKXcNQQRdUvNRMGJiE2idoTu9fo5F5MRtKztH4WyKxED. Para mudar a ID de Lançamento, basta atualizar o arquivo manifest, por ex., modificar o arquivo de descrição como descrito na documentação do manifest de subgraph.

Quando queries são feitas com a ID de Lançamento de um subgraph, especificamos uma versão daquele subgraph para buscar. Usar a ID de Lançamento para consultar uma versão específica de subgraph resulta em um setup mais sofisticado e robusto, já que há controle total sobre a versão do subgraph a ser consultada. Porém, isto resulta na necessidade de atualizar o código de queries manualmente toda vez que uma nova versão do subgraph é editada.

Exemplo de endpoint que usa ID de Lançamento:

https://gateway-arbitrum.network.thegraph.com/api/[api-key]/deployments/id/QmfYaVdSSekUeK6expfm47tP8adg3NNdEGnVExqswsSwaB

ID de Subgraph

Link para esta seção

A ID de Subgraph é uma identificadora única para um subgraph. Ela permanece constante entre todas as versões de um subgraph. É recomendado usar a ID do Subgraph para consultar a versão mais recente de um subgraph, mas há obstáculos.

Saiba que realizar queries com a ID do Subgraph pode fazer com que queries sejam respondidas por uma versão mais antiga do subgraph, porque a nova versão precisaria de mais tempo para sincronizar. Além disto, novas versões podem introduzir mudanças que podem quebrar o schema.

Exemplo de endpoint que usa a ID de Subgraph: https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/FL3ePDCBbShPvfRJTaSCNnehiqxsPHzpLud6CpbHoeKW

Editar página

Anterior
API GraphQL
Próximo
Python (Subgrounds)
Editar página