[ https://issues.apache.org/jira/browse/PIG-729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12688447#action_12688447 ]
Thejas M Nair commented on PIG-729: ----------------------------------- Pig users might not know enough to decide on a good default parallelism,specially when running adhoc queries. Instead of defaulting to 1 , if a user does not specify the parallelism , we should use as default a higher number which does not have negative impact on the throughput of the system. Hadoop-dev might be able to guide us on the extent to which hadoop scales linearly with increasing number of reducers. For example, if we are able to linearly scale upto x reducers, we can use a default of min(max_reducers_possible, max_reducers_linear) . > Use of default parallelism > -------------------------- > > Key: PIG-729 > URL: https://issues.apache.org/jira/browse/PIG-729 > Project: Pig > Issue Type: Bug > Components: impl > Affects Versions: 1.0.1 > Environment: Hadoop 0.20 > Reporter: Santhosh Srinivasan > Fix For: 1.0.1 > > > Currently, if the user does not specify the number of reduce slots using the > parallel keyword, Pig lets Hadoop decide on the default number of reducers. > This model worked well with dynamically allocated clusters using HOD and for > static clusters where the default number of reduce slots was explicitly set. > With Hadoop 0.20, a single static cluster will be shared amongst a number of > queues. As a result, a common scenario is to end up with default number of > reducers set to one (1). > When users migrate to Hadoop 0.20, they might see a dramatic change in the > performance of their queries if they had not used the parallel keyword to > specify the number of reducers. In order to mitigate such circumstances, Pig > can support one of the following: > 1. Specify a default parallelism for the entire script. > This option will allow users to use the same parallelism for all operators > that do not have the explicit parallel keyword. This will ensure that the > scripts utilize more reducers than the default of one reducer. On the down > side, due to data transformations, usually operations that are performed > towards the end of the script will need smaller number of reducers compared > to the operators that appear at the beginning of the script. > 2. Display a warning message for each reduce side operator that does have the > use of the explicit parallel keyword. Proceed with the execution. > 3. Display an error message indicating the operator that does not have the > explicit use of the parallel keyword. Stop the execution. > Other suggestions/thoughts/solutions are welcome. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.