> @gaodayue thank you for catching this. Could you share some more details of > your use case? I wonder especially how large the dictionary was. I set the > initial size of dictionary map to 10000 because I thought SpillingGrouper > isn't supposed to be used for small dictionary.
Hi @jihoonson , as you commented in #6256 , ConcurrentGrouper always uses SpillingGrouper as sub-groupers no matter whether spilling is enabled or not. So dictionary is initialized for all groupby queries even when it's not used (not grouping by string columns). One of our use cases is providing realtime KPI monitoring for BD (business developer). The query for each BD is something like `where bd=xx and dim1=yy group by bd, dim1`. As a result, the size of dictionary used in merging is always 2. [ Full content available at: https://github.com/apache/incubator-druid/issues/6255 ] This message was relayed via gitbox.apache.org for [email protected]
