You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Rohini Palaniswamy (JIRA)" <ji...@apache.org> on 2014/11/26 18:26:12 UTC
[jira] [Created] (PIG-4344) Add a testcase with CustomPartitioner
that tests ordering within a reducer
Rohini Palaniswamy created PIG-4344:
---------------------------------------
Summary: Add a testcase with CustomPartitioner that tests ordering within a reducer
Key: PIG-4344
URL: https://issues.apache.org/jira/browse/PIG-4344
Project: Pig
Issue Type: Bug
Reporter: Rohini Palaniswamy
Some of our users have a CustomPartitioner with join or group by as they know their data and know the keys to partition on. Since mapreduce provides data sorted within a reducer, they rely on that to have the data ordered as well.
For eg:
partition = group mydata by (hour, sortkey1, sortkey2, sortkey3) using MyCustomPartitioner PARALLEL 24;
The custom partitioner sends hours 0-23 to partitions 0-23, which ensures that the data is also sorted without having to do a group by.
With HCatStorer, this pattern will be used more. i.e,
partition = group mydata by (hour) using MyCustomPartitioner PARALLEL 24;
store partition into 'mydb.mytable' using HCatStorer();
instead of
store mydata into 'mydb.mytable' using HCatStorer();
where hour is the partition. The extra groupby above is to avoid having 1 file created per partition instead of 24 files per partition and concatenating them later to save namespace.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)