The cost of the average indexer is not based on compute units but is fixed. This is because the main cost is in operating the archive nodes or firehose. They are constantly growing in size and the amount of supported networks growths constantly as well.
Regarding the technical aspects, the proposal introduces the ‘Unit of Work’ as a central concept. While promising, the details matter. Currently, it seems the unit of work only accounts for tasks carried out by
graph-node
, overlooking other essential tasks like running RPC nodes and maintaining a firehose block set.
@czarly and @ellipfra , you seem to be raising the same issue. I’d like to dig a little deeper so I understand better. But you are right that this only considers the cost on the graph node side.
The way I think of it is that Archive/Firehose is a fixed cost that indexers incur before indexing any subgraph (assuming the indexer is running their own firehose/archive)… The actual indexing then incurs costs at the graph-node level But realistically, the graph-node setup is probably on some fixed infrastructure so indexing just takes up capacity of that hardware (disk, compute, etc.). So from an indexer perspective, they need to somehow “amortize” that fixed cost across all subgraphs and “charge” for the capacity on Graph Node. Maybe the amortization of the fixed cost is based on graph node usage, maybe not, but allowing indexers to price based on graph-node usage enables new pricing strategies for indexers to amortize their fixed costs.
Another interpretation in the current regime is that graph-node usage/work should be roughly correlated with time to sync, which is how long an indexer must wait to collect indexing rewards. So if an indexer can charge more based on the time to sync, it can be compensated for its time.
I am interested in your general thoughts and opinions but please correct me where my understanding is not correct.