[
https://issues.apache.org/jira/browse/FLINK-1671?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14363513#comment-14363513
]
ASF GitHub Bot commented on FLINK-1671:
---------------------------------------
GitHub user StephanEwen opened a pull request:
https://github.com/apache/flink/pull/487
[FLINK-1671] Add different execution modes to APIs and optimizer.
This allows users to specify how programs should be executed:
- PIPELINED: Uses pipelining for shuffling, except where the data
exchange is deadlock prone.
- BATCH: Used batch for shuffles, broadcasts, rebalancing.
- BATCH_FORCED: Uses batch everywhere, effectively prohibits chaining
(debug only, IMHO)
- PIPELINED_FORCED: Uses pipelining everywhere, also in deadlock prone
situations.
I fixed and improved a lot of comments on-the-fly while implementing this.
Because of that, the PR is slightly bigger.
NOTE: This is only the API, and optimizer implementation of selecting the
proper data exchange mode. The runtime implementation of blocking data exchange
is a separate pull request.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/StephanEwen/incubator-flink modes
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/487.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #487
----
commit 62a41f82598a75af76956f971bf05a994a073b7b
Author: Stephan Ewen <[email protected]>
Date: 2015-03-10T14:14:09Z
[optimizer] Remove obsolete and unused fields from OptimizerNode
commit 11a7449714771532fd8b101af07ef3e0bd289a21
Author: Stephan Ewen <[email protected]>
Date: 2015-03-10T17:22:20Z
[FLINK-1671] [jobmanager] Rename JobManager's ExecutionMode to
JobManagerMode
This is done to avoid name conflicts with the overloaded type name
ExecutionMode.
commit 6f9ab0b9d3370ca2dd18de371d1fae025e60561e
Author: Stephan Ewen <[email protected]>
Date: 2015-03-10T17:36:52Z
[FLINK-1671] [tests] Rename "ExecutionMode" in MultiProgramTestBase to
"TestExecutionMode"
... to avoid name clashes with the program execution mode.
commit 537b06602b194e708d61203e5a8b43ecaf96024e
Author: Stephan Ewen <[email protected]>
Date: 2015-03-10T19:25:01Z
[FLINK-1671] [core] Add execution mode to execution config
commit 566a2bbc38e6b06a43b4efe99834b9aadec062d6
Author: Stephan Ewen <[email protected]>
Date: 2015-03-11T22:35:11Z
[FLINK-1671] [optimizer] Add data exchange mode to optimizer classes
----
> Add execution modes for programs
> --------------------------------
>
> Key: FLINK-1671
> URL: https://issues.apache.org/jira/browse/FLINK-1671
> Project: Flink
> Issue Type: Bug
> Affects Versions: 0.9
> Reporter: Stephan Ewen
> Assignee: Stephan Ewen
> Fix For: 0.9
>
>
> Currently, there is a single way that programs get executed: Pipelined. With
> the new code for batch shuffles (https://github.com/apache/flink/pull/471),
> we have much more flexibility and I would like to expose that.
> I suggest to add more execution modes that can be chosen on the
> `ExecutionEnvironment`:
> - {{BATCH}} A mode where every shuffle is executed in a batch way, meaning
> preceding operators must be done before successors start. Only for the batch
> programs (d'oh).
> - {{PIPELINED}} This is the mode corresponding to the current execution
> mode. It pipelines where possible and batches, where deadlocks would
> otherwise happen. Initially, I would make this the default (be close to the
> current behavior). Only available for batch programs.
> - {{PIPELINED_WITH_BATCH_FALLBACK}} This would start out with pipelining
> shuffles and fall back to batch shuffles upon failure and recovery, or once
> it sees that not enough slots are available to bring up all operators at once
> (requirement for pipelining).
> - {{STREAMING}} This is the default and only way for streaming programs.
> All communication is pipelined, and the special streaming checkpointing code
> is activated.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)