Description
Currently, CoGroupByKey creates UnionTables that are Flattened. The Flattened output is processed by a GroupByKey to produce a CoGbkResult (via ConstructCoGbkResultFn).
Given the performance of CoGBK is greatly impacted based on the which elements are cached in the (finitely sized) in-memory results, it would be useful if CoGbkResult can use runtime information to prioritize which elements are stored in-memory.