Shubham Chopra updated PIG-626:

    Attachment: pigStats.patch

1. The initial goal is to just get the pig query result sizes. I try to get the 
no. of records written by the last job which gives me the required metric. In 
addition to this I am making the stats for all the jobs available. I am not 
adding any specific stat to map/reduce.
2. I am only using the hadoop counters here. I am not registering any 
pig-specific counters. Olga had suggested that I make the counters available in 
the form of a map with the keys starting with PIG_STATS to reference the 
required counter. 
Hadoop has a bunch of counters that it uses to display stats in its map-red 
webUI. These counters give the no. of records and bytes read/written by 
map/reduce of each job. I am making all the hadoop stats, at the granularity of 
a record, available.
3. I have rectified this in the new patch.
4. These counters are incremented within hadoop.

> Statistics (records read by each mapper and reducer)
> ----------------------------------------------------
>                 Key: PIG-626
>                 URL: https://issues.apache.org/jira/browse/PIG-626
>             Project: Pig
>          Issue Type: New Feature
>          Components: impl
>    Affects Versions: types_branch
>            Reporter: Shubham Chopra
>            Priority: Minor
>         Attachments: pigStats.patch, pigStats.patch
> This uses the counters framework that hadoop has. Initially, I am just 
> interested in finding out the number of records read by each mapper/reducer 
> particularly for the last job in any script. A sample code to access the 
> statistics for the last job:
> String reducePlan = 
> stats.getPigStats().get(stats.getLastJobID()).get("PIG_STATS_REDUCE_PLAN");
>         if(reducePlan == null) {
>             System.out.println("Records written : " + 
> stats.getPigStats().get(stats.getLastJobID()).get("PIG_STATS_MAP_OUTPUT_RECORDS"));
>         } else {
>             System.out.println("Records written : " + 
> stats.getPigStats().get(stats.getLastJobID()).get("PIG_STATS_REDUCE_OUTPUT_RECORDS"));
>         }
> The patch contains 7 test cases. These include tests PigStorage and 
> BinStorage along with one for multiple MR jobs case.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to