-
Notifications
You must be signed in to change notification settings - Fork 868
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
Add memory size estimation for ParquetMetadata
#1729
Comments
I believe @crepererum may be working on this |
I think I might not. After a quick look at the data structures, the memory estimation is quite a mess, especially for the parquet schema data. |
I am going to try and find time to do this sometime this week |
Seems a typo here, https://github.com/influxdata/influxdb_iox is empty |
Oh, I see. This issue created in 2022, and |
Yeah, the actual history is more tortured -- if you care it is here https://www.influxdata.com/blog/the-plan-for-influxdb-3-0-open-source/ TLDR is that we made the influxdb_iox repo private |
Here is a proposed PR with a fix: #5965 |
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
In https://github.com/influxdata/influxdb_iox, caching is very important to performance. Part of what is cached in memory is a
ParquetMetadata
structure. In order to effectively cache this data (and free it when under memory pressure) we need to know an accurate estimate of the heap it is using.Describe the solution you'd like
I would like a function such as the following that accurately estimates the memory usage of parquet metadata:
Describe alternatives you've considered
I believe @domodwyer is considering caching only the parts that we need (rather than the
ParquetMetadata
object itself) in which case we would likely not need this feature in IOx. I think it would still be generally helpful thoughAdditional context
See https://github.com/influxdata/influxdb_iox/pull/4661 for example of usecase
The text was updated successfully, but these errors were encountered: