Class GroupByMergingQueryRunner
- java.lang.Object
-
- org.apache.druid.query.groupby.epinephelinae.GroupByMergingQueryRunner
-
- All Implemented Interfaces:
QueryRunner<ResultRow>
public class GroupByMergingQueryRunner extends Object implements QueryRunner<ResultRow>
Class that knows how to merge a collection of groupByQueryRunnerobjects, calledqueryables, using a buffer provided bymergeBufferPooland a parallel executor provided byexec. Outputs a fully aggregated stream ofResultRowobjects. Does not apply post-aggregators. The inputqueryablesare expected to come from aGroupByQueryEngine. 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 toGroupByRowProcessor. See the javadoc of that class for a discussion of similarities and differences. Used byGroupingEngine.mergeRunners(QueryProcessingPool, Iterable)
-
-
Constructor Summary
Constructors Constructor Description 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)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Sequence<ResultRow>run(QueryPlus<ResultRow> queryPlus, ResponseContext responseContext)Runs the given query and returns results in a time-ordered sequence.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.query.QueryRunner
run
-
-
-
-
Constructor Detail
-
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)
-
-
Method Detail
-
run
public Sequence<ResultRow> run(QueryPlus<ResultRow> queryPlus, ResponseContext responseContext)
Description copied from interface:QueryRunnerRuns the given query and returns results in a time-ordered sequence.- Specified by:
runin interfaceQueryRunner<ResultRow>
-
-