TOPN value, which sum measure column group by dimension, error.

Environment

         Apache Kylin:1.6.0

STEPS

  1.  Kafka produce one message
  2.  kylin consume the message
  3.  kylin build cuboid
  4.  execute sql

KafKa JSON data

         {“T”:”2017-05-15”,“LV1”:”001”,”V”:-1}

MODEL

         1、Dimensions : T, LV1

         2、Measures : V

CUBE

  1.  Dimensions : T, LV1
  2.  Measures: _COUNT_; SUM(V); TOPN SUM COLUMN V GROUP BY LV1;

SQL and result

1、  SELECT LV1,SUM(V) V FROM TEST GROUP BY LV1

LV1


V


001


0




2、  SELECT LV1,SUM(V) V,COUNT(*) C FROM TEST GROUP BY LV1

LV1


V


C


001


-1


1


Problem

        The sum(v) value is error in sql 1, and correct in sql 2.

The probably reasons are:

1、org.apache.kylin.measure.topn. TopNCounterSerializer.deserialize function 
deserialize -1 to -0.99.

2、org.apache.kylin.metadata.tuple.setMeasureValue function convert 
double(-0.99) to long(0)

Reply via email to