[ 
https://issues.apache.org/jira/browse/CALCITE-1589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15828690#comment-15828690
 ] 

Jesus Camacho Rodriguez commented on CALCITE-1589:
--------------------------------------------------

[~nishantbangarwa] suggested the following:

{quote}
For timeseries druid fills the empty buckets using the default values for the 
aggregators. 
To change this behavior we can set a flag in query context to skipEmptyBuckets.
Below Druid query should return expected results - 
{code} 
cat bug-72369.json
{
  "queryType":"timeseries",
  "dataSource": "druid_tpcds_ss_sold_time_subset",
  "descending": false,
  "granularity": "DAY",
  "filter": {
    "type": "selector",
    "dimension": "i_brand_id",
    "value": "10001009"
  },
  "aggregations": [
    {
      "type": "longMax",
      "name": "$f1",
      "fieldName": "ss_quantity"
    },
    {
      "type": "doubleSum",
      "name": "$f2",
      "fieldName": "ss_wholesale_cost"
    },
    {
      "type" : "count",
      "name" : "count"
    }
  ],
  "intervals": [
    "1900-01-01T00:00:00.000Z/3000-01-01T00:00:00.000Z"
  ],
  "context" : {
     "skipEmptyBuckets" : true
  }
}
{code}
{quote}

> Druid adapter: timeseries query shows all days, even if no data
> ---------------------------------------------------------------
>
>                 Key: CALCITE-1589
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1589
>             Project: Calcite
>          Issue Type: Bug
>          Components: druid
>            Reporter: Jesus Camacho Rodriguez
>            Assignee: Julian Hyde
>            Priority: Critical
>             Fix For: 1.12.0
>
>
> Following query is transformed into timeseries Druid query which yields 
> different results in Calcite vs Druid, since it will show all values for the 
> given time granularity, even if there is no data for the given _i\_brand\_id_.
> In Druid:
> {code:sql}
> SELECT floor_day(`__time`) as `granularity`, max(ss_quantity), 
> sum(ss_wholesale_cost)
> FROM store_sales_sold_time_subset
> WHERE i_brand_id = 10001009
> GROUP BY floor_day(`__time`)
> ORDER BY `granularity`;
> OK
> 1999-11-01 00:00:00   45      37.47
> 1999-11-02 00:00:00   -9223372036854775808    0.0
> 1999-11-03 00:00:00   -9223372036854775808    0.0
> 1999-11-04 00:00:00   39      61.52
> 1999-11-05 00:00:00   74      145.84
> 1999-11-06 00:00:00   62      14.5
> 1999-11-07 00:00:00   -9223372036854775808    0.0
> 1999-11-08 00:00:00   5       34.08
> 1999-11-09 00:00:00   -9223372036854775808    0.0
> 1999-11-10 00:00:00   -9223372036854775808    0.0
> 1999-11-11 00:00:00   -9223372036854775808    0.0
> 1999-11-12 00:00:00   66      67.22
> 1999-11-13 00:00:00   -9223372036854775808    0.0
> 1999-11-14 00:00:00   -9223372036854775808    0.0
> 1999-11-15 00:00:00   -9223372036854775808    0.0
> 1999-11-16 00:00:00   60      96.37
> 1999-11-17 00:00:00   50      79.11
> 1999-11-18 00:00:00   -9223372036854775808    0.0
> 1999-11-19 00:00:00   -9223372036854775808    0.0
> 1999-11-20 00:00:00   -9223372036854775808    0.0
> 1999-11-21 00:00:00   -9223372036854775808    0.0
> 1999-11-22 00:00:00   -9223372036854775808    0.0
> 1999-11-23 00:00:00   57      17.69
> 1999-11-24 00:00:00   -9223372036854775808    0.0
> 1999-11-25 00:00:00   -9223372036854775808    0.0
> 1999-11-26 00:00:00   -9223372036854775808    0.0
> 1999-11-27 00:00:00   86      91.59
> 1999-11-28 00:00:00   -9223372036854775808    0.0
> 1999-11-29 00:00:00   93      136.48
> 1999-11-30 00:00:00   -9223372036854775808    0.0
> {code:sql}
> SELECT floor_day(`__time`) as `granularity`, max(ss_quantity), 
> sum(ss_wholesale_cost)
> FROM store_sales_sold_time_subset_calcite
> WHERE i_brand_id = 10001009
> GROUP BY floor_day(`__time`)
> ORDER BY `granularity`;
> OK
> 1999-11-01 00:00:00   45      37.47
> 1999-11-04 00:00:00   39      61.52
> 1999-11-05 00:00:00   74      145.84
> 1999-11-06 00:00:00   62      14.5
> 1999-11-08 00:00:00   5       34.08
> 1999-11-12 00:00:00   66      67.22
> 1999-11-16 00:00:00   60      96.36999999999999
> 1999-11-17 00:00:00   50      79.11
> 1999-11-23 00:00:00   57      17.689999999999998
> 1999-11-27 00:00:00   86      91.59
> 1999-11-29 00:00:00   93      136.48
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to