-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Have easier to way to tell the progress of compactor (and downsampling) #3985
Comments
I'm trying to figure out the way of reporting progress and think that there are 2 possible ways:
In my opinion for both ways would be enough to give out:
Probably it's reasonable to give a time of block's state change as a metric value. OFC it's possible to implement own readers for all stages to report bytes progress, but it looks like "overkill". WDYT? |
Hello 👋 Looks like there was no activity on this issue for the last two months. |
Yes please! I spent the weekend trying to answer that question since we have a huge compaction backlog and I couldn't think of a simple instrumentation to add. Largely because currently compaction planning is iterative, so we'd need to simulate multiple plan invocations per group to accurately determine how many compaction runs would need to happen per group to reach the desired state. As a user - I'd love to see an overall compaction percentage for the bucket as well as compaction progress for each group. I'm going to think more about this problem and report back. |
Hello @bwplotka! I am relatively new to the Thanos project but would love to get involved and potentially contribute. Any pointers or resources for me to get started with Thanos. So that I could get a better understanding of the project and this issue? Thanks, |
Sounds like a promising way to go! Question:
|
What we discussed in our 1:2 with @yeya24 @metonymic-smokey : The idea to simulate planning sounds amazing. It will take more time (marginal) and complex code, but in the end we can (1) estimate compaction (2) plan it better (optimize!)
We can estimate samples/bytes, but it will be an approximation (: |
Another idea that @yeya24 came up with is calculating retention progress, once we have finished working on compaction and downsampling progress. Broadly, it will also be on the same lines i.e. simulation and exporting metrics. |
Let's have another issue to track this. |
Currently, you need to check Thanos Compact UI and check if all older blocks are bigger. There should be only up to 5 of 2h, 8h and 2d blocks. Rest should be compacted to 2w. Similar for downsampled blocks.
Or you can check the number of compactions per day to see if the number stabilizes.
Both ways are pretty manual. I would propose adding metric suggesting the backlog of compaction to make. This requires potentially changing our compaction planner logic, which is already planned for #3405
The text was updated successfully, but these errors were encountered: