如何使用Apache Pig正确聚合唯一计数?

时间:2014-02-10 02:52:42

标签: apache-pig

我正在使用这样一个简单的数据集:

Item-Sold      Date
Desk A       2/1/2014
Desk A       2/1/2014
Desk A       2/1/2014
Desk A       2/1/2014
Desk B       2/1/2014
Desk C       2/1/2014
Chair A      2/2/2014
Chair B      2/2/2014
Chair B      2/2/2014

我需要帮助编写一个piglatin查询来查找按日期销售的独特商品数量

所以我的输出是:

Date      Unique-Items-Sold
2/1/2014         3
2/2/2014         2

我无法创建可行的正确语句。寻求一些帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

    --unique_count.pig
    items = LOAD 'items.csv' using PigStorage(',') AS (item,date);
    grpd = GROUP items BY date;
    distinct_cnt = FOREACH grpd {
              it = items.item;
              unique_it = distinct it;
              GENERATE group, COUNT(unique_it);
    };
    DUMP distinct_cnt;

希望这会有所帮助!!