Skip to content
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

Dynamic period table capacity adjustment #464

Closed
awh opened this issue Jun 19, 2017 · 6 comments
Closed

Dynamic period table capacity adjustment #464

awh opened this issue Jun 19, 2017 · 6 comments

Comments

@awh
Copy link
Contributor

awh commented Jun 19, 2017

During the period from midnight to midnight + max chunk age, newly matured chunks require 2x the number of index entries to be written to the period tables because their contents span two day buckets. Provisioned capacity must be sized to cope with this nightly spike or the series flush queues start to back up:

screenshot from 2017-06-19 10-56-08
screenshot from 2017-06-19 10-56-31

However, doing so means that capacity is over-provisioned for the noon to midnight period. The table manager can be enhanced to step the capacity up automatically before midnight, and back down again after noon.

@tomwilkie
Copy link
Contributor

Dupe of #318? @leth added metrics on per-tables used capacity in #460, which is the first step in dynamically adjusting provisioning.

@leth
Copy link
Contributor

leth commented Jun 19, 2017

The scope of this could be a bit smaller; just focused on the midnight rollover, rather than general capacity?

@tomwilkie
Copy link
Contributor

Thats up to the person who implements it I guess! I personally don't see how just focusing on the time around midnight make is much easier.

@awh
Copy link
Contributor Author

awh commented Jun 19, 2017

I suspect the solution for #318 will be far more complex than adding if time > midnight & time < noon activeCapacity *= 2 to the table manager...

@bboreham
Copy link
Contributor

bboreham commented Feb 5, 2018

Do we still need this issue now autoscaling is supported?

Edit: AWS autoscaling does nothing at all when you're not using the table, so we currently still have the problem that the table is over-provisioned from when it is created until when we really need it.

@bboreham
Copy link
Contributor

bboreham commented Sep 6, 2018

I think the new metrics-based scaling in table-manager is coping ok with this, so closing this issue.

@bboreham bboreham closed this as completed Sep 6, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants