You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Gabor Kaszab (Jira)" <ji...@apache.org> on 2020/07/29 09:47:00 UTC

[jira] [Created] (IMPALA-10019) Implement ds_kll_pmf() function

Gabor Kaszab created IMPALA-10019:
-------------------------------------

             Summary: Implement ds_kll_pmf() function
                 Key: IMPALA-10019
                 URL: https://issues.apache.org/jira/browse/IMPALA-10019
             Project: IMPALA
          Issue Type: New Feature
            Reporter: Gabor Kaszab


Requirements for ds_kll_pmf() (Probability Mass Function):
 - Receives a serialized KLL sketch in BINARY type (in Impala it can be STRING as long as we don't have BINARY) as first parameter.
 - Receives one or more double values to create ranges from the sketched data.
 - In Hive the return type is an array of doubles. However, Impala can't return complex types from functions at this point so we have to find some alternative approaches to implement this function. Follow whatever solution came up in https://issues.apache.org/jira/browse/IMPALA-9962

An example:
{code:java}
select ds_kll_pmf(sketch_col, 1, 2, 3, 4) from sketches_table;
{code}
This will generate the following ranges: (-inf, 1), [1,2), [2,3), [3,4), [4,+inf)
 In Hive, the result would have an array of 5 doubles for the 5 ranges, where each number gives the probability between [0,1] that an item will fall into the particular range. Or in other words a ratio of items belonging to that range.

Taking input values such as: 1,2,3,4,5
{code:java}
select ds_kll_pmf(f, 1, 3, 4, 5, 10) from kll_sketches;
+----------------------------+
|            _c0             |
+----------------------------+
| [0.0,0.4,0.2,0.2,0.2,0.0]  |
+----------------------------+
{code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)