You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by cw...@apache.org on 2020/09/23 20:57:00 UTC

[druid] branch master updated (a60d034 -> 19c4b16)

This is an automated email from the ASF dual-hosted git repository.

cwylie pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git.


    from a60d034  Web console: compaction dialog update (#10417)
     add 19c4b16  vectorized expressions and expression virtual columns (#10401)

No new revisions were added by this update.

Summary of changes:
 benchmarks/pom.xml                                 |   5 +
 .../ExpressionVectorSelectorBenchmark.java         | 219 +++++
 .../benchmark/query/SqlExpressionBenchmark.java    | 298 +++++++
 .../org/apache/druid/math/expr/ApplyFunction.java  |  27 +
 .../druid/math/expr/BinaryLogicalOperatorExpr.java |  73 ++
 .../druid/math/expr/BinaryMathOperatorExpr.java    | 109 ++-
 .../org/apache/druid/math/expr/ConstantExpr.java   | 207 +++--
 .../main/java/org/apache/druid/math/expr/Expr.java |  97 +++
 .../java/org/apache/druid/math/expr/ExprEval.java  |  32 +-
 .../apache/druid/math/expr/ExprListenerImpl.java   |   4 +-
 .../java/org/apache/druid/math/expr/ExprType.java  |  55 +-
 .../java/org/apache/druid/math/expr/Exprs.java     |  16 +
 .../java/org/apache/druid/math/expr/Function.java  | 220 ++++++
 .../org/apache/druid/math/expr/FunctionalExpr.java |  39 +
 .../org/apache/druid/math/expr/IdentifierExpr.java |  73 +-
 .../apache/druid/math/expr/UnaryOperatorExpr.java  |  50 +-
 .../vector/BivariateFunctionVectorProcessor.java   |  87 ++
 .../expr/vector/CastToDoubleVectorProcessor.java   |  35 +-
 .../expr/vector/CastToLongVectorProcessor.java     |  35 +-
 .../expr/vector/CastToStringVectorProcessor.java   |  35 +-
 .../expr/vector/CastToTypeVectorProcessor.java     |  56 ++
 .../DoubleOutDoubleInFunctionVectorProcessor.java  |  54 ++
 ...ubleOutDoubleLongInFunctionVectorProcessor.java |  58 ++
 .../DoubleOutDoublesInFunctionVectorProcessor.java |  58 ++
 ...ubleOutLongDoubleInFunctionVectorProcessor.java |  58 ++
 .../DoubleOutLongInFunctionVectorProcessor.java    |  54 ++
 .../DoubleOutLongsInFunctionVectorProcessor.java   |  58 ++
 .../math/expr/vector/ExprEvalDoubleVector.java     |  74 ++
 .../druid/math/expr/vector/ExprEvalLongVector.java |  69 ++
 .../math/expr/vector/ExprEvalStringVector.java     | 109 +++
 .../druid/math/expr/vector/ExprEvalVector.java     |  79 ++
 .../math/expr/vector/ExprVectorProcessor.java      |  25 +-
 .../LongOutLongInFunctionVectorProcessor.java      |  53 ++
 .../LongOutLongsInFunctionVectorProcessor.java     |  58 ++
 .../LongOutStringInFunctionVectorProcessor.java    |  37 +-
 .../UnivariateFunctionVectorObjectProcessor.java   |  65 ++
 .../vector/UnivariateFunctionVectorProcessor.java  |  78 ++
 .../expr/vector/VectorComparisonProcessors.java    | 397 ++++++++++
 .../math/expr/vector/VectorMathProcessors.java     | 879 +++++++++++++++++++++
 .../druid/math/expr/vector/VectorProcessors.java   | 142 ++++
 .../java/org/apache/druid/math/expr/ExprTest.java  |   4 +-
 .../org/apache/druid/math/expr/FunctionTest.java   |   4 +-
 .../druid/math/expr/VectorExprSanityTest.java      | 459 +++++++++++
 .../query/filter/sql/BloomDimFilterSqlTest.java    |   3 -
 .../druid/query/aggregation/AggregatorUtil.java    |  45 +-
 .../aggregation/DoubleMaxAggregatorFactory.java    |  18 -
 .../aggregation/DoubleMinAggregatorFactory.java    |  18 -
 .../aggregation/DoubleSumAggregatorFactory.java    |  20 -
 .../aggregation/FloatMaxAggregatorFactory.java     |  19 -
 .../aggregation/FloatMinAggregatorFactory.java     |  18 -
 .../aggregation/FloatSumAggregatorFactory.java     |  18 -
 .../aggregation/LongMaxAggregatorFactory.java      |  18 -
 .../aggregation/LongMinAggregatorFactory.java      |  18 -
 .../aggregation/LongSumAggregatorFactory.java      |  18 -
 .../aggregation/SimpleDoubleAggregatorFactory.java |  15 +
 .../aggregation/SimpleFloatAggregatorFactory.java  |  15 +
 .../aggregation/SimpleLongAggregatorFactory.java   |  15 +
 .../query/expression/TimestampFloorExprMacro.java  |  28 +
 .../org/apache/druid/segment/ColumnInspector.java  |  15 +-
 .../segment/ColumnSelectorBitmapIndexSelector.java |  10 +-
 .../QueryableIndexColumnSelectorFactory.java       |   5 +-
 .../segment/QueryableIndexStorageAdapter.java      |  13 +
 .../org/apache/druid/segment/VirtualColumn.java    |  30 +-
 .../org/apache/druid/segment/VirtualColumns.java   |  10 +-
 .../apache/druid/segment/column/RowSignature.java  |  15 +-
 .../column/StringDictionaryEncodedColumn.java      |  51 ++
 .../apache/druid/segment/data/ColumnarFloats.java  |   2 +-
 .../druid/segment/filter/ExpressionFilter.java     |   1 +
 .../segment/generator/GeneratorBasicSchemas.java   |  46 ++
 .../IncrementalIndexColumnSelectorFactory.java     |   2 +-
 .../QueryableIndexVectorColumnSelectorFactory.java |   5 +-
 ... => ExpressionMultiValueDimensionSelector.java} |  64 +-
 .../druid/segment/virtual/ExpressionPlan.java      | 167 ++++
 .../druid/segment/virtual/ExpressionPlanner.java   | 180 +++++
 .../druid/segment/virtual/ExpressionSelectors.java | 221 +-----
 .../ExpressionSingleValueDimensionSelector.java    |  90 +++
 .../virtual/ExpressionVectorInputBinding.java      | 107 +++
 .../virtual/ExpressionVectorObjectSelector.java    |  55 ++
 .../segment/virtual/ExpressionVectorSelectors.java |  97 +++
 .../virtual/ExpressionVectorValueSelector.java     |  82 ++
 .../segment/virtual/ExpressionVirtualColumn.java   | 101 ++-
 .../RowBasedExpressionColumnValueSelector.java     |  17 +-
 .../virtual/VirtualizedColumnSelectorFactory.java  |   2 +-
 .../query/groupby/GroupByQueryRunnerTest.java      |  48 +-
 .../timeseries/TimeseriesQueryRunnerTest.java      |   3 -
 .../druid/segment/RowBasedStorageAdapterTest.java  |   2 +-
 .../druid/segment/generator/DataGeneratorTest.java |  68 ++
 .../virtual/ExpressionVectorSelectorsTest.java     | 240 ++++++
 .../virtual/ExpressionVirtualColumnTest.java       |   2 +-
 .../org/apache/druid/server/QueryStackTests.java   |  10 +-
 .../apache/druid/sql/calcite/rel/Projection.java   |   4 +-
 .../sql/calcite/rel/VirtualColumnRegistry.java     |   4 +-
 .../apache/druid/sql/calcite/CalciteQueryTest.java |  24 -
 .../calcite/SqlVectorizedExpressionSanityTest.java | 233 ++++++
 94 files changed, 6314 insertions(+), 642 deletions(-)
 create mode 100644 benchmarks/src/test/java/org/apache/druid/benchmark/ExpressionVectorSelectorBenchmark.java
 create mode 100644 benchmarks/src/test/java/org/apache/druid/benchmark/query/SqlExpressionBenchmark.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/BivariateFunctionVectorProcessor.java
 copy processing/src/main/java/org/apache/druid/segment/ColumnInspector.java => core/src/main/java/org/apache/druid/math/expr/vector/CastToDoubleVectorProcessor.java (55%)
 copy processing/src/main/java/org/apache/druid/segment/ColumnInspector.java => core/src/main/java/org/apache/druid/math/expr/vector/CastToLongVectorProcessor.java (56%)
 copy processing/src/main/java/org/apache/druid/segment/ColumnInspector.java => core/src/main/java/org/apache/druid/math/expr/vector/CastToStringVectorProcessor.java (56%)
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/CastToTypeVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutDoubleInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutDoubleLongInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutDoublesInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutLongDoubleInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutLongInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/DoubleOutLongsInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/ExprEvalDoubleVector.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/ExprEvalLongVector.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/ExprEvalStringVector.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/ExprEvalVector.java
 copy processing/src/main/java/org/apache/druid/segment/ColumnInspector.java => core/src/main/java/org/apache/druid/math/expr/vector/ExprVectorProcessor.java (61%)
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/LongOutLongInFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/LongOutLongsInFunctionVectorProcessor.java
 copy processing/src/main/java/org/apache/druid/segment/ColumnInspector.java => core/src/main/java/org/apache/druid/math/expr/vector/LongOutStringInFunctionVectorProcessor.java (53%)
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/UnivariateFunctionVectorObjectProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/UnivariateFunctionVectorProcessor.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/VectorComparisonProcessors.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/VectorMathProcessors.java
 create mode 100644 core/src/main/java/org/apache/druid/math/expr/vector/VectorProcessors.java
 create mode 100644 core/src/test/java/org/apache/druid/math/expr/VectorExprSanityTest.java
 rename processing/src/main/java/org/apache/druid/segment/virtual/{MultiValueExpressionDimensionSelector.java => ExpressionMultiValueDimensionSelector.java} (72%)
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionPlan.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionPlanner.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionSingleValueDimensionSelector.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionVectorInputBinding.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionVectorObjectSelector.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionVectorSelectors.java
 create mode 100644 processing/src/main/java/org/apache/druid/segment/virtual/ExpressionVectorValueSelector.java
 create mode 100644 processing/src/test/java/org/apache/druid/segment/virtual/ExpressionVectorSelectorsTest.java
 create mode 100644 sql/src/test/java/org/apache/druid/sql/calcite/SqlVectorizedExpressionSanityTest.java


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org