Query more efficently by using the information about (deduplicated) blocks
- Dominant language
- Go
- Stars
- 11.7k
- Forks
- 802
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 80
Description
This issue is an umbrella issue to use the physical block plan for all query endpoints.
The `queryStoreAfter` flag should be removed once the work is complete and instead a plan of which blocks to query from which store gateways should be used.
That has been created in PR https://github.com/grafana/pyroscope/pull/2586 and makes sure to:
- Only query on block once from one of the store-gateways (typically the replication factor there is 3) and once the compactor has deduplicated all blocks in the time window, bypass deduplication.
https://github.com/grafana/pyroscope/pull/2586
```[tasklist]
- [x] MergeStacktraces according to block plan https://github.com/grafana/pyroscope/pull/2586
- [x] MergeStacktraces while ignoring the labels
- [ ] Use the block plan for the SelectSeries endpoint
- [ ] Use the block plan for the LabelName/LabelValues/ProfileTypes endpoint
- [x] Use the block plan for the MergePprof endpoint
- [x] Use the block plan for the MergeByLabels endpoint
- [ ] Remove queryStoreAfter
- [ ] Move creation of blockPlan to query frontend and split according to the boundaries discovered by block plan
- [ ] Reduce ingester local store
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.