Initial observations about FlatGroupByHash
memory usage compared to the previous MultiChannelGroupByHash
that was removed
in Trino 427 are documented in this gist. Those observations
prompted a deeper investigation and discussion how FlatHash
and the flat layout scheme should work and was carried forward
into a reimplementation in trino#25127.
- Reduce the flat memory layout width for variable width types from 16 to 4 bytes per entry
- Reduce the expansion factor of
VariableWidthData
from 2x to 1.5x