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:
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 .
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
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