public interface GroupByStrategy
GroupByQueryResource prepareResource(GroupByQuery query, boolean willMergeRunners)
query - a groupBy query to be processedboolean isCacheable(boolean willMergeRunners)
willMergeRunners parameter can be used for distinguishing the caller is a broker or a data node.willMergeRunners - indicates that QueryRunnerFactory.mergeRunners(ExecutorService, Iterable) will be
called on the cached by-segment resultsboolean doMergeResults(GroupByQuery query)
QueryRunner<io.druid.data.input.Row> createIntervalChunkingRunner(IntervalChunkingQueryRunnerDecorator decorator, QueryRunner<io.druid.data.input.Row> runner, GroupByQueryQueryToolChest toolChest)
Sequence<io.druid.data.input.Row> mergeResults(QueryRunner<io.druid.data.input.Row> baseRunner, GroupByQuery query, Map<String,Object> responseContext)
Sequence<io.druid.data.input.Row> processSubqueryResult(GroupByQuery subquery, GroupByQuery query, GroupByQueryResource resource, Sequence<io.druid.data.input.Row> subqueryResult)
QueryRunner<io.druid.data.input.Row> mergeRunners(com.google.common.util.concurrent.ListeningExecutorService exec, Iterable<QueryRunner<io.druid.data.input.Row>> queryRunners)
Sequence<io.druid.data.input.Row> process(GroupByQuery query, StorageAdapter storageAdapter)
Copyright © 2011–2018. All rights reserved.