org.apache.druid.query.QueryRunner.run()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.5k)|赞(0)|评价(0)|浏览(91)

本文整理了Java中org.apache.druid.query.QueryRunner.run方法的一些代码示例,展示了QueryRunner.run的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryRunner.run方法的具体详情如下:
包路径:org.apache.druid.query.QueryRunner
类名称:QueryRunner
方法名:run

QueryRunner.run介绍

[英]Runs the given query and returns results in a time-ordered sequence.
[中]运行给定的查询并按时间顺序返回结果。

代码示例

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<T> apply(final QueryRunner<T> input)
 {
  return input.run(queryPlus, responseContext);
 }
}

代码示例来源:origin: apache/incubator-druid

@Override
public Sequence<T> run(QueryPlus<T> queryPlus, Map<String, Object> responseContext)
{
 return runner.run(queryPlus, responseContext);
}

代码示例来源:origin: apache/incubator-druid

@Override
 public <T> QueryRunner<T> decorate(final QueryRunner<T> delegate, QueryToolChest<T, ? extends Query<T>> toolChest)
 {
  return (queryPlus, responseContext) -> delegate.run(queryPlus, responseContext);
 }
};

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<T> run(final QueryPlus<T> input, final Map<String, Object> responseContext)
 {
  return base.run(
    input.optimizeForSegment(optimizationContext),
    responseContext
  );
 }
}

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<T> apply(DataSource singleSource)
 {
  return baseRunner.run(
    queryPlus.withQuery(query.withDataSource(singleSource)),
    responseContext
  );
 }
}

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<Result<TopNResultValue>> run(
   QueryPlus<Result<TopNResultValue>> queryPlus,
   Map<String, Object> responseContext
 )
 {
  this.query = (TopNQuery) queryPlus.getQuery();
  return runner.run(queryPlus, responseContext);
 }
}

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<Row> run(QueryPlus<Row> queryPlus, Map<String, Object> responseContext)
 {
  QueryRunner<Row> rowQueryRunner = strategySelector.strategize((GroupByQuery) queryPlus.getQuery()).mergeRunners(
    queryExecutor,
    queryRunners
  );
  return rowQueryRunner.run(queryPlus, responseContext);
 }
};

代码示例来源:origin: apache/incubator-druid

@Override
public Sequence<T> run(QueryPlus<T> queryPlus, Map<String, Object> responseContext)
{
 if (QueryContexts.isBySegment(queryPlus.getQuery())) {
  return baseRunner.run(queryPlus, responseContext);
 }
 return doRun(baseRunner, queryPlus, responseContext);
}

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<T> run(QueryPlus<T> queryPlus, Map<String, Object> responseContext)
 {
  return new BlockingSequence<>(runner.run(queryPlus, responseContext), waitLatch, waitYieldLatch, notifyLatch);
 }
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

private static <T> List<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence run(QueryPlus queryPlus, Map responseContext)
 {
  Query realQuery = getRealQuery(queryPlus.getQuery());
  QueryToolChest realQueryToolChest = warehouse.getToolChest(realQuery);
  QueryRunner realQueryRunner = realQueryToolChest.preMergeQueryDecoration(
    new MaterializedViewQueryRunner(runner, optimizer)
  );
  return realQueryRunner.run(queryPlus.withQuery(realQuery), responseContext);
 }
};

代码示例来源:origin: apache/incubator-druid

@Override
 public Sequence<ScanResultValue> run(QueryPlus<ScanResultValue> queryPlus, Map<String, Object> responseContext)
 {
  ScanQuery scanQuery = (ScanQuery) queryPlus.getQuery();
  if (scanQuery.getFilter() != null) {
   scanQuery = scanQuery.withDimFilter(scanQuery.getFilter().optimize());
   queryPlus = queryPlus.withQuery(scanQuery);
  }
  return runner.run(queryPlus, responseContext);
 }
};

代码示例来源:origin: apache/incubator-druid

@Test
public void testChunking()
{
 Query query = queryBuilder.intervals("2015-01-01T00:00:00.000/2015-01-11T00:00:00.000").context(ImmutableMap.of("chunkPeriod", "P1D")).build();
 executors.execute(EasyMock.anyObject(Runnable.class));
 EasyMock.expectLastCall().times(10);
 EasyMock.replay(executors);
 EasyMock.replay(toolChest);
 QueryRunner runner = decorator.decorate(baseRunner, toolChest);
 runner.run(QueryPlus.wrap(query), Collections.EMPTY_MAP);
 EasyMock.verify(executors);
}

代码示例来源:origin: apache/incubator-druid

public static <T> Iterable<T> runQuery(QueryRunnerFactory factory, QueryRunner runner, Query<T> query)
{
 QueryToolChest toolChest = factory.getToolchest();
 QueryRunner<T> theRunner = new FinalizeResultsQueryRunner<>(
   toolChest.mergeResults(toolChest.preMergeQueryDecoration(runner)),
   toolChest
 );
 Sequence<T> queryResult = theRunner.run(QueryPlus.wrap(query), new HashMap<>());
 return queryResult.toList();
}

相关文章

微信公众号

最新文章

更多

QueryRunner类方法