This is an automated email from the ASF dual-hosted git repository.

mergebot-role pushed a commit to branch mergebot
in repository https://gitbox.apache.org/repos/asf/beam-site.git

commit d747c76fdccd138a9c6e7af3c2374c1177d4bd54
Author: melissa <meliss...@google.com>
AuthorDate: Fri Sep 29 10:26:40 2017 -0700

    Manually add missed files from content dir
---
 content/documentation/execution-model/index.html   | 402 +++++++++++++++++++++
 content/documentation/runners/jstorm/index.html    | 299 +++++++++++++++
 content/documentation/runners/mapreduce/index.html | 275 ++++++++++++++
 content/images/execution_model_bundling.svg        | 357 ++++++++++++++++++
 .../execution_model_bundling_coupled_failure.svg   |  59 +++
 content/images/execution_model_bundling_gantt.svg  |  50 +++
 .../images/execution_model_bundling_gantt_max.svg  |  67 ++++
 content/images/execution_model_bundling_multi.svg  | 336 +++++++++++++++++
 .../execution_model_bundling_multi_gantt.svg       |  52 +++
 content/images/execution_model_failure_retry.svg   |  56 +++
 content/images/logos/runners/jstorm.png            | Bin 0 -> 6375 bytes
 src/documentation/runners/mapreduce.md             |   1 +
 12 files changed, 1954 insertions(+)

diff --git a/content/documentation/execution-model/index.html 
b/content/documentation/execution-model/index.html
new file mode 100644
index 0000000..8afa172
--- /dev/null
+++ b/content/documentation/execution-model/index.html
@@ -0,0 +1,402 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+  <meta charset="utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <title>Beam Execution Model</title>
+  <meta name="description" content="Apache Beam is an open source, unified 
model and set of language-specific SDKs for defining and executing data 
processing workflows, and also data ingestion and integration flows, supporting 
Enterprise Integration Patterns (EIPs) and Domain Specific Languages (DSLs). 
Dataflow pipelines simplify the mechanics of large-scale batch and streaming 
data processing and can run on a number of runtimes like Apache Flink, Apache 
Spark, and Google Cloud Dataflow  [...]
+">
+  <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400"; 
rel="stylesheet">
+  <link rel="stylesheet" href="/css/site.css">
+  <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js";></script>
+  <script src="/js/bootstrap.min.js"></script>
+  <script src="/js/language-switch.js"></script>
+  <link rel="canonical" 
href="https://beam.apache.org/documentation/execution-model/"; 
data-proofer-ignore>
+  <link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico">
+  <link rel="alternate" type="application/rss+xml" title="Apache Beam" 
href="https://beam.apache.org/feed.xml";>
+  <script>
+    
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+    
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+    ga('create', 'UA-73650088-1', 'auto');
+    ga('send', 'pageview');
+  </script>
+</head>
+
+  <body class="body ">
+    <nav class="header navbar navbar-fixed-top">
+    <div class="navbar-header">
+      <a href="/" class="navbar-brand" >
+        <img alt="Brand" style="height: 25px" 
src="/images/beam_logo_navbar.png">
+      </a>
+        <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#navbar" aria-expanded="false" 
aria-controls="navbar">
+          <span class="sr-only">Toggle navigation</span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+        </button>
+    </div>
+    <div id="navbar" class="navbar-collapse collapse">
+      <ul class="nav navbar-nav">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Get Started <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/get-started/beam-overview/">Beam Overview</a></li>
+            <li><a href="/get-started/quickstart-java/">Quickstart - 
Java</a></li>
+            <li><a href="/get-started/quickstart-py/">Quickstart - 
Python</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Example Walkthroughs</li>
+            <li><a href="/get-started/wordcount-example/">WordCount</a></li>
+            <li><a href="/get-started/mobile-gaming-example/">Mobile 
Gaming</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Resources</li>
+            <li><a href="/get-started/downloads">Downloads</a></li>
+            <li><a href="/get-started/support">Support</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Documentation <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/documentation">Using the Documentation</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Beam Concepts</li>
+            <li><a href="/documentation/programming-guide/">Programming 
Guide</a></li>
+            <li><a href="/documentation/execution-model/">Execution 
Model</a></li>
+            <li><a href="/documentation/resources/">Additional 
Resources</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Pipeline Fundamentals</li>
+            <li><a 
href="/documentation/pipelines/design-your-pipeline/">Design Your 
Pipeline</a></li>
+            <li><a 
href="/documentation/pipelines/create-your-pipeline/">Create Your 
Pipeline</a></li>
+            <li><a href="/documentation/pipelines/test-your-pipeline/">Test 
Your Pipeline</a></li>
+            <li><a href="/documentation/io/io-toc/">Pipeline I/O</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">SDKs</li>
+            <li><a href="/documentation/sdks/java/">Java SDK</a></li>
+            <li><a href="/documentation/sdks/javadoc/2.1.0/" 
target="_blank">Java SDK API Reference <img src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li><a href="/documentation/sdks/python/">Python SDK</a></li>
+            <li><a href="/documentation/sdks/pydoc/2.1.0/" 
target="_blank">Python SDK API Reference <img 
src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Runners</li>
+            <li><a href="/documentation/runners/capability-matrix/">Capability 
Matrix</a></li>
+            <li><a href="/documentation/runners/direct/">Direct Runner</a></li>
+            <li><a href="/documentation/runners/apex/">Apache Apex 
Runner</a></li>
+            <li><a href="/documentation/runners/flink/">Apache Flink 
Runner</a></li>
+            <li><a href="/documentation/runners/gearpump/">Apache Gearpump 
Runner</a></li>
+            <li><a href="/documentation/runners/spark/">Apache Spark 
Runner</a></li>
+            <li><a href="/documentation/runners/dataflow/">Cloud Dataflow 
Runner</a></li>
+
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">DSLs</li>
+            <li><a href="/documentation/dsls/sql/">SQL</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Contribute <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/contribute">Get Started Contributing</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Guides</li>
+            <li><a href="/contribute/contribution-guide/">Contribution 
Guide</a></li>
+            <li><a href="/contribute/testing/">Testing Guide</a></li>
+            <li><a href="/contribute/release-guide/">Release Guide</a></li>
+            <li><a href="/contribute/ptransform-style-guide/">PTransform Style 
Guide</a></li>
+            <li><a href="/contribute/runner-guide/">Runner Authoring 
Guide</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Technical References</li>
+            <li><a href="/contribute/design-principles/">Design 
Principles</a></li>
+            <li><a href="/contribute/work-in-progress/">Ongoing 
Projects</a></li>
+            <li><a href="/contribute/source-repository/">Source 
Repository</a></li>
+            <li><a href="/contribute/docker-images/">Docker Images</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Promotion</li>
+            <li><a href="/contribute/presentation-materials/">Presentation 
Materials</a></li>
+            <li><a href="/contribute/logos/">Logos and Design</a></li>
+            <li role="separator" class="divider"></li>
+            <li><a href="/contribute/maturity-model/">Maturity Model</a></li>
+            <li><a href="/contribute/team/">Team</a></li>
+          </ul>
+        </li>
+
+        <li><a href="/blog">Blog</a></li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false"><img 
src="https://www.apache.org/foundation/press/kit/feather_small.png"; alt="Apache 
Logo" style="height:20px;"><span class="caret"></span></a>
+          <ul class="dropdown-menu dropdown-menu-right">
+            <li><a href="http://www.apache.org/";>ASF Homepage</a></li>
+            <li><a href="http://www.apache.org/licenses/";>License</a></li>
+            <li><a href="http://www.apache.org/security/";>Security</a></li>
+            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
+            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+            <li><a 
href="https://www.apache.org/foundation/policies/conduct";>Code of 
Conduct</a></li>
+          </ul>
+        </li>
+      </ul>
+    </div><!--/.nav-collapse -->
+</nav>
+
+    <div class="body__contained">
+      <h1 id="apache-beam-execution-model">Apache Beam Execution Model</h1>
+
+<p>The Beam model allows runners to execute your pipeline in different ways. 
You
+may observe various effects as a result of the runner’s choices. This page
+describes these effects so you can better understand how Beam pipelines 
execute.</p>
+
+<ul id="markdown-toc">
+  <li><a href="#processing-of-elements" 
id="markdown-toc-processing-of-elements">Processing of elements</a>    <ul>
+      <li><a href="#serialization-and-communication" 
id="markdown-toc-serialization-and-communication">Serialization and 
communication</a></li>
+      <li><a href="#bundling-and-persistence" 
id="markdown-toc-bundling-and-persistence">Bundling and persistence</a></li>
+    </ul>
+  </li>
+  <li><a href="#parallelism" id="markdown-toc-parallelism">Failures and 
parallelism within and between transforms</a>    <ul>
+      <li><a href="#data-parallelism" 
id="markdown-toc-data-parallelism">Data-parallelism within one 
transform</a></li>
+      <li><a href="#dependent-parallellism" 
id="markdown-toc-dependent-parallellism">Dependent-parallelism between 
transforms</a></li>
+      <li><a href="#failures-within-one-transform" 
id="markdown-toc-failures-within-one-transform">Failures within one 
transform</a></li>
+      <li><a href="#coupled-failure" id="markdown-toc-coupled-failure">Coupled 
failure: Failures between transforms</a></li>
+    </ul>
+  </li>
+</ul>
+
+<h2 id="processing-of-elements">Processing of elements</h2>
+
+<p>The serialization and communication of elements between machines is one of 
the
+most expensive operations in a distributed execution of your pipeline. Avoiding
+this serialization may require re-processing elements after failures or may
+limit the distribution of output to other machines.</p>
+
+<h3 id="serialization-and-communication">Serialization and communication</h3>
+
+<p>The runner might serialize elements between machines for communication 
purposes
+and for other reasons such as persistence.</p>
+
+<p>A runner may decide to transfer elements between transforms in a variety of
+ways, such as:</p>
+
+<ol>
+  <li>Routing elements to a worker for processing as part of a grouping 
operation.
+This may involve serializing elements and grouping or sorting them by their
+key.</li>
+  <li>Redistributing elements between workers to adjust parallelism. This may
+involve serializing elements and communicating them to other workers.</li>
+  <li>Using the elements in a side input to a <code 
class="highlighter-rouge">ParDo</code>. This may require
+serializing the elements and broadcasting them to all the workers executing
+the <code class="highlighter-rouge">ParDo</code>.</li>
+  <li>Passing elements between transforms that are running on the same worker.
+This may allow the runner to avoid serializing elements; instead, the runner
+can just pass the elements in memory.</li>
+</ol>
+
+<p>Some situations where the runner may serialize and persist elements are:</p>
+
+<ol>
+  <li>When used as part of a stateful <code 
class="highlighter-rouge">DoFn</code>, the runner may persist values to some
+state mechanism.</li>
+  <li>When committing the results of processing, the runner may persist the 
outputs
+as a checkpoint.</li>
+</ol>
+
+<h3 id="bundling-and-persistence">Bundling and persistence</h3>
+
+<p>Beam pipelines often focus on “<a 
href="https://en.wikipedia.org/wiki/embarrassingly_parallel";>embarassingly 
parallel</a>”
+problems. Because of this, the APIs emphasize processing elements in parallel,
+which makes it difficult to express actions like “assign a sequence number to
+each element in a PCollection”. This is intentional as such algorithms are much
+more likely to suffer from scalability problems.</p>
+
+<p>Processing all elements in parallel also has some drawbacks. Specifically, 
it
+makes it impossible to batch any operations, such as writing elements to a sink
+or checkpointing progress during processing.</p>
+
+<p>Instead of processing all elements simultaneously, the elements in a
+<code class="highlighter-rouge">PCollection</code> are processed in 
<em>bundles</em>. The division of the collection into
+bundles is arbitrary and selected by the runner. This allows the runner to
+choose an appropriate middle-ground between persisting results after every
+element, and having to retry everything if there is a failure. For example, a
+streaming runner may prefer to process and commit small bundles, and a batch
+runner may prefer to process larger bundles.</p>
+
+<h2 id="parallelism">Failures and parallelism within and between 
transforms</h2>
+
+<p>In this section, we discuss how elements in the input collection are 
processed
+in parallel, and how transforms are retried when failures occur.</p>
+
+<h3 id="data-parallelism">Data-parallelism within one transform</h3>
+
+<p>When executing a single <code class="highlighter-rouge">ParDo</code>, a 
runner might divide an example input
+collection of nine elements into two bundles as shown in figure 1.</p>
+
+<p><img src="/images/execution_model_bundling.svg" alt="bundling" /></p>
+
+<p><strong>Figure 1:</strong> A runner divides an input collection with nine 
elements
+into two bundles.</p>
+
+<p>When the <code class="highlighter-rouge">ParDo</code> executes, workers may 
process the two bundles in parallel as
+shown in figure 2.</p>
+
+<p><img src="/images/execution_model_bundling_gantt.svg" alt="bundling_gantt" 
/></p>
+
+<p><strong>Figure 2:</strong> Two workers process the two bundles in parallel. 
The elements in
+each bundle are processed in sequence.</p>
+
+<p>Since elements cannot be split, the maximum parallelism for a transform 
depends
+on the number of elements in the collection. In our example, the input
+collection has nine elements, so the maximum parallelism is nine.</p>
+
+<p><img src="/images/execution_model_bundling_gantt_max.svg" 
alt="bundling_gantt_max" /></p>
+
+<p><strong>Figure 3:</strong> The maximum parallelism is nine, as there are 
nine elements in the
+input collection.</p>
+
+<p>Note: Splittable ParDo allows splitting the processing of a single input 
across
+multiple bundles. This feature is a work in progress.</p>
+
+<h3 id="dependent-parallellism">Dependent-parallelism between transforms</h3>
+
+<p><code class="highlighter-rouge">ParDo</code> transforms that are in 
sequence may be <em>dependently parallel</em> if the
+runner chooses to execute the consuming transform on the producing transform’s
+output elements without altering the bundling. In figure 4, <code 
class="highlighter-rouge">ParDo1</code> and
+<code class="highlighter-rouge">ParDo2</code> are <em>dependently 
parallel</em> if the output of <code class="highlighter-rouge">ParDo1</code> 
for a given
+element must be processed on the same worker.</p>
+
+<p><img src="/images/execution_model_bundling_multi.svg" alt="bundling_multi" 
/></p>
+
+<p><strong>Figure 4:</strong> Two transforms in sequence and their 
corresponding input collections.</p>
+
+<p>Figure 5 shows how these dependently parallel transforms might execute. The
+first worker executes <code class="highlighter-rouge">ParDo1</code> on the 
elements in bundle A (which results in
+bundle C), and then executes <code class="highlighter-rouge">ParDo2</code> on 
the elements in bundle C. Similarly,
+the second worker executes <code class="highlighter-rouge">ParDo1</code> on 
the elements in bundle B (which results
+in bundle D), and then executes <code class="highlighter-rouge">ParDo2</code> 
on the elements in bundle D.</p>
+
+<p><img src="/images/execution_model_bundling_multi_gantt.svg" 
alt="bundling_multi_gantt.svg" /></p>
+
+<p><strong>Figure 5:</strong> Two workers execute dependently parallel ParDo 
transforms.</p>
+
+<p>Executing transforms this way allows a runner to avoid redistributing 
elements
+between workers, which saves on communication costs. However, the maximum 
parallelism
+now depends on the maximum parallelism of the first of the dependently parallel
+steps.</p>
+
+<h3 id="failures-within-one-transform">Failures within one transform</h3>
+
+<p>If processing of an element within a bundle fails, the entire bundle fails. 
The
+elements in the bundle must be retried (otherwise the entire pipeline fails),
+although they do not need to be retried with the same bundling.</p>
+
+<p>For this example, we will use the <code 
class="highlighter-rouge">ParDo</code> from figure 1 that has an input
+collection with nine elements and is divided into two bundles.</p>
+
+<p>In figure 6, the first worker successfully processes all five elements in 
bundle
+A. The second worker processes the four elements in bundle B: the first two
+elements were successfully processed, the third element’s processing failed, 
and
+there is one element still awaiting processing.</p>
+
+<p>We see that the runner retries all elements in bundle B and the processing
+completes successfully the second time. Note that the retry does not 
necessarily
+happen on the same worker as the original processing attempt, as shown in the
+diagram.</p>
+
+<p><img src="/images/execution_model_failure_retry.svg" alt="failure_retry" 
/></p>
+
+<p><strong>Figure 6:</strong> The processing of an element within bundle B 
fails, and another worker
+retries the entire bundle.</p>
+
+<p>Because we encountered a failure while processing an element in the input
+bundle, we had to reprocess <em>all</em> of the elements in the input bundle. 
This means
+the runner must throw away the entire output bundle since all of the results it
+contains will be recomputed.</p>
+
+<p>Note that if the failed transform is a <code 
class="highlighter-rouge">ParDo</code>, then the <code 
class="highlighter-rouge">DoFn</code> instance is torn
+down and abandoned.</p>
+
+<h3 id="coupled-failure">Coupled failure: Failures between transforms</h3>
+
+<p>If a failure to process an element in <code 
class="highlighter-rouge">ParDo2</code> causes <code 
class="highlighter-rouge">ParDo1</code> to re-execute,
+these two steps are said to be <em>co-failing</em>.</p>
+
+<p>For this example, we will use the two <code 
class="highlighter-rouge">ParDo</code>s from figure 4.</p>
+
+<p>In figure 7, worker two successfully executes <code 
class="highlighter-rouge">ParDo1</code> on all elements in bundle
+B. However, the worker fails to process an element in bundle D, so <code 
class="highlighter-rouge">ParDo2</code>
+fails (shown as the red X). As a result, the runner must discard and recompute
+the output of <code class="highlighter-rouge">ParDo2</code>. Because the 
runner was executing <code class="highlighter-rouge">ParDo1</code> and <code 
class="highlighter-rouge">ParDo2</code>
+together, the output bundle from <code class="highlighter-rouge">ParDo1</code> 
must also be thrown away, and all
+elements in the input bundle must be retried. These two <code 
class="highlighter-rouge">ParDo</code>s are co-failing.</p>
+
+<p><img src="/images/execution_model_bundling_coupled_failure.svg" 
alt="bundling_coupled failure" /></p>
+
+<p><strong>Figure 7:</strong> Processing of an element within bundle D fails, 
so all elements in
+the input bundle are retried.</p>
+
+<p>Note that the retry does not necessarily have the same processing time as 
the
+original attempt, as shown in the diagram.</p>
+
+<p>All <code class="highlighter-rouge">DoFns</code> that experience coupled 
failures are terminated and must be torn
+down since they aren’t following the normal <code 
class="highlighter-rouge">DoFn</code> lifecycle .</p>
+
+<p>Executing transforms this way allows a runner to avoid persisting elements
+between transforms, saving on persistence costs.</p>
+
+
+    </div>
+    <footer class="footer">
+  <div class="footer__contained">
+    <div class="footer__cols">
+      <div class="footer__cols__col">
+        <div class="footer__cols__col__logo">
+          <img src="/images/beam_logo_circle.svg" class="footer__logo" 
alt="Beam logo">
+        </div>
+        <div class="footer__cols__col__logo">
+          <img src="/images/apache_logo_circle.svg" class="footer__logo" 
alt="Apache logo">
+        </div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Start</div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/beam-overview/">Overview</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-java/">Quickstart (Java)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-py/">Quickstart (Python)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/downloads/">Downloads</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Docs</div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/programming-guide/">Concepts</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/pipelines/design-your-pipeline/">Pipelines</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/runners/capability-matrix/">Runners</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Community</div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/">Contribute</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/team/">Team</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/presentation-materials/">Media</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Resources</div>
+        <div class="footer__cols__col__link"><a href="/blog/">Blog</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/support/">Support</a></div>
+        <div class="footer__cols__col__link"><a 
href="https://github.com/apache/beam";>GitHub</a></div>
+      </div>
+    </div>
+  </div>
+  <div class="footer__bottom">
+    &copy;
+    <a href="http://www.apache.org";>The Apache Software Foundation</a>
+    | <a href="/privacy_policy">Privacy Policy</a>
+    | <a href="/feed.xml">RSS Feed</a>
+    <br><br>
+    Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are
+    either registered trademarks or trademarks of The Apache Software
+    Foundation. All other products or name brands are trademarks of their
+    respective holders, including The Apache Software Foundation.
+  </div>
+</footer>
+
+  </body>
+</html>
diff --git a/content/documentation/runners/jstorm/index.html 
b/content/documentation/runners/jstorm/index.html
new file mode 100644
index 0000000..e511c8c
--- /dev/null
+++ b/content/documentation/runners/jstorm/index.html
@@ -0,0 +1,299 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+  <meta charset="utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <title>JStorm Runner</title>
+  <meta name="description" content="Apache Beam is an open source, unified 
model and set of language-specific SDKs for defining and executing data 
processing workflows, and also data ingestion and integration flows, supporting 
Enterprise Integration Patterns (EIPs) and Domain Specific Languages (DSLs). 
Dataflow pipelines simplify the mechanics of large-scale batch and streaming 
data processing and can run on a number of runtimes like Apache Flink, Apache 
Spark, and Google Cloud Dataflow  [...]
+">
+  <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400"; 
rel="stylesheet">
+  <link rel="stylesheet" href="/css/site.css">
+  <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js";></script>
+  <script src="/js/bootstrap.min.js"></script>
+  <script src="/js/language-switch.js"></script>
+  <link rel="canonical" 
href="https://beam.apache.org/documentation/runners/jstorm/"; 
data-proofer-ignore>
+  <link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico">
+  <link rel="alternate" type="application/rss+xml" title="Apache Beam" 
href="https://beam.apache.org/feed.xml";>
+  <script>
+    
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+    
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+    ga('create', 'UA-73650088-1', 'auto');
+    ga('send', 'pageview');
+  </script>
+</head>
+
+  <body class="body ">
+    <nav class="header navbar navbar-fixed-top">
+    <div class="navbar-header">
+      <a href="/" class="navbar-brand" >
+        <img alt="Brand" style="height: 25px" 
src="/images/beam_logo_navbar.png">
+      </a>
+        <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#navbar" aria-expanded="false" 
aria-controls="navbar">
+          <span class="sr-only">Toggle navigation</span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+        </button>
+    </div>
+    <div id="navbar" class="navbar-collapse collapse">
+      <ul class="nav navbar-nav">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Get Started <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/get-started/beam-overview/">Beam Overview</a></li>
+            <li><a href="/get-started/quickstart-java/">Quickstart - 
Java</a></li>
+            <li><a href="/get-started/quickstart-py/">Quickstart - 
Python</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Example Walkthroughs</li>
+            <li><a href="/get-started/wordcount-example/">WordCount</a></li>
+            <li><a href="/get-started/mobile-gaming-example/">Mobile 
Gaming</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Resources</li>
+            <li><a href="/get-started/downloads">Downloads</a></li>
+            <li><a href="/get-started/support">Support</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Documentation <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/documentation">Using the Documentation</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Beam Concepts</li>
+            <li><a href="/documentation/programming-guide/">Programming 
Guide</a></li>
+            <li><a href="/documentation/execution-model/">Execution 
Model</a></li>
+            <li><a href="/documentation/resources/">Additional 
Resources</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Pipeline Fundamentals</li>
+            <li><a 
href="/documentation/pipelines/design-your-pipeline/">Design Your 
Pipeline</a></li>
+            <li><a 
href="/documentation/pipelines/create-your-pipeline/">Create Your 
Pipeline</a></li>
+            <li><a href="/documentation/pipelines/test-your-pipeline/">Test 
Your Pipeline</a></li>
+            <li><a href="/documentation/io/io-toc/">Pipeline I/O</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">SDKs</li>
+            <li><a href="/documentation/sdks/java/">Java SDK</a></li>
+            <li><a href="/documentation/sdks/javadoc/2.1.0/" 
target="_blank">Java SDK API Reference <img src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li><a href="/documentation/sdks/python/">Python SDK</a></li>
+            <li><a href="/documentation/sdks/pydoc/2.1.0/" 
target="_blank">Python SDK API Reference <img 
src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Runners</li>
+            <li><a href="/documentation/runners/capability-matrix/">Capability 
Matrix</a></li>
+            <li><a href="/documentation/runners/direct/">Direct Runner</a></li>
+            <li><a href="/documentation/runners/apex/">Apache Apex 
Runner</a></li>
+            <li><a href="/documentation/runners/flink/">Apache Flink 
Runner</a></li>
+            <li><a href="/documentation/runners/gearpump/">Apache Gearpump 
Runner</a></li>
+            <li><a href="/documentation/runners/spark/">Apache Spark 
Runner</a></li>
+            <li><a href="/documentation/runners/dataflow/">Cloud Dataflow 
Runner</a></li>
+
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">DSLs</li>
+            <li><a href="/documentation/dsls/sql/">SQL</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Contribute <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/contribute">Get Started Contributing</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Guides</li>
+            <li><a href="/contribute/contribution-guide/">Contribution 
Guide</a></li>
+            <li><a href="/contribute/testing/">Testing Guide</a></li>
+            <li><a href="/contribute/release-guide/">Release Guide</a></li>
+            <li><a href="/contribute/ptransform-style-guide/">PTransform Style 
Guide</a></li>
+            <li><a href="/contribute/runner-guide/">Runner Authoring 
Guide</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Technical References</li>
+            <li><a href="/contribute/design-principles/">Design 
Principles</a></li>
+            <li><a href="/contribute/work-in-progress/">Ongoing 
Projects</a></li>
+            <li><a href="/contribute/source-repository/">Source 
Repository</a></li>
+            <li><a href="/contribute/docker-images/">Docker Images</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Promotion</li>
+            <li><a href="/contribute/presentation-materials/">Presentation 
Materials</a></li>
+            <li><a href="/contribute/logos/">Logos and Design</a></li>
+            <li role="separator" class="divider"></li>
+            <li><a href="/contribute/maturity-model/">Maturity Model</a></li>
+            <li><a href="/contribute/team/">Team</a></li>
+          </ul>
+        </li>
+
+        <li><a href="/blog">Blog</a></li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false"><img 
src="https://www.apache.org/foundation/press/kit/feather_small.png"; alt="Apache 
Logo" style="height:20px;"><span class="caret"></span></a>
+          <ul class="dropdown-menu dropdown-menu-right">
+            <li><a href="http://www.apache.org/";>ASF Homepage</a></li>
+            <li><a href="http://www.apache.org/licenses/";>License</a></li>
+            <li><a href="http://www.apache.org/security/";>Security</a></li>
+            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
+            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+            <li><a 
href="https://www.apache.org/foundation/policies/conduct";>Code of 
Conduct</a></li>
+          </ul>
+        </li>
+      </ul>
+    </div><!--/.nav-collapse -->
+</nav>
+
+    <div class="body__contained">
+      <h1 id="using-the-jstorm-runner">Using the JStorm Runner</h1>
+
+<p>The JStorm Runner can be used to execute Beam pipelines using <a 
href="http://jstorm.io/";>JStorm</a>, while providing:</p>
+
+<ul>
+  <li>High throughput and low latency.</li>
+  <li>At-least-once and exactly-once fault tolerance.</li>
+</ul>
+
+<p>Like a native JStorm topology, users can execute Beam topology with local 
mode, standalone cluster or jstorm-on-yarn cluster.</p>
+
+<p>The <a href="/documentation/runners/capability-matrix/">Beam Capability 
Matrix</a> documents the currently supported capabilities of the JStorm 
Runner.</p>
+
+<h2 id="jstorm-runner-prerequisites-and-setup">JStorm Runner prerequisites and 
setup</h2>
+
+<p>The JStorm runner currently supports JStorm version 2.5.0-SNAPSHOT.</p>
+
+<p>You can add a dependency on the latest version of the JStorm runner by 
adding the following to your pom.xml:</p>
+<div class="language-java highlighter-rouge"><pre 
class="highlight"><code><span class="o">&lt;</span><span 
class="n">dependency</span><span class="o">&gt;</span>
+  <span class="o">&lt;</span><span class="n">groupId</span><span 
class="o">&gt;</span><span class="n">org</span><span class="o">.</span><span 
class="na">apache</span><span class="o">.</span><span 
class="na">beam</span><span class="o">&lt;/</span><span 
class="n">groupId</span><span class="o">&gt;</span>
+  <span class="o">&lt;</span><span class="n">artifactId</span><span 
class="o">&gt;</span><span class="n">beam</span><span class="o">-</span><span 
class="n">runners</span><span class="o">-</span><span 
class="n">jstorm</span><span class="o">&lt;/</span><span 
class="n">artifactId</span><span class="o">&gt;</span>
+  <span class="o">&lt;</span><span class="n">version</span><span 
class="o">&gt;</span><span class="mf">2.1</span><span class="o">.</span><span 
class="mi">0</span><span class="o">&lt;/</span><span 
class="n">version</span><span class="o">&gt;</span>
+<span class="o">&lt;/</span><span class="n">dependency</span><span 
class="o">&gt;</span>
+</code></pre>
+</div>
+
+<h3 id="deploying-jstorm-with-your-application">Deploying JStorm with your 
application</h3>
+
+<p>To run against a Standalone cluster, you can package your program with all 
Beam dependencies into a fat jar, and then submit the topology with the 
following command.</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>jstorm jar 
WordCount.jar org.apache.beam.examples.WordCount 
--runner=org.apache.beam.runners.jstorm.JStormRunner
+</code></pre>
+</div>
+
+<p>If you don’t want to package a fat jar, you can upload the Beam 
dependencies onto all cluster nodes(<code 
class="highlighter-rouge">$JSTORM_HOME/lib/ext/beam</code>) first.
+When you submit a topology with argument <code 
class="highlighter-rouge">"--external-libs beam"</code>, JStorm will load the 
Beam dependencies automatically.</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>jstorm jar 
WordCount.jar org.apache.beam.examples.WordCount --external-libs beam  
--runner=org.apache.beam.runners.jstorm.JStormRunner
+</code></pre>
+</div>
+
+<p>To learn about deploying a JStorm cluster, please refer to <a 
href="http://jstorm.io/QuickStart/Deploy/index.html";>JStorm cluster 
deploy</a></p>
+
+<h2 id="pipeline-options-for-the-jstorm-runner">Pipeline options for the 
JStorm Runner</h2>
+
+<p>When executing your pipeline with the JStorm Runner, you should consider 
the following pipeline options.</p>
+
+<table class="table table-bordered">
+<tr>
+  <th>Field</th>
+  <th>Description</th>
+  <th>Default Value</th>
+</tr>
+<tr>
+  <td><code>runner</code></td>
+  <td>The pipeline runner to use. This option allows you to determine the 
pipeline runner at runtime.</td>
+  <td>Set to <code>JStormRunner</code> to run using JStorm.</td>
+</tr>
+<tr>
+  <td><code>topologyConfig</code></td>
+  <td>System topology config of JStorm</td>
+  <td>DefaultMapValueFactory.class</td>
+</tr>
+<tr>
+  <td><code>workerNumber</code></td>
+  <td>Worker number of topology</td>
+  <td>1</td>
+</tr>
+<tr>
+  <td><code>parallelism</code></td>
+  <td>Global parallelism number of a component</td>
+  <td>1</td>
+</tr>
+<tr>
+  <td><code>parallelismMap</code></td>
+  <td>Parallelism number of a specified composite PTransform</td>
+  <td>DefaultMapValueFactory.class</td>
+</tr>
+<tr>
+  <td><code>exactlyOnceTopology</code></td>
+  <td>Indicate if it is an exactly once topology</td>
+  <td>false</td>
+</tr>
+<tr>
+  <td><code>localMode</code></td>
+  <td>Indicate if the topology is running on local machine or distributed 
cluster</td>
+  <td>false</td>
+</tr>
+<tr>
+  <td><code>localModeExecuteTimeSec</code></td>
+  <td>Executing time(sec) of topology on local mode.</td>
+  <td>60</td>
+</tr>
+</table>
+
+<h2 id="additional-notes">Additional notes</h2>
+
+<h3 id="monitoring-your-job">Monitoring your job</h3>
+<p>You can monitor your job with the JStorm UI, which displays all JStorm 
system metrics and Beam metrics.
+For testing on local mode, you can retreive the Beam metrics with the metrics 
method of PipelineResult.</p>
+
+    </div>
+    <footer class="footer">
+  <div class="footer__contained">
+    <div class="footer__cols">
+      <div class="footer__cols__col">
+        <div class="footer__cols__col__logo">
+          <img src="/images/beam_logo_circle.svg" class="footer__logo" 
alt="Beam logo">
+        </div>
+        <div class="footer__cols__col__logo">
+          <img src="/images/apache_logo_circle.svg" class="footer__logo" 
alt="Apache logo">
+        </div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Start</div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/beam-overview/">Overview</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-java/">Quickstart (Java)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-py/">Quickstart (Python)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/downloads/">Downloads</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Docs</div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/programming-guide/">Concepts</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/pipelines/design-your-pipeline/">Pipelines</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/runners/capability-matrix/">Runners</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Community</div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/">Contribute</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/team/">Team</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/presentation-materials/">Media</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Resources</div>
+        <div class="footer__cols__col__link"><a href="/blog/">Blog</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/support/">Support</a></div>
+        <div class="footer__cols__col__link"><a 
href="https://github.com/apache/beam";>GitHub</a></div>
+      </div>
+    </div>
+  </div>
+  <div class="footer__bottom">
+    &copy;
+    <a href="http://www.apache.org";>The Apache Software Foundation</a>
+    | <a href="/privacy_policy">Privacy Policy</a>
+    | <a href="/feed.xml">RSS Feed</a>
+    <br><br>
+    Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are
+    either registered trademarks or trademarks of The Apache Software
+    Foundation. All other products or name brands are trademarks of their
+    respective holders, including The Apache Software Foundation.
+  </div>
+</footer>
+
+  </body>
+</html>
diff --git a/content/documentation/runners/mapreduce/index.html 
b/content/documentation/runners/mapreduce/index.html
new file mode 100644
index 0000000..17c422e
--- /dev/null
+++ b/content/documentation/runners/mapreduce/index.html
@@ -0,0 +1,275 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+  <meta charset="utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <title>Apache Hadoop MapReduce Runner</title>
+  <meta name="description" content="Apache Beam is an open source, unified 
model and set of language-specific SDKs for defining and executing data 
processing workflows, and also data ingestion and integration flows, supporting 
Enterprise Integration Patterns (EIPs) and Domain Specific Languages (DSLs). 
Dataflow pipelines simplify the mechanics of large-scale batch and streaming 
data processing and can run on a number of runtimes like Apache Flink, Apache 
Spark, and Google Cloud Dataflow  [...]
+">
+  <link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400"; 
rel="stylesheet">
+  <link rel="stylesheet" href="/css/site.css">
+  <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js";></script>
+  <script src="/js/bootstrap.min.js"></script>
+  <script src="/js/language-switch.js"></script>
+  <link rel="canonical" 
href="https://beam.apache.org/documentation/runners/mapreduce/"; 
data-proofer-ignore>
+  <link rel="shortcut icon" type="image/x-icon" href="/images/favicon.ico">
+  <link rel="alternate" type="application/rss+xml" title="Apache Beam" 
href="https://beam.apache.org/feed.xml";>
+  <script>
+    
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+    
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+    
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+    ga('create', 'UA-73650088-1', 'auto');
+    ga('send', 'pageview');
+  </script>
+</head>
+
+  <body class="body ">
+    <nav class="header navbar navbar-fixed-top">
+    <div class="navbar-header">
+      <a href="/" class="navbar-brand" >
+        <img alt="Brand" style="height: 25px" 
src="/images/beam_logo_navbar.png">
+      </a>
+        <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#navbar" aria-expanded="false" 
aria-controls="navbar">
+          <span class="sr-only">Toggle navigation</span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+        </button>
+    </div>
+    <div id="navbar" class="navbar-collapse collapse">
+      <ul class="nav navbar-nav">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Get Started <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/get-started/beam-overview/">Beam Overview</a></li>
+            <li><a href="/get-started/quickstart-java/">Quickstart - 
Java</a></li>
+            <li><a href="/get-started/quickstart-py/">Quickstart - 
Python</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Example Walkthroughs</li>
+            <li><a href="/get-started/wordcount-example/">WordCount</a></li>
+            <li><a href="/get-started/mobile-gaming-example/">Mobile 
Gaming</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Resources</li>
+            <li><a href="/get-started/downloads">Downloads</a></li>
+            <li><a href="/get-started/support">Support</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Documentation <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/documentation">Using the Documentation</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Beam Concepts</li>
+            <li><a href="/documentation/programming-guide/">Programming 
Guide</a></li>
+            <li><a href="/documentation/execution-model/">Execution 
Model</a></li>
+            <li><a href="/documentation/resources/">Additional 
Resources</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Pipeline Fundamentals</li>
+            <li><a 
href="/documentation/pipelines/design-your-pipeline/">Design Your 
Pipeline</a></li>
+            <li><a 
href="/documentation/pipelines/create-your-pipeline/">Create Your 
Pipeline</a></li>
+            <li><a href="/documentation/pipelines/test-your-pipeline/">Test 
Your Pipeline</a></li>
+            <li><a href="/documentation/io/io-toc/">Pipeline I/O</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">SDKs</li>
+            <li><a href="/documentation/sdks/java/">Java SDK</a></li>
+            <li><a href="/documentation/sdks/javadoc/2.1.0/" 
target="_blank">Java SDK API Reference <img src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li><a href="/documentation/sdks/python/">Python SDK</a></li>
+            <li><a href="/documentation/sdks/pydoc/2.1.0/" 
target="_blank">Python SDK API Reference <img 
src="/images/external-link-icon.png"
+                                                                               
                                                                width="14" 
height="14"
+                                                                               
                                                                           
alt="External link."></a>
+            </li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Runners</li>
+            <li><a href="/documentation/runners/capability-matrix/">Capability 
Matrix</a></li>
+            <li><a href="/documentation/runners/direct/">Direct Runner</a></li>
+            <li><a href="/documentation/runners/apex/">Apache Apex 
Runner</a></li>
+            <li><a href="/documentation/runners/flink/">Apache Flink 
Runner</a></li>
+            <li><a href="/documentation/runners/gearpump/">Apache Gearpump 
Runner</a></li>
+            <li><a href="/documentation/runners/spark/">Apache Spark 
Runner</a></li>
+            <li><a href="/documentation/runners/dataflow/">Cloud Dataflow 
Runner</a></li>
+
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">DSLs</li>
+            <li><a href="/documentation/dsls/sql/">SQL</a></li>
+          </ul>
+        </li>
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false">Contribute <span 
class="caret"></span></a>
+          <ul class="dropdown-menu">
+            <li><a href="/contribute">Get Started Contributing</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Guides</li>
+            <li><a href="/contribute/contribution-guide/">Contribution 
Guide</a></li>
+            <li><a href="/contribute/testing/">Testing Guide</a></li>
+            <li><a href="/contribute/release-guide/">Release Guide</a></li>
+            <li><a href="/contribute/ptransform-style-guide/">PTransform Style 
Guide</a></li>
+            <li><a href="/contribute/runner-guide/">Runner Authoring 
Guide</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Technical References</li>
+            <li><a href="/contribute/design-principles/">Design 
Principles</a></li>
+            <li><a href="/contribute/work-in-progress/">Ongoing 
Projects</a></li>
+            <li><a href="/contribute/source-repository/">Source 
Repository</a></li>
+            <li><a href="/contribute/docker-images/">Docker Images</a></li>
+            <li role="separator" class="divider"></li>
+            <li class="dropdown-header">Promotion</li>
+            <li><a href="/contribute/presentation-materials/">Presentation 
Materials</a></li>
+            <li><a href="/contribute/logos/">Logos and Design</a></li>
+            <li role="separator" class="divider"></li>
+            <li><a href="/contribute/maturity-model/">Maturity Model</a></li>
+            <li><a href="/contribute/team/">Team</a></li>
+          </ul>
+        </li>
+
+        <li><a href="/blog">Blog</a></li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+          <a href="#" class="dropdown-toggle" data-toggle="dropdown" 
role="button" aria-haspopup="true" aria-expanded="false"><img 
src="https://www.apache.org/foundation/press/kit/feather_small.png"; alt="Apache 
Logo" style="height:20px;"><span class="caret"></span></a>
+          <ul class="dropdown-menu dropdown-menu-right">
+            <li><a href="http://www.apache.org/";>ASF Homepage</a></li>
+            <li><a href="http://www.apache.org/licenses/";>License</a></li>
+            <li><a href="http://www.apache.org/security/";>Security</a></li>
+            <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
+            <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+            <li><a 
href="https://www.apache.org/foundation/policies/conduct";>Code of 
Conduct</a></li>
+          </ul>
+        </li>
+      </ul>
+    </div><!--/.nav-collapse -->
+</nav>
+
+    <div class="body__contained">
+      <h1 id="using-the-apache-hadoop-mapreduce-runner">Using the Apache 
Hadoop MapReduce Runner</h1>
+
+<p>The Apache Hadoop MapReduce Runner can be used to execute Beam pipelines 
using <a href="http://hadoop.apache.org/";>Apache Hadoop</a>.</p>
+
+<p>The <a href="/documentation/runners/capability-matrix/">Beam Capability 
Matrix</a> documents the currently supported capabilities of the Apache Hadoop 
MapReduce Runner.</p>
+
+<h2 id="apache-hadoop-mapreduce-runner-prerequisites-and-setup">Apache Hadoop 
MapReduce Runner prerequisites and setup</h2>
+<p>You need to have an Apache Hadoop environment with either <a 
href="https://hadoop.apache.org/docs/r1.2.1/single_node_setup.html";>Single Node 
Setup</a> or <a 
href="https://hadoop.apache.org/docs/r1.2.1/cluster_setup.html";>Cluster 
Setup</a></p>
+
+<p>The Apache Hadoop MapReduce runner currently supports Apache Hadoop version 
2.8.1.</p>
+
+<p>You can add a dependency on the latest version of the Apache Hadoop 
MapReduce runner by adding the following to your pom.xml:</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>&lt;dependency&gt;
+  &lt;groupId&gt;org.apache.beam&lt;/groupId&gt;
+  &lt;artifactId&gt;beam-runners-mapreduce&lt;/artifactId&gt;
+  &lt;version&gt;2.1.0&lt;/version&gt;
+&lt;/dependency&gt;
+</code></pre>
+</div>
+
+<h2 id="deploying-apache-hadoop-mapreduce-with-your-application">Deploying 
Apache Hadoop MapReduce with your application</h2>
+<p>To execute in a local Hadoop environment, use this command:</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>$ mvn exec:java 
-Dexec.mainClass=org.apache.beam.examples.WordCount \
+    -Pmapreduce-runner \
+    -Dexec.args="--runner=MapReduceRunner \
+      --inputFile=/path/to/pom.xml \
+      --output=/path/to/counts \
+      --fileOutputDir=&lt;directory for intermediate outputs&gt;"
+</code></pre>
+</div>
+
+<p>To execute in a Hadoop cluster, package your program along with all 
dependencies in a fat jar.</p>
+
+<p>If you are following through the <a 
href="/get-started/quickstart-java/">Beam Java SDK Quickstart</a>, you can run 
this command:</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>$ mvn package 
-Pflink-runner
+</code></pre>
+</div>
+
+<p>For actually running the pipeline you would use this command</p>
+<div class="highlighter-rouge"><pre class="highlight"><code>$ yarn jar 
word-count-beam-bundled-0.1.jar \
+    org.apache.beam.examples.WordCount \
+    --runner=MapReduceRunner \
+    --inputFile=/path/to/pom.xml \
+      --output=/path/to/counts \
+      --fileOutputDir=&lt;directory for intermediate outputs&gt;"
+</code></pre>
+</div>
+
+<h2 id="pipeline-options-for-the-apache-hadoop-mapreduce-runner">Pipeline 
options for the Apache Hadoop MapReduce Runner</h2>
+
+<p>When executing your pipeline with the Apache Hadoop MapReduce Runner, you 
should consider the following pipeline options.</p>
+
+<table class="table table-bordered">
+<tr>
+  <th>Field</th>
+  <th>Description</th>
+  <th>Default Value</th>
+</tr>
+<tr>
+  <td><code>runner</code></td>
+  <td>The pipeline runner to use. This option allows you to determine the 
pipeline runner at runtime.</td>
+  <td>Set to <code>MapReduceRunner</code> to run using Apache Hadoop 
MapReduce.</td>
+</tr>
+<tr>
+  <td><code>jarClass</code></td>
+  <td>The jar class of the user Beam program.</td>
+  <td>JarClassInstanceFactory.class</td>
+</tr>
+<tr>
+  <td><code>fileOutputDir</code></td>
+  <td>The directory for output files.</td>
+  <td>"/tmp/mapreduce/"</td>
+</tr>
+</table>
+
+    </div>
+    <footer class="footer">
+  <div class="footer__contained">
+    <div class="footer__cols">
+      <div class="footer__cols__col">
+        <div class="footer__cols__col__logo">
+          <img src="/images/beam_logo_circle.svg" class="footer__logo" 
alt="Beam logo">
+        </div>
+        <div class="footer__cols__col__logo">
+          <img src="/images/apache_logo_circle.svg" class="footer__logo" 
alt="Apache logo">
+        </div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Start</div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/beam-overview/">Overview</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-java/">Quickstart (Java)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/quickstart-py/">Quickstart (Python)</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/downloads/">Downloads</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Docs</div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/programming-guide/">Concepts</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/pipelines/design-your-pipeline/">Pipelines</a></div>
+        <div class="footer__cols__col__link"><a 
href="/documentation/runners/capability-matrix/">Runners</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Community</div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/">Contribute</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/team/">Team</a></div>
+        <div class="footer__cols__col__link"><a 
href="/contribute/presentation-materials/">Media</a></div>
+      </div>
+      <div class="footer__cols__col footer__cols__col--md">
+        <div class="footer__cols__col__title">Resources</div>
+        <div class="footer__cols__col__link"><a href="/blog/">Blog</a></div>
+        <div class="footer__cols__col__link"><a 
href="/get-started/support/">Support</a></div>
+        <div class="footer__cols__col__link"><a 
href="https://github.com/apache/beam";>GitHub</a></div>
+      </div>
+    </div>
+  </div>
+  <div class="footer__bottom">
+    &copy;
+    <a href="http://www.apache.org";>The Apache Software Foundation</a>
+    | <a href="/privacy_policy">Privacy Policy</a>
+    | <a href="/feed.xml">RSS Feed</a>
+    <br><br>
+    Apache Beam, Apache, Beam, the Beam logo, and the Apache feather logo are
+    either registered trademarks or trademarks of The Apache Software
+    Foundation. All other products or name brands are trademarks of their
+    respective holders, including The Apache Software Foundation.
+  </div>
+</footer>
+
+  </body>
+</html>
diff --git a/content/images/execution_model_bundling.svg 
b/content/images/execution_model_bundling.svg
new file mode 100644
index 0000000..8fc4ef7
--- /dev/null
+++ b/content/images/execution_model_bundling.svg
@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   id="svg2"
+   height="217.11"
+   width="421.51"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="execution_model_bundling.svg">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1146"
+     id="namedview37"
+     showgrid="false"
+     inkscape:zoom="1.9795165"
+     inkscape:cx="16.948817"
+     inkscape:cy="88.348045"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="g5315" />
+  <defs
+     id="defs28">
+    <marker
+       inkscape:stockid="Arrow2Lstart"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Lstart"
+       style="overflow:visible">
+      <path
+         id="path4078"
+         
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 
8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 
8.7185878,4.0337352 z "
+         transform="scale(1.1) translate(1,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Lend"
+       style="overflow:visible;">
+      <path
+         id="path4063"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
+         transform="scale(0.8) rotate(180) translate(12.5,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Lend"
+       style="overflow:visible;">
+      <path
+         id="path3923"
+         
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 
8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 
8.7185878,4.0337352 z "
+         transform="scale(1.1) rotate(180) translate(1,0)" />
+    </marker>
+    <marker
+       id="Arrow2Lend-1"
+       refY="0"
+       refX="0"
+       orient="auto">
+      <path
+         id="path3823-1"
+         stroke-linejoin="round"
+         
d="M8.7186,4.0337-2.2073,0.016013,8.7186-4.0017c-1.7455,2.3721-1.7354,5.6175-6E-7,8.0354z"
+         fill-rule="evenodd"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         stroke-width="0.625" />
+    </marker>
+  </defs>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="g5315">
+    <g
+       stroke-miterlimit="4"
+       transform="matrix(0.88811359,0,0,1,-3.8563836,-770.72906)"
+       id="g3135"
+       
style="stroke-width:0.53056151;stroke-miterlimit:4;stroke-dasharray:none">
+      <rect
+         x="49.662998"
+         y="876.54999"
+         width="147.47"
+         height="34.285999"
+         ry="11.782"
+         id="rect2987"
+         style="fill:#f4a460;stroke:#000000" />
+    </g>
+    <path
+       d="m 103.79,140.11 0.18839,60.668"
+       
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Lend)"
+       id="path12814"
+       inkscape:connector-curvature="0" />
+    <path
+       d="m 103.17,15.5 0.18366,89.157"
+       
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Lend);marker-mid:none"
+       id="path12814-7"
+       inkscape:connector-curvature="0" />
+    <g
+       id="g4404">
+      <text
+         id="text3163"
+         font-size="20px"
+         line-height="125%"
+         font-family="Sans"
+         xml:space="preserve"
+         style="letter-spacing:0px;word-spacing:0px;"
+         y="152.86745"
+         x="231.89923"
+         font-weight="normal"
+         font-style="normal"
+         fill="#000000"><tspan
+           id="tspan3165"
+           y="152.86745"
+           x="231.89923"
+           font-size="12px">Bundle A (five elements)</tspan></text>
+      <text
+         id="text3163-1"
+         font-size="20px"
+         line-height="125%"
+         font-family="Sans"
+         xml:space="preserve"
+         style="letter-spacing:0px;word-spacing:0px;"
+         y="173.16542"
+         x="231.81685"
+         font-weight="normal"
+         font-style="normal"
+         fill="#000000"><tspan
+           id="tspan3165-8"
+           y="173.16542"
+           x="231.81685"
+           font-size="12px">Bundle B (four elements)</tspan></text>
+      <rect
+         id="rect3025-9"
+         stroke-dasharray="none"
+         height="14.365"
+         width="21.511"
+         stroke="#000"
+         stroke-miterlimit="4"
+         y="141.93"
+         x="203.73"
+         stroke-width="0.5"
+         fill="#d8bfd8" />
+      <rect
+         id="rect3025-9-3"
+         stroke-dasharray="none"
+         height="14.365"
+         width="21.511"
+         stroke="#000"
+         stroke-miterlimit="4"
+         y="162.32"
+         x="204.03"
+         stroke-width="0.5"
+         fill="#add8e6" />
+    </g>
+    <g
+       id="g4412">
+      <text
+         id="text3153"
+         font-size="20px"
+         line-height="125%"
+         font-family="Sans"
+         xml:space="preserve"
+         style="letter-spacing:0px;word-spacing:0px;"
+         y="32.067104"
+         x="180.63188"
+         font-weight="normal"
+         font-style="normal"
+         fill="#000000"><tspan
+           id="tspan3155"
+           y="32.067104"
+           x="180.63188"
+           font-size="16px">Input collection:</tspan></text>
+      <g
+         id="g18259"
+         transform="matrix(1.0730169,0,0,1,-9.331575,-27.774711)">
+        <rect
+           id="rect3161"
+           height="51.429"
+           width="5"
+           y="66.479"
+           x="243.12"
+           fill="#1c2422" />
+        <rect
+           id="rect3025-4"
+           stroke-dasharray="none"
+           height="36.368"
+           width="115.97"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.242"
+           x="127.82"
+           stroke-width="1.0104"
+           fill="#d8bfd8" />
+        <rect
+           id="rect3025-0"
+           stroke-dasharray="none"
+           height="36.656"
+           width="23.053"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.098"
+           x="127.66"
+           stroke-width="0.80829"
+           fill="#d8bfd8" />
+        <rect
+           id="rect3025-0-0"
+           stroke-dasharray="none"
+           height="36.656"
+           width="23.053"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.098"
+           x="174.03"
+           stroke-width="0.80829"
+           fill="#d8bfd8" />
+        <rect
+           id="rect3025-0-4"
+           stroke-dasharray="none"
+           height="36.656"
+           width="23.053"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.098"
+           x="150.85"
+           stroke-width="0.80829"
+           fill="#d8bfd8" />
+        <rect
+           id="rect3025-0-44"
+           stroke-dasharray="none"
+           height="36.656"
+           width="23.053"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.098"
+           x="220.41"
+           stroke-width="0.80829"
+           fill="#d8bfd8" />
+        <rect
+           id="rect3025-0-47"
+           stroke-dasharray="none"
+           height="36.656"
+           width="23.053"
+           stroke="#000"
+           stroke-miterlimit="4"
+           y="74.098"
+           x="197.22"
+           stroke-width="0.80829"
+           fill="#d8bfd8" />
+        <g
+           id="g18250"
+           transform="matrix(1.1135475,0,0,0.99880924,127.32861,191.51183)"
+           stroke="#000"
+           stroke-dasharray="none"
+           stroke-miterlimit="4"
+           stroke-width="0.7723012"
+           fill="#add8e6">
+          <g
+             id="g18243"
+             transform="translate(-157.70925,-188.54625)">
+            <g
+               id="g18240"
+               stroke="#000"
+               stroke-dasharray="none"
+               stroke-miterlimit="4"
+               stroke-width="0.7723012"
+               fill="#add8e6">
+              <rect
+                 id="rect3025-5-11"
+                 stroke-dasharray="none"
+                 height="36.539"
+                 width="82.466"
+                 stroke="#000"
+                 stroke-miterlimit="4"
+                 y="71.073"
+                 x="266.04"
+                 stroke-width="0.7723"
+                 fill="#add8e6" />
+            </g>
+          </g>
+          <rect
+             id="rect3025-0-47-6"
+             y="-117.55"
+             width="21.024"
+             x="108.43"
+             height="36.695" />
+          <rect
+             id="rect3025-0-47-3"
+             y="-117.55"
+             width="21.024"
+             x="149.4"
+             height="36.695" />
+          <rect
+             id="rect3025-0-47-1"
+             y="-117.55"
+             width="21.024"
+             x="128.7"
+             height="36.695" />
+          <rect
+             id="rect3025-0-47-7"
+             y="-117.55"
+             width="21.024"
+             x="170.47"
+             height="36.695" />
+        </g>
+      </g>
+    </g>
+    <text
+       line-height="125%"
+       x="76.725883"
+       y="127.85606"
+       font-style="normal"
+       font-size="42.44491959px"
+       xml:space="preserve"
+       font-weight="normal"
+       
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;font-family:Sans"
+       id="text9065"
+       sodipodi:linespacing="125%"><tspan
+         x="76.725883"
+         y="127.85606"
+         font-size="16.97796822px"
+         id="tspan9067"
+         style="font-size:16px">ParDo1</tspan></text>
+  </g>
+</svg>
diff --git a/content/images/execution_model_bundling_coupled_failure.svg 
b/content/images/execution_model_bundling_coupled_failure.svg
new file mode 100644
index 0000000..33d6cb2
--- /dev/null
+++ b/content/images/execution_model_bundling_coupled_failure.svg
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; 
xmlns="http://www.w3.org/2000/svg"; height="256.37" width="679.06" version="1.1" 
xmlns:cc="http://creativecommons.org/ns#"; 
xmlns:dc="http://purl.org/dc/elements/1.1/";>
+ <metadata id="metadata7">
+  <rdf:RDF>
+   <cc:Work rdf:about="">
+    <dc:format>image/svg+xml</dc:format>
+    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+    <dc:title/>
+   </cc:Work>
+  </rdf:RDF>
+ </metadata>
+ <g id="layer1" transform="translate(16.157673,-773.52648)">
+  <g id="g3140-54" 
transform="matrix(1.4703519,0,0,1.2733995,38.653989,-84.095098)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.39496601" 
fill="#add8e6">
+   <rect id="rect3025-7-1-9-8-74" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.39497" fill="#add8e6"/>
+  </g>
+  <g id="g3140-54-9" 
transform="matrix(1.7799058,0,0,1.2747744,115.81366,-85.229582)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.32553703" 
fill="#1e90ff">
+   <rect id="rect3025-7-1-9-8-74-5" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.32554" fill="#1e90ff"/>
+  </g>
+  <g id="g3140-54-1" 
transform="matrix(1.6807803,0,0,1.2732496,36.109093,-142.39997)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.3731702" 
fill="#d8bfd8">
+   <rect id="rect3025-7-1-9-8-74-7" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.37317" fill="#d8bfd8"/>
+  </g>
+  <g id="g3140-54-9-6" 
transform="matrix(1.1255822,0,0,1.2770216,141.67597,-145.5124)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.34072345" 
fill="#9370db">
+   <rect id="rect3025-7-1-9-8-74-5-1" height="36.429" width="63.501" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" y="806.93" 
x="9.8924" stroke-width="0.34072" fill="#9370db"/>
+  </g>
+  <path id="path3207-9" stroke-linejoin="miter" 
d="m49.897,826.21,0,175.89h435.32" stroke="#000" stroke-linecap="butt" 
stroke-width="0.94508249px" fill="none"/>
+  <text id="text7100" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="812.71613" x="51.514202" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan7104" y="812.71613" 
x="51.514202" font-size="16px" 
style="text-anchor:middle;text-align:center;">Worker</tspan></text>
+  <text id="text6762" font-size="16px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="994.6684" x="529.6355" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6764" y="994.6684" 
x="529.6355" 
style="text-anchor:middle;text-align:center;">Processing</tspan><tspan 
id="tspan6766" y="1014.6685" x="529.6355" 
style="text-anchor:middle;text-align:center;">Time</tspan></text>
+  <g id="g3140-54-1-5" 
transform="matrix(0.45891321,0,0,0.41422951,427.99183,478.05141)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="1.00000155" 
fill="#d8bfd8">
+   <rect id="rect3025-7-1-9-8-74-7-6" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="1" fill="#d8bfd8"/>
+  </g>
+  <g id="g3140-54-4" 
transform="matrix(0.49362044,0,0,0.44268692,428.24508,431.02429)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.99901491" 
fill="#87cefa">
+   <rect id="rect3025-7-1-9-8-74-8" height="34.087" width="51.484" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" y="808.1" 
x="11.799" stroke-width="0.99901" fill="#87cefa"/>
+  </g>
+  <text id="text6979" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="800.12573" x="467.31888" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6981" y="800.12573" 
x="467.31888" font-size="12px">Bundle A (ParDo1 input)</tspan></text>
+  <text id="text6979-3" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="848.48145" x="468.29507" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6981-9" y="848.48145" 
x="468.29507" font-size="12px">Bundle C (ParDo2 input)</tspan></text>
+  <text id="text6979-0" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="823.63007" x="468.2951" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6981-8" y="823.63007" 
x="468.2951" font-size="12px">Bundle B (ParDo1 input)</tspan></text>
+  <text id="text6979-0-8" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="872.59741" x="468.65836" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6981-8-5" y="872.59741" 
x="468.65836" font-size="12px">Bundle D (ParDo2 input)</tspan></text>
+  <text id="text6979-0-0" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="898.10181" x="468.69962" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan6981-8-9" y="898.10181" 
x="468.69962" font-size="12px">Element processing failed</tspan></text>
+  <text id="text7061" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="914.45178" x="29.878115" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan7063" y="914.45178" 
x="29.878115" font-size="14px">2</tspan></text>
+  <text id="text7061-6" font-size="40px" font-family="Sans" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" 
xml:space="preserve" y="973.8656" x="29.225224" font-weight="normal" 
line-height="125%" fill="#000000"><tspan id="tspan7063-3" y="973.8656" 
x="29.225224" font-size="14px">1</tspan></text>
+  <path id="path6657-3-5-62-2-2" stroke-linejoin="miter" 
d="m41.658,909.91h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-62-2-2-8" stroke-linejoin="miter" 
d="M41.005,967.98h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+  <g id="g3140-54-1-4" 
transform="matrix(1.0418535,0,0,1.2764221,224.78434,-145.282)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.3731702" 
fill="#d8bfd8">
+   <rect id="rect3025-7-1-9-8-74-7-0" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.37317" fill="#d8bfd8"/>
+  </g>
+  <g id="g3140-54-9-6-5" 
transform="matrix(1.5768018,0,0,1.2749736,281.03685,-144.08674)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.34072345" 
fill="#9370db">
+   <rect id="rect3025-7-1-9-8-74-5-1-94" height="36.429" width="63.501" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" y="806.93" 
x="9.8924" stroke-width="0.34072" fill="#9370db"/>
+  </g>
+  <g id="g3140-54-1-5-4" 
transform="matrix(0.45891321,0,0,0.41422951,428.31828,502.82028)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="1.00000155" 
fill="#1e90ff">
+   <rect id="rect3025-7-1-9-8-74-7-6-8" height="36.429" width="55" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" y="806.93" 
x="14.143" stroke-width="1" fill="#1e90ff"/>
+  </g>
+  <g id="g3140-54-1-5-1" 
transform="matrix(0.45891321,0,0,0.41422951,428.31828,527.63044)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="1.00000155" 
fill="#9370db">
+   <rect id="rect3025-7-1-9-8-74-7-6-2" height="36.429" width="55" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" y="806.93" 
x="14.143" stroke-width="1" fill="#9370db"/>
+  </g>
+  <text id="text18024-8" style="letter-spacing:0px;word-spacing:0px;" 
font-family="Sans" font-weight="normal" xml:space="preserve" 
stroke-dasharray="none" font-size="40px" stroke="#000000" stroke-miterlimit="4" 
font-style="normal" y="899.92407" x="441.27896" stroke-width="0.2" 
line-height="125%" fill="#000000"><tspan id="tspan18026-9" stroke-width="0.2" 
stroke-dasharray="none" font-size="16px" stroke="#000000" stroke-miterlimit="4" 
y="899.92407" x="441.27896" font-weight="bold" fill="#ff [...]
+  <text id="text18024-8-3" style="letter-spacing:0px;word-spacing:0px;" 
font-family="Sans" font-weight="normal" xml:space="preserve" 
stroke-dasharray="none" font-size="40px" stroke="#000000" stroke-miterlimit="4" 
font-style="normal" y="913.63501" x="181.38664" stroke-width="0.2" 
line-height="125%" fill="#000000"><tspan id="tspan18026-9-6" stroke-width="0.2" 
stroke-dasharray="none" font-size="16px" stroke="#000000" stroke-miterlimit="4" 
y="913.63501" x="181.38664" font-weight="bold" fill= [...]
+ </g>
+</svg>
diff --git a/content/images/execution_model_bundling_gantt.svg 
b/content/images/execution_model_bundling_gantt.svg
new file mode 100644
index 0000000..d73fc19
--- /dev/null
+++ b/content/images/execution_model_bundling_gantt.svg
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; 
xmlns="http://www.w3.org/2000/svg"; height="221.19" width="584.79" version="1.1" 
xmlns:cc="http://creativecommons.org/ns#"; 
xmlns:dc="http://purl.org/dc/elements/1.1/";>
+ <metadata id="metadata7">
+  <rdf:RDF>
+   <cc:Work rdf:about="">
+    <dc:format>image/svg+xml</dc:format>
+    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+    <dc:title/>
+   </cc:Work>
+  </rdf:RDF>
+ </metadata>
+ <path id="path3207" stroke-linejoin="miter" 
d="m65.679,40.835,0,153.56h360.38" stroke="#000" stroke-linecap="butt" 
stroke-width="0.80344409px" fill="none"/>
+ <text id="text3213" font-size="16px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" line-height="125%" 
font-style="normal" y="174.03949" x="572.71991" font-weight="normal" 
fill="#000000"><tspan id="tspan3215" y="174.03949" x="530.67303" 
style="text-anchor:middle;text-align:center;"/></text>
+ <g id="g3006" transform="translate(15.777413,-820.77153)">
+  <text id="text3163" font-size="20px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" line-height="125%" 
font-style="normal" y="854.52179" x="422.17236" font-weight="normal" 
fill="#000000"><tspan id="tspan3165" y="854.52179" x="422.17236" 
font-size="12px">Bundle A element</tspan></text>
+  <text id="text3163-1" font-size="20px" font-family="Sans" 
xml:space="preserve" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-style="normal" y="882.88568" x="421.50021" 
font-weight="normal" fill="#000000"><tspan id="tspan3165-8" y="882.88568" 
x="421.50021" font-size="12px">Bundle B element</tspan></text>
+  <path id="path6657-3" stroke-linejoin="miter" d="M44.308,976.84h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5" stroke-linejoin="miter" d="M44.777,920.73h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <text id="text6695" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="981.909" x="29.374258" font-weight="normal" 
fill="#000000"><tspan id="tspan6697" y="981.909" x="29.374258" 
font-size="14px">1</tspan></text>
+  <text id="text6699" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="926.83972" x="30.668245" font-weight="normal" 
fill="#000000"><tspan id="tspan6701" y="926.83972" x="30.668245" 
font-size="14px">2</tspan></text>
+  <rect id="rect3025-7-1-9-2" height="20.191" width="33.113" stroke="#000" 
y="868.96" x="377.83" fill="#add8e6"/>
+  <g id="g18259" transform="matrix(1.0730169,0,0,1,-86.480557,643.26922)" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4">
+   <g id="g18357" fill="#d8bfd8" 
transform="matrix(2.5823283,0,0,1,-198.50272,244.2816)">
+    <rect id="rect3025-4" height="36.41" width="104.74" y="73.34" x="131.48" 
stroke-width="0.41851"/>
+    <rect id="rect3025-0" height="36.695" width="21.024" y="73.198" x="131.34" 
stroke-width="0.42052"/>
+    <rect id="rect3025-0-0" height="36.695" width="21.024" y="73.198" 
x="173.63" stroke-width="0.42052"/>
+    <rect id="rect3025-0-4" height="36.695" width="21.024" y="73.198" 
x="152.48" stroke-width="0.42052"/>
+    <rect id="rect3025-0-44" height="36.695" width="21.024" y="73.198" 
x="215.66" stroke-width="0.42052"/>
+    <rect id="rect3025-0-47" height="36.695" width="21.024" y="73.198" 
x="194.77" stroke-width="0.42052"/>
+   </g>
+   <g id="g18365" stroke-width="0.41577438" fill="#add8e6" 
transform="matrix(2.6416425,0,0,1,-948.11581,183.56421)">
+    <g id="g18250" transform="translate(309.37641,193.57296)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.41577438" 
fill="#add8e6">
+     <g id="g18243" transform="translate(-157.70925,-188.54625)">
+      <g id="g18240" stroke="#000" stroke-dasharray="none" 
stroke-miterlimit="4" stroke-width="0.41577438" fill="#add8e6">
+       <rect id="rect3025-5-11" stroke-dasharray="none" height="36.539" 
width="82.466" stroke="#000" stroke-miterlimit="4" y="71.073" x="266.04" 
stroke-width="0.41577" fill="#add8e6"/>
+      </g>
+     </g>
+     <rect id="rect3025-0-47-6" y="-117.55" width="21.024" x="108.43" 
height="36.695"/>
+     <rect id="rect3025-0-47-3" y="-117.55" width="21.024" x="149.4" 
height="36.695"/>
+     <rect id="rect3025-0-47-1" y="-117.55" width="21.024" x="128.7" 
height="36.695"/>
+     <rect id="rect3025-0-47-7" y="-117.55" width="21.024" x="170.1" 
height="36.695"/>
+    </g>
+   </g>
+  </g>
+  <rect id="rect3025-7-1-9-2-5" height="20.191" width="33.113" stroke="#000" 
y="839.83" x="377.86" fill="#d8bfd8"/>
+ </g>
+ <text id="text6762" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="16px" 
font-style="normal" y="185.96609" x="477.86038" font-weight="normal" 
fill="#000000"><tspan id="tspan6764" y="185.96609" x="477.86038" 
style="text-anchor:middle;text-align:center;">Processing</tspan><tspan 
id="tspan6766" y="205.96609" x="477.86038" 
style="text-anchor:middle;text-align:center;">Time</tspan></text>
+ <text id="text7100" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="27.15625" x="67.671875" font-weight="normal" 
fill="#000000"><tspan id="tspan7104" y="27.15625" x="67.671875" 
style="text-anchor:middle;text-align:center;" 
font-size="16px">Worker</tspan></text>
+</svg>
diff --git a/content/images/execution_model_bundling_gantt_max.svg 
b/content/images/execution_model_bundling_gantt_max.svg
new file mode 100644
index 0000000..06f65c5
--- /dev/null
+++ b/content/images/execution_model_bundling_gantt_max.svg
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; 
xmlns="http://www.w3.org/2000/svg"; height="276.81" width="557.19" version="1.1" 
xmlns:cc="http://creativecommons.org/ns#"; 
xmlns:dc="http://purl.org/dc/elements/1.1/";>
+ <metadata id="metadata7">
+  <rdf:RDF>
+   <cc:Work rdf:about="">
+    <dc:format>image/svg+xml</dc:format>
+    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+    <dc:title/>
+   </cc:Work>
+  </rdf:RDF>
+ </metadata>
+ <g id="g10906">
+  <g id="g3140" 
transform="matrix(1.7363636,0,0,0.31372546,50.783157,-199.0263)" stroke="#000" 
stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.99991053" 
fill="#3cb371">
+   <rect id="rect3025-7-1-9-8" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.99991" fill="#3cb371"/>
+  </g>
+  <g id="g3140-0" fill="#3cb371" 
transform="matrix(1.7181818,0,0,0.31372546,55.040303,-156.25844)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-6" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-1" fill="#3cb371" 
transform="matrix(1.6636364,0,0,0.31372546,51.811739,-70.722744)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-5" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-5" fill="#3cb371" 
transform="matrix(1.7818182,0,0,0.31372546,56.140294,-134.87452)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-4" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-7" fill="#3cb371" 
transform="matrix(1.6818182,0,0,0.31372546,73.554594,-49.338814)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-65" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-6" fill="#3cb371" 
transform="matrix(1.8181818,0,0,0.31372546,73.626003,-177.64237)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-9" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-3" fill="#3cb371" 
transform="matrix(1.6727273,0,0,0.31372546,51.683166,-113.49059)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-7" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-4" fill="#3cb371" 
transform="matrix(1.6545455,0,0,0.31372546,99.940308,-92.106664)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-52" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <g id="g3140-54" fill="#3cb371" 
transform="matrix(1.6636363,0,0,0.31372546,63.81174,-27.954894)" stroke="#000">
+   <rect id="rect3025-7-1-9-8-74" height="36.429" width="55" stroke="#000" 
y="806.93" x="14.143" fill="#3cb371"/>
+  </g>
+  <path id="path3207-9" stroke-linejoin="miter" 
d="m66.967,39.115,0,209.2h360.24" stroke="#000" stroke-linecap="butt" 
stroke-width="0.93760067px" fill="none"/>
+  <text id="text6762" font-size="16px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="241.58237" 
x="475.89737" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan6764" y="241.58237" x="475.89737" 
style="text-anchor:middle;text-align:center;">Processing</tspan><tspan 
id="tspan6766" y="261.58237" x="475.89737" 
style="text-anchor:middle;text-align:center;">Time</tspan></text>
+  <g id="g3140-12" 
transform="matrix(0.43986114,0,0,0.31372546,321.10866,-217.39942)" 
stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" 
stroke-width="0.99871421" fill="#3cb371">
+   <rect id="rect3025-7-1-9-8-70" height="36.429" width="55" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.99871" fill="#3cb371"/>
+  </g>
+  <text id="text6979" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="46.411533" 
x="360.37134" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan6981" y="46.411533" x="360.37134" font-size="12px">Element in the 
collection</tspan></text>
+  <path id="path6657-3-5" stroke-linejoin="miter" d="M59.393,60.15h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-9" stroke-linejoin="miter" d="M59.893,82.615h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-3" stroke-linejoin="miter" d="M60.392,102.58h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-6" stroke-linejoin="miter" d="M60.891,123.55h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-0" stroke-linejoin="miter" d="M59.893,146.02h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-62" stroke-linejoin="miter" d="M60.392,167.98h11.088" 
stroke="#000" stroke-linecap="butt" stroke-width="1.09913433px" fill="none"/>
+  <text id="text7057" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="235.87523" 
x="47.467484" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7059" y="235.87523" x="47.467484" font-size="14px">1</tspan></text>
+  <text id="text7061" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="215.40685" 
x="47.46748" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7063" y="215.40685" x="47.46748" font-size="14px">2</tspan></text>
+  <text id="text7065" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="193.44386" 
x="46.965172" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7067" y="193.44386" x="46.965172" font-size="14px">3</tspan></text>
+  <text id="text7069" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="172.47627" 
x="46.965168" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7071" y="172.47627" x="46.965168" font-size="14px">4</tspan></text>
+  <text id="text7073" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="151.50867" 
x="46.968254" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7075" y="151.50867" x="46.968254" font-size="14px">5</tspan></text>
+  <text id="text7077" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="129.54257" 
x="46.965176" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7079" y="129.54257" x="46.965176" font-size="14px">6</tspan></text>
+  <text id="text7081" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="108.07574" 
x="47.963634" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7083" y="108.07574" x="47.963634" font-size="14px">7</tspan></text>
+  <text id="text7085" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="87.108109" 
x="47.963631" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7087" y="87.108109" x="47.963631" font-size="14px">8</tspan></text>
+  <text id="text7089" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="64.1436" 
x="47.464424" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7091" y="64.1436" x="47.464424" font-size="14px">9</tspan></text>
+  <text id="text7100" font-size="40px" font-family="Sans" xml:space="preserve" 
style="letter-spacing:0px;word-spacing:0px;" font-style="normal" y="27.15625" 
x="67.671875" font-weight="normal" line-height="125%" fill="#000000"><tspan 
id="tspan7104" y="27.15625" x="67.671875" font-size="16px" 
style="text-anchor:middle;text-align:center;">Worker</tspan></text>
+  <path id="path6657-3-5-62-2" stroke-linejoin="miter" 
d="M59.893,188.44h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-62-2-0" stroke-linejoin="miter" 
d="M59.893,210.42h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+  <path id="path6657-3-5-62-2-2" stroke-linejoin="miter" 
d="M59.893,230.39h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+ </g>
+</svg>
diff --git a/content/images/execution_model_bundling_multi.svg 
b/content/images/execution_model_bundling_multi.svg
new file mode 100644
index 0000000..75a29d8
--- /dev/null
+++ b/content/images/execution_model_bundling_multi.svg
@@ -0,0 +1,336 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   id="svg2"
+   height="396.51"
+   width="405.69"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="execution_model_bundling_multi.svg">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1146"
+     id="namedview36"
+     showgrid="false"
+     inkscape:zoom="1.6834602"
+     inkscape:cx="102.45652"
+     inkscape:cy="198.255"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2" />
+  <defs
+     id="defs7289">
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="marker4605"
+       style="overflow:visible;">
+      <path
+         id="path4370"
+         
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 
8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 
8.7185878,4.0337352 z "
+         transform="scale(1.1) rotate(180) translate(1,0)" />
+    </marker>
+    <marker
+       id="Arrow2Lend"
+       refY="0"
+       refX="0"
+       orient="auto">
+      <path
+         id="path3823"
+         stroke-linejoin="round"
+         
d="M8.7186,4.0337-2.2073,0.016013,8.7186-4.0017c-1.7455,2.3721-1.7354,5.6175-6E-7,8.0354z"
+         fill-rule="evenodd"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         stroke-width="0.625" />
+    </marker>
+  </defs>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <rect
+     id="rect3025-5"
+     height="36.429"
+     width="136.1"
+     stroke="#000"
+     stroke-dasharray="none"
+     stroke-miterlimit="4"
+     y="70.871"
+     x="229.33"
+     stroke-width="0.5"
+     fill="#d8bfd8" />
+  <rect
+     id="rect3025-9"
+     height="36.429"
+     width="96.969"
+     stroke="#000"
+     stroke-dasharray="none"
+     stroke-miterlimit="4"
+     y="71.523"
+     x="128.32"
+     stroke-width="0.5"
+     fill="#add8e6" />
+  <rect
+     id="rect3161-3"
+     height="51.429"
+     width="5"
+     y="64.023"
+     x="224.46"
+     fill="#1c2422" />
+  <text
+     id="text3163-19"
+     style="letter-spacing:0px;word-spacing:0px;"
+     font-family="Sans"
+     xml:space="preserve"
+     font-size="20px"
+     line-height="125%"
+     font-style="normal"
+     y="94.810165"
+     x="146.11887"
+     font-weight="normal"
+     fill="#000000"><tspan
+       id="tspan3165-4"
+       y="94.810165"
+       x="146.11887"
+       font-size="14px">Bundle A</tspan></text>
+  <text
+     id="text3163-1-7"
+     style="letter-spacing:0px;word-spacing:0px;"
+     font-family="Sans"
+     xml:space="preserve"
+     font-size="20px"
+     line-height="125%"
+     font-style="normal"
+     y="94.810158"
+     x="261.11557"
+     font-weight="normal"
+     fill="#000000"><tspan
+       id="tspan3165-8-8"
+       y="94.810158"
+       x="261.11557"
+       font-size="14px">Bundle B</tspan></text>
+  <rect
+     id="rect3025-5-4"
+     stroke-dasharray="none"
+     transform="scale(-1,1)"
+     height="36.429"
+     width="136.1"
+     stroke="#000"
+     stroke-miterlimit="4"
+     y="221.22"
+     x="-264.42"
+     stroke-width="0.5"
+     fill="#1e90ff" />
+  <rect
+     id="rect3025-9-5"
+     transform="scale(-1,1)"
+     height="36.429"
+     width="96.969"
+     stroke="#000"
+     stroke-dasharray="none"
+     stroke-miterlimit="4"
+     y="221.87"
+     x="-365.44"
+     stroke-width="0.5"
+     fill="#9370db" />
+  <rect
+     id="rect3161-3-0"
+     transform="scale(-1,1)"
+     height="51.429"
+     width="5"
+     y="214.37"
+     x="-269.3"
+     fill="#1c2422" />
+  <g
+     id="g3135-2"
+     transform="matrix(0.88811359,0,0,1,-3.8561905,-743.90322)"
+     stroke="#000"
+     stroke-miterlimit="4"
+     stroke-dasharray="none"
+     stroke-width="0.53056151"
+     fill="#f4a460">
+    <rect
+       id="rect2987-2"
+       ry="11.782"
+       height="34.286"
+       width="147.47"
+       stroke="#000"
+       stroke-dasharray="none"
+       stroke-miterlimit="4"
+       y="876.55"
+       x="49.663"
+       stroke-width="0.53056"
+       fill="#f4a460" />
+  </g>
+  <g
+     id="g3135-7"
+     transform="matrix(0.88811359,0,0,1,-3.0891015,-592.0192)">
+    <rect
+       id="rect2987-36"
+       ry="11.782"
+       height="34.286"
+       width="147.47"
+       stroke="#000"
+       stroke-dasharray="none"
+       stroke-miterlimit="4"
+       y="876.55"
+       x="49.663"
+       stroke-width="0.53056"
+       fill="#f4a460" />
+    <text
+       id="text9065"
+       style="letter-spacing:0px;word-spacing:0px;"
+       font-weight="normal"
+       xml:space="preserve"
+       transform="scale(1.061123,0.94239781)"
+       font-size="42.44491959px"
+       font-style="normal"
+       y="792.91864"
+       x="85.25296"
+       font-family="Sans"
+       line-height="125%"
+       fill="#000000"><tspan
+         id="tspan9067"
+         font-size="16.97796822px"
+         y="792.91864"
+         x="85.25296">ParDo1</tspan></text>
+    <text
+       id="text9069"
+       style="letter-spacing:0px;word-spacing:0px;"
+       font-weight="normal"
+       xml:space="preserve"
+       transform="scale(1.061123,0.94239781)"
+       font-size="42.44491959px"
+       font-style="normal"
+       y="953.38422"
+       x="85.319267"
+       font-family="Sans"
+       line-height="125%"
+       fill="#000000"><tspan
+         id="tspan9071"
+         font-size="16.97796822px"
+         y="953.38422"
+         x="85.319267">ParDo2</tspan></text>
+    <text
+       id="text3153"
+       font-size="21.22245979px"
+       font-family="Sans"
+       transform="scale(1.061123,0.94239781)"
+       style="letter-spacing:0px;word-spacing:0px;"
+       line-height="125%"
+       xml:space="preserve"
+       y="686.90991"
+       x="151.91734"
+       font-weight="normal"
+       font-style="normal"
+       fill="#000000"><tspan
+         id="tspan3155"
+         y="686.90991"
+         x="151.91734"
+         font-size="16.97796822px">Input collection to ParDo1:</tspan></text>
+    <text
+       id="text3153-3"
+       font-size="21.22245979px"
+       font-family="Sans"
+       transform="scale(1.061123,0.94239781)"
+       style="letter-spacing:0px;word-spacing:0px;"
+       line-height="125%"
+       xml:space="preserve"
+       y="848.19299"
+       x="150.28938"
+       font-weight="normal"
+       font-style="normal"
+       fill="#000000"><tspan
+         id="tspan3155-1"
+         y="848.19299"
+         x="150.28938"
+         font-size="16.97796822px">Input collection to ParDo2:</tspan></text>
+  </g>
+  <text
+     id="text3163-19-6"
+     style="letter-spacing:0px;word-spacing:0px;"
+     font-family="Sans"
+     xml:space="preserve"
+     font-size="20px"
+     line-height="125%"
+     font-style="normal"
+     y="243.86116"
+     x="168.85825"
+     font-weight="normal"
+     fill="#000000"><tspan
+       id="tspan3165-4-3"
+       y="243.86116"
+       x="168.85825"
+       font-size="14px">Bundle C</tspan></text>
+  <text
+     id="text3163-19-2"
+     style="letter-spacing:0px;word-spacing:0px;"
+     font-family="Sans"
+     xml:space="preserve"
+     font-size="20px"
+     line-height="125%"
+     font-style="normal"
+     y="244.16243"
+     x="286.22314"
+     font-weight="normal"
+     fill="#000000"><tspan
+       id="tspan3165-4-0"
+       y="244.16243"
+       x="286.22314"
+       font-size="14px">Bundle D</tspan></text>
+  <path
+     id="path8330"
+     stroke-linejoin="miter"
+     style="marker-end:url(#marker4605)"
+     d="m106.48,15.5,0,117.4"
+     stroke="#000"
+     stroke-linecap="butt"
+     stroke-width="1px"
+     fill="none" />
+  <path
+     id="path8330-5"
+     stroke-linejoin="miter"
+     style="marker-end:url(#marker4605)"
+     d="m105.72,167.38,0,117.4"
+     stroke="#000"
+     stroke-linecap="butt"
+     stroke-width="1px"
+     fill="none" />
+  <path
+     id="path8522"
+     stroke-linejoin="miter"
+     style="marker-end:url(#marker4605)"
+     d="m105.54,318.99-0.71152,61.191"
+     stroke="#000"
+     stroke-linecap="butt"
+     stroke-width="1px"
+     fill="none" />
+</svg>
diff --git a/content/images/execution_model_bundling_multi_gantt.svg 
b/content/images/execution_model_bundling_multi_gantt.svg
new file mode 100644
index 0000000..547a6d4
--- /dev/null
+++ b/content/images/execution_model_bundling_multi_gantt.svg
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; 
xmlns="http://www.w3.org/2000/svg"; height="222.47" width="640.8" version="1.1" 
xmlns:cc="http://creativecommons.org/ns#"; 
xmlns:dc="http://purl.org/dc/elements/1.1/";>
+ <metadata id="metadata7">
+  <rdf:RDF>
+   <cc:Work rdf:about="">
+    <dc:format>image/svg+xml</dc:format>
+    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+    <dc:title/>
+   </cc:Work>
+  </rdf:RDF>
+ </metadata>
+ <path id="path3207" stroke-linejoin="miter" 
d="m65.786,41.192,0,154.12h436.54" stroke="#000" stroke-linecap="butt" 
stroke-width="0.88588864px" fill="none"/>
+ <g id="g3140-54" 
transform="matrix(2.7741088,0,0,1.2745098,41.451621,-950.10162)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.26591122" 
fill="#d8bfd8">
+  <rect id="rect3025-7-1-9-8-74" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.26591" fill="#d8bfd8"/>
+ </g>
+ <g id="g3140-54-9" 
transform="matrix(1.8497901,0,0,1.2745098,207.10026,-950.10162)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.32563958" 
fill="#9370db">
+  <rect id="rect3025-7-1-9-8-74-5" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.32564" fill="#9370db"/>
+ </g>
+ <g id="g3140-54-1" 
transform="matrix(1.8350217,0,0,1.2745098,54.454778,-891.85754)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.32694733" 
fill="#add8e6">
+  <rect id="rect3025-7-1-9-8-74-7" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.32695" fill="#add8e6"/>
+ </g>
+ <g id="g3140-54-9-6" 
transform="matrix(2.8020374,0,0,1.2745098,141.5615,-891.85754)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="0.26458269" 
fill="#1e90ff">
+  <rect id="rect3025-7-1-9-8-74-5-1" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="0.26458" fill="#1e90ff"/>
+ </g>
+ <text id="text7100" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="27.15625" x="67.671875" font-weight="normal" 
fill="#000000"><tspan id="tspan7104" y="27.15625" x="67.671875" 
style="text-anchor:middle;text-align:center;" 
font-size="16px">Worker</tspan></text>
+ <text id="text6762" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="16px" 
font-style="normal" y="187.24072" x="553.37195" font-weight="normal" 
fill="#000000"><tspan id="tspan6764" y="187.24072" x="553.37195" 
style="text-anchor:middle;text-align:center;">Processing</tspan><tspan 
id="tspan6766" y="207.24072" x="553.37195" 
style="text-anchor:middle;text-align:center;">Time</tspan></text>
+ <g id="g3140-54-1-7" 
transform="matrix(0.51284591,0,0,0.55742729,407.92987,-421.19411)" 
stroke="#000" stroke-dasharray="none" stroke-miterlimit="4" 
stroke-width="1.03240836" fill="#add8e6">
+  <rect id="rect3025-7-1-9-8-74-7-6" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="1.0324" fill="#add8e6"/>
+ </g>
+ <g id="g3140-54-9-6-5" fill="#1e90ff" stroke="#000" 
transform="matrix(0.51711225,0,0,0.59618851,408.10523,-396.76975)">
+  <rect id="rect3025-7-1-9-8-74-5-1-6" height="36.429" width="55" 
stroke="#000" y="806.93" x="14.143" fill="#1e90ff"/>
+ </g>
+ <g id="g3140-54-9-5" 
transform="matrix(0.52769358,0,0,0.5768079,408.0176,-352.22682)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="1.00053561" 
fill="#9370db">
+  <rect id="rect3025-7-1-9-8-74-5-2" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="1.0005" fill="#9370db"/>
+ </g>
+ <path id="path6657-3-5-62-2" stroke-linejoin="miter" 
d="M57.323,162.92h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+ <path id="path6657-3-5-62-2-5" stroke-linejoin="miter" 
d="M58.735,102.91h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+ <text id="text7065" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="108.07944" x="43.947361" font-weight="normal" 
fill="#000000"><tspan id="tspan7067" y="108.07944" x="43.947361" 
font-size="14px">2</tspan></text>
+ <text id="text7065-4" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="167.8378" x="43.831757" font-weight="normal" 
fill="#000000"><tspan id="tspan7067-7" y="167.8378" x="43.831757" 
font-size="14px">1</tspan></text>
+ <text id="text9219" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="43.542969" x="455.73755" font-weight="normal" 
fill="#000000"><tspan id="tspan9221" y="43.542969" x="455.73755" 
font-size="12px">Bundle A (ParDo1 input)</tspan></text>
+ <text id="text9219-4" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="98.928284" x="455.15936" font-weight="normal" 
fill="#000000"><tspan id="tspan9221-4" y="98.928284" x="455.15936" 
font-size="12px">Bundle C (ParDo2 input)</tspan></text>
+ <text id="text9219-3" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="70.64399" x="455.15939" font-weight="normal" 
fill="#000000"><tspan id="tspan9221-0" y="70.64399" x="455.15939" 
font-size="12px">Bundle B (ParDo1 input)</tspan></text>
+ <text id="text9219-7" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="40px" 
font-style="normal" y="126.50546" x="455.86649" font-weight="normal" 
fill="#000000"><tspan id="tspan9221-8" y="126.50546" x="455.86649" 
font-size="12px">Bundle D (ParDo2 input)</tspan></text>
+ <g id="g3140-54-9-5-9" 
transform="matrix(0.52769358,0,0,0.5768079,407.23906,-409.04606)" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" stroke-width="1.00053561" 
fill="#d8bfd8">
+  <rect id="rect3025-7-1-9-8-74-5-2-6" stroke-dasharray="none" height="36.429" 
width="55" stroke="#000" stroke-miterlimit="4" y="806.93" x="14.143" 
stroke-width="1.0005" fill="#d8bfd8"/>
+ </g>
+ <text id="text3163-19" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="20px" 
y="165.46114" x="98.791801" font-weight="normal" font-style="normal" 
fill="#000000"><tspan id="tspan3165-4" y="165.46114" x="98.791801" 
font-size="14px">Bundle A</tspan></text>
+ <text id="text3163-19-6" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="20px" 
y="164.04692" x="224.87898" font-weight="normal" font-style="normal" 
fill="#000000"><tspan id="tspan3165-4-3" y="164.04692" x="224.87898" 
font-size="14px">Bundle C</tspan></text>
+ <text id="text3163-1-7" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="20px" 
y="107.47837" x="126.0857" font-weight="normal" font-style="normal" 
fill="#000000"><tspan id="tspan3165-8-8" y="107.47837" x="126.0857" 
font-size="14px">Bundle B</tspan></text>
+ <text id="text3163-19-2" style="letter-spacing:0px;word-spacing:0px;" 
line-height="125%" font-family="Sans" xml:space="preserve" font-size="20px" 
y="106.77127" x="253.40208" font-weight="normal" font-style="normal" 
fill="#000000"><tspan id="tspan3165-4-0" y="106.77127" x="253.40208" 
font-size="14px">Bundle D</tspan></text>
+</svg>
diff --git a/content/images/execution_model_failure_retry.svg 
b/content/images/execution_model_failure_retry.svg
new file mode 100644
index 0000000..1e8a68c
--- /dev/null
+++ b/content/images/execution_model_failure_retry.svg
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"; 
xmlns="http://www.w3.org/2000/svg"; height="248.27" width="601.9" version="1.1" 
xmlns:cc="http://creativecommons.org/ns#"; 
xmlns:dc="http://purl.org/dc/elements/1.1/";>
+ <metadata id="metadata7">
+  <rdf:RDF>
+   <cc:Work rdf:about="">
+    <dc:format>image/svg+xml</dc:format>
+    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+    <dc:title/>
+   </cc:Work>
+  </rdf:RDF>
+ </metadata>
+ <path id="path3207-9" stroke-linejoin="miter" 
d="m65.98,68.662,0,151.23h360.38" stroke="#000" stroke-linecap="butt" 
stroke-width="0.79734099px" fill="none"/>
+ <text id="text7100" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="56.552471" x="67.671875" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan7104" 
style="text-anchor:middle;text-align:center;" font-size="16px" y="56.552471" 
x="67.671875">Worker</tspan></text>
+ <text id="text6762" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="16px" font-style="normal" 
y="213.0417" x="478.54456" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan6764" 
style="text-anchor:middle;text-align:center;" y="213.0417" 
x="478.54456">Processing</tspan><tspan id="tspan6766" 
style="text-anchor:middle;text-align:center;" y="233.0417" 
x="478.54456">Time</tspan></text>
+ <text id="text9219" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="32.49892" x="378.46069" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan9221" font-size="12px" y="32.49892" 
x="378.46069">Bundle A</tspan></text>
+ <rect id="rect3025-7-19-4-92" height="22.065" width="27.454" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="41.803" x="340.93" 
stroke-width="0.5" fill="#add8e6"/>
+ <text id="text9219-0" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="56.003277" x="378.46069" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan9221-6" font-size="12px" y="56.003277" 
x="378.46069">Bundle B</tspan></text>
+ <text id="text7065" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="140.70111" x="44.729984" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan7067" font-size="14px" y="140.70111" 
x="44.729984">2</tspan></text>
+ <text id="text7065-4" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="193.45233" x="45.071857" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan7067-7" font-size="14px" y="193.45233" 
x="45.071857">1</tspan></text>
+ <path id="path6657-3-5-62-2-5" stroke-linejoin="miter" 
d="m59.774,134.81h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+ <path id="path6657-3-5-62-2-5-1" stroke-linejoin="miter" 
d="m60.427,187.7h11.088" stroke="#000" stroke-linecap="butt" 
stroke-width="1.09913433px" fill="none"/>
+ <text id="text9219-0-2" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="83.930176" x="378.79578" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan9221-6-7" font-size="12px" y="83.930176" 
x="378.79578">Element processing successful</tspan></text>
+ <text id="text9219-0-2-1" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="104.47797" x="378.26312" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan9221-6-7-0" font-size="12px" y="104.47797" 
x="378.26312">Element awaiting processing</tspan></text>
+ <text id="text9219-0-2-6" style="letter-spacing:0px;word-spacing:0px;" 
font-weight="normal" xml:space="preserve" font-size="40px" font-style="normal" 
y="124.71785" x="378.26312" font-family="Sans" line-height="125%" 
fill="#000000"><tspan id="tspan9221-6-7-1" font-size="12px" y="124.71785" 
x="378.26312">Element processing failed</tspan></text>
+ <path id="path3029-9-9-5" 
d="m359.12,79.622c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-06-64-9" 
d="m358.47,99.862c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#FF0"/>
+ <rect id="rect3025-7-19-4-92-2" height="22.065" width="27.454" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="15.25" x="340.8" 
stroke-width="0.5" fill="#d8bfd8"/>
+ <rect id="rect3025-0" height="36.608" width="27.716" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="82.188" 
stroke-width="0.88569" fill="#d8bfd8"/>
+ <rect id="rect3025-0-0" height="36.608" width="27.716" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="137.94" 
stroke-width="0.88569" fill="#d8bfd8"/>
+ <rect id="rect3025-0-4" height="36.608" width="27.716" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="110.06" 
stroke-width="0.88569" fill="#d8bfd8"/>
+ <rect id="rect3025-0-44" height="36.608" width="27.716" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="193.69" 
stroke-width="0.88569" fill="#d8bfd8"/>
+ <rect id="rect3025-0-47" height="36.608" width="27.716" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="165.82" 
stroke-width="0.88569" fill="#d8bfd8"/>
+ <rect id="rect3025-0-47-6" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="232.45" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-3" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="286.21" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-1" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="259.04" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-7" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="168.59" x="313.86" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-6-1" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="117.01" x="100.23" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-3-7" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="117.01" x="154" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-1-8" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="117.01" x="126.83" 
stroke-width="0.8837" fill="#add8e6"/>
+ <rect id="rect3025-0-47-7-5" height="36.612" width="27.589" stroke="#000" 
stroke-dasharray="none" stroke-miterlimit="4" y="117.01" x="181.65" 
stroke-width="0.8837" fill="#add8e6"/>
+ <path id="path3029-06-64-9-3" 
d="m198.85,135.97c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#FF0"/>
+ <path id="path3029-9-9-5-8" 
d="m117.89,135.97c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-6" 
d="m144.01,135.97c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-0" 
d="m99.609,187.55c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-4" 
d="m156.41,186.9c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-88" 
d="m127.68,186.9c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-89" 
d="m183.83,187.55c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-7" 
d="m211.91,187.55c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-76" 
d="m249.12,187.55c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-43" 
d="m276.54,187.55c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-03" 
d="m305.27,186.9c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <path id="path3029-9-9-5-09" 
d="m332.04,186.9c0,2.3669-1.9188,4.2857-4.2857,4.2857s-4.2857-1.9188-4.2857-4.2857c0.001-2.367,1.919-4.286,4.286-4.286,2.3669,0,4.2857,1.9188,4.2857,4.2857z"
 stroke="#000" stroke-miterlimit="4" stroke-dasharray="none" stroke-width="0.5" 
fill="#32cd32"/>
+ <text id="text18024-8" style="letter-spacing:0px;word-spacing:0px;" 
font-family="Sans" font-weight="normal" xml:space="preserve" 
stroke-dasharray="none" transform="scale(0.97018693,1.0307292)" 
stroke="#000000" stroke-miterlimit="4" font-size="36.6902771px" 
font-style="normal" y="121.74629" x="359.76794" stroke-width="0.18345138" 
line-height="125%" fill="#000000"><tspan id="tspan18026-9" 
stroke-width="0.18345138" stroke-dasharray="none" font-size="14.67611027px" 
stroke="#000000" stroke-m [...]
+ <text id="text18024-8-8" style="letter-spacing:0px;word-spacing:0px;" 
font-family="Sans" font-weight="normal" xml:space="preserve" 
stroke-dasharray="none" transform="scale(0.97018693,1.0307292)" 
stroke="#000000" stroke-miterlimit="4" font-size="36.6902771px" 
font-style="normal" y="137.26543" x="166.62782" stroke-width="0.18345138" 
line-height="125%" fill="#000000"><tspan id="tspan18026-9-0" 
stroke-width="0.18345138" stroke-dasharray="none" font-size="14.67611027px" 
stroke="#000000" stro [...]
+</svg>
diff --git a/content/images/logos/runners/jstorm.png 
b/content/images/logos/runners/jstorm.png
new file mode 100644
index 0000000..c0435db
Binary files /dev/null and b/content/images/logos/runners/jstorm.png differ
diff --git a/src/documentation/runners/mapreduce.md 
b/src/documentation/runners/mapreduce.md
index f863ca5..fb32848 100644
--- a/src/documentation/runners/mapreduce.md
+++ b/src/documentation/runners/mapreduce.md
@@ -1,6 +1,7 @@
 ---
 layout: default
 title: "Apache Hadoop MapReduce Runner"
+permalink: /documentation/runners/mapreduce/
 ---
 # Using the Apache Hadoop MapReduce Runner
 

-- 
To stop receiving notification emails like this one, please contact
"commits@beam.apache.org" <commits@beam.apache.org>.

Reply via email to