Performance improvements #64
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Based on this article from Edge & Node people I worked on this for improving the performance of our subgraph.
This includes immutable entities and using Bytes as the id of entities. The two features are independent of each other; immutable entities only require a small change to the subgraph schema, while using byte strings as the id also requires small changes to the mappings.
Both of these enhancements will improve indexing speed, reduce the amount of data that needs to be stored for a subgraph, and also speed up some queries.
Due to the changes I already made I deployed this here and tested the affected entities to check if the information is still right. The information seems to be ok.
I need to perform an indexing speed test comparing it with the previous version. To perform this test I will remove a prop in both subgraphs (not crucial, just for making it index again) and I will query how many blocks are indexed in 10 minutes on different parts of the indexing progress for being able to decide if the change makes sense. Besides that, there should be improvements on some queries.
Close #54