[ 
https://issues.apache.org/jira/browse/HIVE-6664?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jitendra Nath Pandey updated HIVE-6664:
---------------------------------------

    Description: 
Following query can show the difference:
select  var_samp(ss_sales_price), var_pop(ss_sales_price), 
stddev_pop(ss_sales_price), stddev_samp(ss_sales_price) from store_sales.

The reason for the difference is that row mode converts the decimal value to 
double upfront to calculate sum of values, when computing variance. But the 
vector mode performs local aggregate sum as decimal and converts into double 
only at flush.

  was:
Following query can show the difference:
select count(ss_sales_price), sum(ss_sales_price), avg(ss_sales_price), 
var_samp(ss_sales_price), var_pop(ss_sales_price), stddev_pop(ss_sales_price), 
stddev_samp(ss_sales_price) from store_sales

The reason for the difference is that row mode converts the decimal value to 
double upfront to calculate sum of values. But the vector mode performs local 
aggregate sum as decimal and converts into double only at flush.


> Vectorized variance computation differs from row mode computation.
> ------------------------------------------------------------------
>
>                 Key: HIVE-6664
>                 URL: https://issues.apache.org/jira/browse/HIVE-6664
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Jitendra Nath Pandey
>            Assignee: Jitendra Nath Pandey
>         Attachments: HIVE-6664.1.patch
>
>
> Following query can show the difference:
> select  var_samp(ss_sales_price), var_pop(ss_sales_price), 
> stddev_pop(ss_sales_price), stddev_samp(ss_sales_price) from store_sales.
> The reason for the difference is that row mode converts the decimal value to 
> double upfront to calculate sum of values, when computing variance. But the 
> vector mode performs local aggregate sum as decimal and converts into double 
> only at flush.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to