Search in sources :

Example 1 with FloatCardinalityVectorProcessor

use of org.apache.druid.query.aggregation.cardinality.vector.FloatCardinalityVectorProcessor in project druid by druid-io.

the class CardinalityVectorAggregatorTest method testAggregateFloat.

@Test
public void testAggregateFloat() {
    final float[] values = { 1, 2, 2, 3, 3, 3, 0 };
    final boolean[] nulls = NullHandling.replaceWithDefault() ? null : new boolean[] { false, false, false, false, false, false, true };
    final CardinalityVectorAggregator aggregator = new CardinalityVectorAggregator(Collections.singletonList(new FloatCardinalityVectorProcessor(new BaseFloatVectorValueSelector(new NoFilterVectorOffset(values.length, 0, values.length)) {

        @Override
        public float[] getFloatVector() {
            return values;
        }

        @Nullable
        @Override
        public boolean[] getNullVector() {
            return nulls;
        }
    })));
    testAggregate(aggregator, values.length, NullHandling.replaceWithDefault() ? 4 : 3);
}
Also used : FloatCardinalityVectorProcessor(org.apache.druid.query.aggregation.cardinality.vector.FloatCardinalityVectorProcessor) BaseFloatVectorValueSelector(org.apache.druid.segment.vector.BaseFloatVectorValueSelector) NoFilterVectorOffset(org.apache.druid.segment.vector.NoFilterVectorOffset) Nullable(javax.annotation.Nullable) InitializedNullHandlingTest(org.apache.druid.testing.InitializedNullHandlingTest) Test(org.junit.Test)

Aggregations

Nullable (javax.annotation.Nullable)1 FloatCardinalityVectorProcessor (org.apache.druid.query.aggregation.cardinality.vector.FloatCardinalityVectorProcessor)1 BaseFloatVectorValueSelector (org.apache.druid.segment.vector.BaseFloatVectorValueSelector)1 NoFilterVectorOffset (org.apache.druid.segment.vector.NoFilterVectorOffset)1 InitializedNullHandlingTest (org.apache.druid.testing.InitializedNullHandlingTest)1 Test (org.junit.Test)1