grafana / pyroscope

Continuous Profiling Platform. Debug performance issues down to a single line of code
https://grafana.com/oss/pyroscope/
GNU Affero General Public License v3.0
9.86k stars 586 forks source link

Compactor memory consumption #3127

Open kolesnikovae opened 5 months ago

kolesnikovae commented 5 months ago

At compaction, we load symbolic information into memory, which often causes problems in large-scale deployments. The compaction process typically includes at least two steps – split and merge:

For example, if we compact 160 blocks with 50 compactors, 32 groups, and 64 shards (a real-life example):

kolesnikovae commented 5 months ago

Another problem is high memory consumption at the split step:

image

However, it should be possible to mitigate this by configuring the stage size