Class GroupByMergingQueryRunner
java.lang.Object
org.apache.druid.query.groupby.epinephelinae.GroupByMergingQueryRunner
- All Implemented Interfaces:
QueryRunner<ResultRow>
Class that knows how to merge a collection of groupBy
QueryRunner objects, called queryables,
using a buffer provided by mergeBufferPool and a parallel executor provided by exec. Outputs a
fully aggregated stream of ResultRow objects. Does not apply post-aggregators.
The input queryables are expected to come from a GroupByQueryEngine. This code primarily runs on data
servers like Historicals and Realtime Tasks. This can also run on Brokers, if the query is operating on local
data sources, like inlined data, where the broker itself acts like a data server
This class has some resemblance to GroupByRowProcessor. See the javadoc of that class for a discussion of
similarities and differences.
Used by
GroupingEngine.mergeRunners(QueryProcessingPool, Iterable)-
Constructor Summary
ConstructorsConstructorDescriptionGroupByMergingQueryRunner(GroupByQueryConfig config, DruidProcessingConfig processingConfig, QueryProcessingPool queryProcessingPool, QueryWatcher queryWatcher, Iterable<QueryRunner<ResultRow>> queryables, GroupByResourcesReservationPool groupByResourcesReservationPool, int concurrencyHint, int mergeBufferSize, com.fasterxml.jackson.databind.ObjectMapper spillMapper, String processingTmpDir, GroupByStatsProvider groupByStatsProvider) -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.druid.query.QueryRunner
run
-
Constructor Details
-
GroupByMergingQueryRunner
public GroupByMergingQueryRunner(GroupByQueryConfig config, DruidProcessingConfig processingConfig, QueryProcessingPool queryProcessingPool, QueryWatcher queryWatcher, Iterable<QueryRunner<ResultRow>> queryables, GroupByResourcesReservationPool groupByResourcesReservationPool, int concurrencyHint, int mergeBufferSize, com.fasterxml.jackson.databind.ObjectMapper spillMapper, String processingTmpDir, GroupByStatsProvider groupByStatsProvider)
-
-
Method Details
-
run
Description copied from interface:QueryRunnerRuns the given query and returns results in a time-ordered sequence.- Specified by:
runin interfaceQueryRunner<ResultRow>
-