Skip to content

Instantly share code, notes, and snippets.

@chuckbergeron
Last active November 13, 2020 18:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chuckbergeron/19cf57c30c1d94559eb064718a5356f4 to your computer and use it in GitHub Desktop.
Save chuckbergeron/19cf57c30c1d94559eb064718a5356f4 to your computer and use it in GitHub Desktop.
Comparison of The Graph protocol query large dataset using selection set vs. `_in` array (run in the Uniswap v2 playground: https://thegraph.com/explorer/subgraph/uniswap/uniswap-v2)
## // First query (slow, ~5 seconds):
{
tokens(where: {id_in: ["0xdac17f958d2ee523a2206206994597c13d831ec7", "0x0ae055097c6d159879521c384f1d2123d1f195e6", "0x0d438f3b5175bebc262bf23753c1e53d03432bde", "0x0d8775f648430679a709e98d2b0cb6250d2887ef", "0x1ceb5cb57c4d4e2b2433641b95dd330a33185a44", "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984", "0x23687d9d40f9ecc86e7666dddb820e700f954526", "0x28cb7e841ee97947a86b06fa4090c8451f64c0be", "0x439ce375e3ee4dc203d71958beca3c0f417d65cb", "0x531c3a8926e4c4b4cc50dc1de83e1e7fa0b2738e", "0x537a9095b78517597b5f2058edcd6e1978095909", "0x55801d4dbd6699a527c663e9f08fdbc080f87c3e", "0x58b6a8a3302369daec383334672404ee733ab239", "0x64795db64dc318c0e68cfb38eeb0b8e30b139b3e", "0x6b175474e89094c44da98b954eedeac495271d0f", "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", "0x8daebade922df735c38c80c7ebd708af50815faa", "0x973e52691176d36453868d9d86572788d27041a9"]}) {
id
symbol
name
decimals
}
}
## // Second query (super fast, ~0.2 seconds):
{
token0: token(id: "0xdac17f958d2ee523a2206206994597c13d831ec7") {
id
symbol
name
decimals
}
token1: token(id: "0x0ae055097c6d159879521c384f1d2123d1f195e6") {
id
symbol
name
decimals
}
token2: token(id: "0x0d438f3b5175bebc262bf23753c1e53d03432bde") {
id
symbol
name
decimals
}
token3: token(id: "0x1ceb5cb57c4d4e2b2433641b95dd330a33185a44") {
id
symbol
name
decimals
}
token4: token(id: "0x0d8775f648430679a709e98d2b0cb6250d2887ef") {
id
symbol
name
decimals
}
token5: token(id: "0x23687d9d40f9ecc86e7666dddb820e700f954526") {
id
symbol
name
decimals
}
token6: token(id: "0x28cb7e841ee97947a86b06fa4090c8451f64c0be") {
id
symbol
name
decimals
}
token7: token(id: "0x439ce375e3ee4dc203d71958beca3c0f417d65cb") {
id
symbol
name
decimals
}
token8: token(id: "0x531c3a8926e4c4b4cc50dc1de83e1e7fa0b2738e") {
id
symbol
name
decimals
}
token9: token(id: "0x537a9095b78517597b5f2058edcd6e1978095909") {
id
symbol
name
decimals
}
token10: token(id: "0x55801d4dbd6699a527c663e9f08fdbc080f87c3e") {
id
symbol
name
decimals
}
token11: token(id: "0x58b6a8a3302369daec383334672404ee733ab239") {
id
symbol
name
decimals
}
token12: token(id: "0x64795db64dc318c0e68cfb38eeb0b8e30b139b3e") {
id
symbol
name
decimals
}
token13: token(id: "0x6b175474e89094c44da98b954eedeac495271d0f") {
id
symbol
name
decimals
}
token14: token(id: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2") {
id
symbol
name
decimals
}
token15: token(id: "0x8daebade922df735c38c80c7ebd708af50815faa") {
id
symbol
name
decimals
}
token16: token(id: "0x973e52691176d36453868d9d86572788d27041a9") {
id
symbol
name
decimals
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment