public class GroupByStrategyV1 extends Object implements GroupByStrategy
| Constructor and Description |
|---|
GroupByStrategyV1(com.google.common.base.Supplier<GroupByQueryConfig> configSupplier,
GroupByQueryEngine engine,
QueryWatcher queryWatcher,
NonBlockingPool<ByteBuffer> bufferPool) |
@Inject public GroupByStrategyV1(com.google.common.base.Supplier<GroupByQueryConfig> configSupplier, GroupByQueryEngine engine, QueryWatcher queryWatcher, NonBlockingPool<ByteBuffer> bufferPool)
public GroupByQueryResource prepareResource(GroupByQuery query, boolean willMergeRunners)
GroupByStrategyprepareResource in interface GroupByStrategyquery - a groupBy query to be processedpublic boolean isCacheable(boolean willMergeRunners)
GroupByStrategywillMergeRunners parameter can be used for distinguishing the caller is a broker or a data node.isCacheable in interface GroupByStrategywillMergeRunners - indicates that QueryRunnerFactory.mergeRunners(ExecutorService, Iterable) will be
called on the cached by-segment resultspublic QueryRunner<io.druid.data.input.Row> createIntervalChunkingRunner(IntervalChunkingQueryRunnerDecorator decorator, QueryRunner<io.druid.data.input.Row> runner, GroupByQueryQueryToolChest toolChest)
GroupByStrategycreateIntervalChunkingRunner in interface GroupByStrategypublic boolean doMergeResults(GroupByQuery query)
GroupByStrategydoMergeResults in interface GroupByStrategypublic Sequence<io.druid.data.input.Row> mergeResults(QueryRunner<io.druid.data.input.Row> baseRunner, GroupByQuery query, Map<String,Object> responseContext)
mergeResults in interface GroupByStrategypublic Sequence<io.druid.data.input.Row> processSubqueryResult(GroupByQuery subquery, GroupByQuery query, GroupByQueryResource resource, Sequence<io.druid.data.input.Row> subqueryResult)
processSubqueryResult in interface GroupByStrategypublic QueryRunner<io.druid.data.input.Row> mergeRunners(com.google.common.util.concurrent.ListeningExecutorService exec, Iterable<QueryRunner<io.druid.data.input.Row>> queryRunners)
mergeRunners in interface GroupByStrategypublic Sequence<io.druid.data.input.Row> process(GroupByQuery query, StorageAdapter storageAdapter)
process in interface GroupByStrategyCopyright © 2011–2018. All rights reserved.