Class ClientQuerySegmentWalker

  • All Implemented Interfaces:
    org.apache.druid.query.QuerySegmentWalker

    public class ClientQuerySegmentWalker
    extends Object
    implements org.apache.druid.query.QuerySegmentWalker
    Query handler for the Broker processes (see CliBroker).

    This class is responsible for:

    1) Running queries on the cluster using its 'clusterClient' 2) Running queries locally (when all datasources are global) using its 'localClient' 3) Inlining subqueries if necessary, in service of the above two goals

    • Constructor Detail

      • ClientQuerySegmentWalker

        public ClientQuerySegmentWalker​(org.apache.druid.java.util.emitter.service.ServiceEmitter emitter,
                                        org.apache.druid.query.QuerySegmentWalker clusterClient,
                                        org.apache.druid.query.QuerySegmentWalker localClient,
                                        org.apache.druid.query.QueryToolChestWarehouse warehouse,
                                        org.apache.druid.segment.join.JoinableFactory joinableFactory,
                                        RetryQueryRunnerConfig retryConfig,
                                        com.fasterxml.jackson.databind.ObjectMapper objectMapper,
                                        ServerConfig serverConfig,
                                        Cache cache,
                                        CacheConfig cacheConfig,
                                        SubqueryGuardrailHelper subqueryGuardrailHelper,
                                        SubqueryCountStatsProvider subqueryStatsProvider)
    • Method Detail

      • getQueryRunnerForIntervals

        public <T> org.apache.druid.query.QueryRunner<T> getQueryRunnerForIntervals​(org.apache.druid.query.Query<T> query,
                                                                                    Iterable<org.joda.time.Interval> intervals)
        Specified by:
        getQueryRunnerForIntervals in interface org.apache.druid.query.QuerySegmentWalker
      • getQueryRunnerForSegments

        public <T> org.apache.druid.query.QueryRunner<T> getQueryRunnerForSegments​(org.apache.druid.query.Query<T> query,
                                                                                   Iterable<org.apache.druid.query.SegmentDescriptor> specs)
        Specified by:
        getQueryRunnerForSegments in interface org.apache.druid.query.QuerySegmentWalker