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

M3DB Allow snapshots to be merged for lower active block memory footprint #11

Open
robskillington opened this issue May 22, 2019 · 1 comment

Comments

@robskillington
Copy link
Contributor

Let me know if you feel this warrants a design doc, but this proposal is to allow using the arbitrary out of order writes code path to merge snapshots together if configured correctly so time series that have not been recently written to can be unloaded from memory.

The config will be either set to a specific memory goal (and will unload as best possible to meet that goal) or be set to unload from memory anything that has been snapshotted and hasn't been written to in X minutes/whatever (time duration).

cc @prateek @richardartoul @justinjc

@richardartoul
Copy link

@robskillington I think this 100% needs a design doc. There's many different ways this could be implemented so can't really have a reasonable discussion about it until there is a doc to look at.

That said the main thing I find confusing about this is that snapshot files are never converted to real data files, so how does this help us? It seems like the more straightforward path to accomplish what you want is to simply delete the snapshotting code path and trigger more regular flushes that merge with whats already on disk. Once the out of order write stuff lands I don't think we'll need snapshotting at all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants