[jira] [Commented] (MAPREDUCE-7241) FileInputFormat listStatus oom caused by lots of unwanted block infos

2019-11-05 Thread Zhihua Deng (Jira)


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

Zhihua Deng commented on MAPREDUCE-7241:


 Would anyone have any ideas about this improvement?  [~ste...@apache.org] 
[~jlowe] 

> FileInputFormat listStatus oom caused by lots of unwanted block infos
> -
>
> Key: MAPREDUCE-7241
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7241
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>  Components: job submission
>Affects Versions: 2.6.1
>Reporter: Zhihua Deng
>Priority: Major
> Attachments: MAPREDUCE-7241.trunk.02.patch, 
> MAPREDUCE-7241.trunk.patch, filestatus.png
>
>
> This case sometimes sees in hive when user issues queries over all partitions 
> by mistakes. The file status cached when listing status could accumulate to 
> over 3g.  After digging into the  dumped memory, the LocatedBlock occupies 
> about 50%(sometimes over 60%) memory that retained by LocatedFileStatus, as 
> shows followed,
> !filestatus.png!
> Right now we only extract the block locations info from LocatedFileStatus,  
> the datanode infos(types) or block token are not taken into account. So there 
> is no need to cache LocatedBlock, as do like this:
> BlockLocation[] blockLocations = dedup(stat.getBlockLocations());
>  LocatedFileStatus shrink = new LocatedFileStatus(stat, blockLocations);
> private static BlockLocation[] dup(BlockLocation[] blockLocations) {
>      BlockLocation[] copyLocs = new BlockLocation[blockLocations.length];
>      int i = 0;
>      for (BlockLocation location : blockLocations)
> {         copyLocs[i++] = new BlockLocation(location);     }
>     return copyLocs;
>  }
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Ahmed Hussein (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ahmed Hussein updated MAPREDUCE-7208:
-
Attachment: MAPREDUCE-7208-branch-2.10.002.patch

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Commented] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Hadoop QA (Jira)


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

Hadoop QA commented on MAPREDUCE-7208:
--

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 18m 
42s{color} | {color:blue} Docker mode activated. {color} |
|| || || || {color:brown} Prechecks {color} ||
| {color:green}+1{color} | {color:green} @author {color} | {color:green}  0m  
0s{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:green}+1{color} | {color:green} test4tests {color} | {color:green}  0m 
 0s{color} | {color:green} The patch appears to include 4 new or modified test 
files. {color} |
|| || || || {color:brown} branch-2.10 Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
29s{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  9m 
 3s{color} | {color:green} branch-2.10 passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  1m 
30s{color} | {color:green} branch-2.10 passed with JDK v1.7.0_95 {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  1m 
19s{color} | {color:green} branch-2.10 passed with JDK v1.8.0_222 {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
42s{color} | {color:green} branch-2.10 passed {color} |
| {color:green}+1{color} | {color:green} mvnsite {color} | {color:green}  1m 
54s{color} | {color:green} branch-2.10 passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
21s{color} | {color:green} branch-2.10 passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  1m 
23s{color} | {color:green} branch-2.10 passed with JDK v1.7.0_95 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  1m 
10s{color} | {color:green} branch-2.10 passed with JDK v1.8.0_222 {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
11s{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  1m 
39s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  1m 
40s{color} | {color:green} the patch passed with JDK v1.7.0_95 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  1m 
40s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  1m 
17s{color} | {color:green} the patch passed with JDK v1.8.0_222 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  1m 
17s{color} | {color:green} the patch passed {color} |
| {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange}  
0m 42s{color} | {color:orange} 
hadoop-mapreduce-project/hadoop-mapreduce-client: The patch generated 3 new + 
679 unchanged - 2 fixed = 682 total (was 681) {color} |
| {color:green}+1{color} | {color:green} mvnsite {color} | {color:green}  1m 
39s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green}  0m 
 0s{color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
38s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  1m  
7s{color} | {color:green} the patch passed with JDK v1.7.0_95 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
57s{color} | {color:green} the patch passed with JDK v1.8.0_222 {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:green}+1{color} | {color:green} unit {color} | {color:green}  2m 
58s{color} | {color:green} hadoop-mapreduce-client-core in the patch passed. 
{color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green}  9m  
9s{color} | {color:green} hadoop-mapreduce-client-app in the patch passed. 
{color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red}116m 46s{color} 
| {color:red} hadoop-mapreduce-client-jobclient in the patch failed. {color} |
| {color:red}-1{color} | {color:red} asflicense {color} | {color:red}  0m 
34s{color} | {color:red} The patch generated 1 ASF License warnings. {color} |
| {color:black}{color} | {color:black} {color} | {color:black}182m  3s{color} | 
{color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=19.03.4 Server=19.03.4 Image:yetus/hadoop:1c7ae5

[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Jonathan Turner Eagles (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Turner Eagles updated MAPREDUCE-7208:
--
Fix Version/s: 3.3.0
   Resolution: Fixed
   Status: Resolved  (was: Patch Available)

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Commented] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Hudson (Jira)


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

Hudson commented on MAPREDUCE-7208:
---

SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #17610 (See 
[https://builds.apache.org/job/Hadoop-trunk-Commit/17610/])
MAPREDUCE-7208. Tuning TaskRuntimeEstimator. (Ahmed Hussein via jeagles) 
(jeagles: rev ed302f1fed6d124d682486d24dae958946dba9be)
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java
* (add) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/speculate/forecast/TestSimpleExponentialForecast.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DataStatistics.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/MRJobConfig.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/java/org/apache/hadoop/mapreduce/v2/TestSpeculativeExecutionWithMRApp.java
* (add) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/forecast/SimpleExponentialSmoothing.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/StartEndTimesBase.java
* (add) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/java/org/apache/hadoop/mapreduce/v2/TestSpeculativeExecOnCluster.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/TestRuntimeEstimators.java
* (add) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/SimpleExponentialTaskRuntimeEstimator.java
* (edit) 
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/TaskRuntimeEstimator.java


> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Jonathan Turner Eagles (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Turner Eagles updated MAPREDUCE-7208:
--
Fix Version/s: 3.2.2

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0, 3.2.2
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Jonathan Turner Eagles (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Turner Eagles updated MAPREDUCE-7208:
--
Fix Version/s: 3.1.4

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0, 3.1.4, 3.2.2
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Jonathan Turner Eagles (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Turner Eagles updated MAPREDUCE-7208:
--
Fix Version/s: 2.11.0

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0, 3.1.4, 3.2.2, 2.11.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Updated] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Jonathan Turner Eagles (Jira)


 [ 
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Turner Eagles updated MAPREDUCE-7208:
--
Fix Version/s: 2.10.1

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0, 3.1.4, 3.2.2, 2.10.1, 2.11.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org



[jira] [Commented] (MAPREDUCE-7208) Tuning TaskRuntimeEstimator

2019-11-05 Thread Ahmed Hussein (Jira)


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

Ahmed Hussein commented on MAPREDUCE-7208:
--

Thanks [~jeagles].

Reviewed 2.10 patch errors. They are unrelated time-out unit tests.

> Tuning TaskRuntimeEstimator 
> 
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
>  Issue Type: Improvement
>Reporter: Ahmed Hussein
>Assignee: Ahmed Hussein
>Priority: Minor
> Fix For: 3.3.0, 3.1.4, 3.2.2, 2.10.1, 2.11.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch, 
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch, 
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch, 
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the 
> runtime.  The estimator does not adjust dynamically to the progress rate of 
> the tasks. On the other hand, the existing alternative 
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>  
> There are several dimensions to improve the exponential implementation:
>  # Exponential shooting needs a warmup period. Otherwise, the estimate will 
> be affected by the initial values.
>  # Using a single smoothing factor (Lambda) does not work well for all the 
> tasks. To increase the level of smoothing across the majority of tasks, we 
> need to give a range of flexibility to dynamically adjust the smoothing 
> factor based on the history of the task progress.
>  # Design wise, it is better to separate between the statistical model and 
> the MR interface. We need to have a way to evaluate estimators statistically, 
> without the need to run MR. For example, an estimator can be evaluated as a 
> black box by using a stream of raw data as input and testing the accuracy of 
> the generated stream of estimates.
>  # The exponential estimator speculates frequently and fails to detect 
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt 
> that does not do any progress won't trigger a new speculation.
>  
> The file [^smoothing-exponential.md] describes how Simple Exponential 
> smoothing factor works.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

-
To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org