[ 
https://issues.apache.org/jira/browse/PIG-3059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13540627#comment-13540627
 ] 

Cheolsoo Park commented on PIG-3059:
------------------------------------

Hi Russell, thank you very much for the review.

I think that your suggestions are all good, and I will try to incorporate them 
in a new patch.

Regarding the error rate, I actually found a problem in the current 
implementation. Currently, when we encounter a bad input split, I skip all the 
remaining records in that split. This means, we don't really count the total 
number of records. So if we calculate the error rate by {{(errors thrown) / 
(records processed) * 100}}, the result won't be accurate (unless each split 
includes only one record).

So I am thinking that I count the number of splits instead of records, which 
can be counted correctly. Please let me know know if you have a better 
suggestion.

Thanks!
                
> Global configurable minimum 'bad record' thresholds
> ---------------------------------------------------
>
>                 Key: PIG-3059
>                 URL: https://issues.apache.org/jira/browse/PIG-3059
>             Project: Pig
>          Issue Type: New Feature
>          Components: impl
>    Affects Versions: 0.11
>            Reporter: Russell Jurney
>            Assignee: Cheolsoo Park
>             Fix For: 0.12
>
>         Attachments: PIG-3059.patch, test_avro_files.tar.gz
>
>
> See PIG-2614. 
> Pig dies when one record in a LOAD of a billion records fails to parse. This 
> is almost certainly not the desired behavior. elephant-bird and some other 
> storage UDFs have minimum thresholds in terms of percent and count that must 
> be exceeded before a job will fail outright.
> We need these limits to be configurable for Pig, globally. I've come to 
> realize what a major problem Pig's crashing on bad records is for new Pig 
> users. I believe this feature can greatly improve Pig.
> An example of a config would look like:
> pig.storage.bad.record.threshold=0.01
> pig.storage.bad.record.min=100
> A thorough discussion of this issue is available here: 
> http://www.quora.com/Big-Data/In-Big-Data-ETL-how-many-records-are-an-acceptable-loss

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to