v.19.16Improvement

Flush Parts of Right-hand Joining Table on Disk in Partialmergejoin (if There Is Not Enough Memory)

Flush parts of right-hand joining table on disk in PartialMergeJoin (if there is not enough memory). Load data back when needed. #7186 (Artem Zuikov)
Flushes parts of the right-hand joining table to disk during a PartialMergeJoin if memory is insufficient, and reloads them when needed.

Why it matters

This feature addresses memory limitations during PartialMergeJoin operations by temporarily storing parts of the right-hand table on disk. It allows joins with larger datasets without running out of memory, improving stability and scalability for resource-constrained environments.

How to use it

The flushing mechanism in PartialMergeJoin is automatic and activates when memory usage surpasses configured thresholds. Users do not need to manually enable it; ensuring adequate disk space for temporary storage is recommended.