This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 81925bd Publishing website 2019/12/11 17:54:29 at commit f1d95d5
81925bd is described below
commit 81925bdccb04691326efbcf87014d24c9d0de099
Author: jenkins <[email protected]>
AuthorDate: Wed Dec 11 17:54:30 2019 +0000
Publishing website 2019/12/11 17:54:29 at commit f1d95d5
---
.../pipelines/design-your-pipeline/index.html | 16 ++-
.../documentation/programming-guide/index.html | 34 +++---
.../get-started/wordcount-example/index.html | 2 +-
.../design-your-pipeline-additional-outputs.png | Bin 32797 -> 0 bytes
.../design-your-pipeline-additional-outputs.svg | 89 ++++++++++++++
.../images/design-your-pipeline-flatten.png | Bin 47858 -> 0 bytes
.../images/design-your-pipeline-flatten.svg | 115 ++++++++++++++++++
.../images/design-your-pipeline-join.png | Bin 41878 -> 0 bytes
.../images/design-your-pipeline-join.svg | 98 +++++++++++++++
.../images/design-your-pipeline-linear.png | Bin 15218 -> 0 bytes
.../images/design-your-pipeline-linear.svg | 98 +++++++++++++++
.../design-your-pipeline-multiple-pcollections.png | Bin 39095 -> 0 bytes
.../design-your-pipeline-multiple-pcollections.svg | 99 +++++++++++++++
.../images/unwindowed-pipeline-bounded.png | Bin 9589 -> 0 bytes
.../images/unwindowed-pipeline-bounded.svg | 100 ++++++++++++++++
.../images/windowing-pipeline-bounded.png | Bin 13325 -> 0 bytes
.../images/windowing-pipeline-bounded.svg | 120 +++++++++++++++++++
.../images/windowing-pipeline-unbounded.png | Bin 21890 -> 0 bytes
.../images/windowing-pipeline-unbounded.svg | 120 +++++++++++++++++++
.../images/wordcount-pipeline.png | Bin 19220 -> 0 bytes
.../images/wordcount-pipeline.svg | 133 +++++++++++++++++++++
21 files changed, 996 insertions(+), 28 deletions(-)
diff --git
a/website/generated-content/documentation/pipelines/design-your-pipeline/index.html
b/website/generated-content/documentation/pipelines/design-your-pipeline/index.html
index 9c3a551..12b2f23 100644
---
a/website/generated-content/documentation/pipelines/design-your-pipeline/index.html
+++
b/website/generated-content/documentation/pipelines/design-your-pipeline/index.html
@@ -522,10 +522,9 @@ limitations under the License.
<h2 id="a-basic-pipeline">A basic pipeline</h2>
-<p>The simplest pipelines represent a linear flow of operations, as shown in
figure
-1.</p>
+<p>The simplest pipelines represent a linear flow of operations, as shown in
figure 1.</p>
-<p><img src="/images/design-your-pipeline-linear.png" alt="A linear pipeline
starts with one input collection, sequentially applies
+<p><img src="/images/design-your-pipeline-linear.svg" alt="A linear pipeline
starts with one input collection, sequentially applies
three transforms, and ends with one output collection." /></p>
<p><em>Figure 1: A linear pipeline.</em></p>
@@ -542,7 +541,7 @@ limitations under the License.
<p>The pipeline in figure 2 is a branching pipeline. The pipeline reads its
input (first names represented as strings) from a database table and creates a
<code class="highlighter-rouge">PCollection</code> of table rows. Then, the
pipeline applies multiple transforms to the <strong>same</strong> <code
class="highlighter-rouge">PCollection</code>. Transform A extracts all the
names in that <code class="highlighter-rouge">PCollection</code> that start
with the letter ‘A’, and Transform B e [...]
-<p><img src="/images/design-your-pipeline-multiple-pcollections.png" alt="The
pipeline applies two transforms to a single input collection. Each
+<p><img src="/images/design-your-pipeline-multiple-pcollections.svg" alt="The
pipeline applies two transforms to a single input collection. Each
transform produces an output collection." /></p>
<p><em>Figure 2: A branching pipeline. Two transforms are applied to a single
@@ -577,7 +576,7 @@ PCollection of database table rows.</em></p>
<p>Figure 3 illustrates the same example described above, but with one
transform that produces multiple outputs. Names that start with ‘A’ are added
to the main output <code class="highlighter-rouge">PCollection</code>, and
names that start with ‘B’ are added to an additional output <code
class="highlighter-rouge">PCollection</code>.</p>
-<p><img src="/images/design-your-pipeline-additional-outputs.png" alt="The
pipeline applies one transform that produces multiple output collections."
/></p>
+<p><img src="/images/design-your-pipeline-additional-outputs.svg" alt="The
pipeline applies one transform that produces multiple output collections."
/></p>
<p><em>Figure 3: A pipeline with a transform that outputs multiple
PCollections.</em></p>
@@ -653,10 +652,9 @@ single <code class="highlighter-rouge">PCollection</code>
that now contains all
‘B’. Here, it makes sense to use <code
class="highlighter-rouge">Flatten</code> because the <code
class="highlighter-rouge">PCollection</code>s being
merged both contain the same type.</p>
-<p><img src="/images/design-your-pipeline-flatten.png" alt="The pipeline
merges two collections into one collection with the Flatten transform." /></p>
+<p><img src="/images/design-your-pipeline-flatten.svg" alt="The pipeline
merges two collections into one collection with the Flatten transform." /></p>
-<p><em>Figure 4: A pipeline that merges two collections into one collection
with the Flatten
-transform.</em></p>
+<p><em>Figure 4: A pipeline that merges two collections into one collection
with the Flatten transform.</em></p>
<p>The following example code applies <code
class="highlighter-rouge">Flatten</code> to merge two collections.</p>
@@ -673,7 +671,7 @@ transform.</em></p>
<p>Your pipeline can read its input from one or more sources. If your pipeline
reads from multiple sources and the data from those sources is related, it can
be useful to join the inputs together. In the example illustrated in figure 5
below, the pipeline reads names and addresses from a database table, and names
and order numbers from a Kafka topic. The pipeline then uses <code
class="highlighter-rouge">CoGroupByKey</code> to join this information, where
the key is the name; the resulti [...]
-<p><img src="/images/design-your-pipeline-join.png" alt="The pipeline joins
two input collections into one collection with the Join transform." /></p>
+<p><img src="/images/design-your-pipeline-join.svg" alt="The pipeline joins
two input collections into one collection with the Join transform." /></p>
<p><em>Figure 5: A pipeline that does a relational join of two input
collections.</em></p>
diff --git
a/website/generated-content/documentation/programming-guide/index.html
b/website/generated-content/documentation/programming-guide/index.html
index c3f0ca1..e73af5e 100644
--- a/website/generated-content/documentation/programming-guide/index.html
+++ b/website/generated-content/documentation/programming-guide/index.html
@@ -1031,9 +1031,7 @@ nested within (called <a
href="#composite-transforms">composite transforms</a> i
SDKs).</p>
<p>How you apply your pipeline’s transforms determines the structure of your
-pipeline. The best way to think of your pipeline is as a directed acyclic
graph,
-where the nodes are <code class="highlighter-rouge">PCollection</code>s and
the edges are transforms. For example,
-you can chain transforms to create a sequential pipeline, like this one:</p>
+pipeline. The best way to think of your pipeline is as a directed acyclic
graph, where <code class="highlighter-rouge">PTransform</code> nodes are
subroutines that accept <code class="highlighter-rouge">PCollection</code>
nodes as inputs and emit <code class="highlighter-rouge">PCollection</code>
nodes as outputs. For example, you can chain together transforms to create a
pipeline that successively modifies input data:</p>
<div class="language-java highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="o">[</span><span class="n">Final</span>
<span class="n">Output</span> <span class="n">PCollection</span><span
class="o">]</span> <span class="o">=</span> <span class="o">[</span><span
class="n">Initial</span> <span class="n">Input</span> <span
class="n">PCollection</span><span class="o">].</span><span
class="na">apply</span><span class="o">([</span><span class="n">First</span> <s
[...]
<span class="o">.</span><span class="na">apply</span><span
class="o">([</span><span class="n">Second</span> <span
class="n">Transform</span><span class="o">])</span>
@@ -1044,12 +1042,12 @@ you can chain transforms to create a sequential
pipeline, like this one:</p>
<span class="o">|</span> <span class="p">[</span><span
class="n">Third</span> <span class="n">Transform</span><span class="p">])</span>
</code></pre></div></div>
-<p>The resulting workflow graph of the above pipeline looks like this.</p>
+<p>The graph of this pipeline looks like the following:</p>
-<p><img src="/images/design-your-pipeline-linear.png" alt="This linear
pipeline starts with one input collection, sequentially applies
+<p><img src="/images/design-your-pipeline-linear.svg" alt="This linear
pipeline starts with one input collection, sequentially applies
three transforms, and ends with one output collection." /></p>
-<p><em>Figure: A linear pipeline with three sequential transforms.</em></p>
+<p><em>Figure 1: A linear pipeline with three sequential transforms.</em></p>
<p>However, note that a transform <em>does not consume or otherwise alter</em>
the input
collection–remember that a <code class="highlighter-rouge">PCollection</code>
is immutable by definition. This means
@@ -1065,12 +1063,12 @@ a branching pipeline, like so:</p>
<span class="p">[</span><span class="n">PCollection</span> <span
class="n">of</span> <span class="s">'B'</span> <span
class="n">names</span><span class="p">]</span> <span class="o">=</span> <span
class="p">[</span><span class="n">PCollection</span> <span class="n">of</span>
<span class="n">database</span> <span class="n">table</span> <span
class="n">rows</span><span class="p">]</span> <span class="o">|</span> <span
class="p">[</span><span class="n">Transform</span> <span class="n">B</spa [...]
</code></pre></div></div>
-<p>The resulting workflow graph from the branching pipeline above looks like
this.</p>
+<p>The graph of this branching pipeline looks like the following:</p>
-<p><img src="/images/design-your-pipeline-multiple-pcollections.png" alt="This
pipeline applies two transforms to a single input collection. Each
+<p><img src="/images/design-your-pipeline-multiple-pcollections.svg" alt="This
pipeline applies two transforms to a single input collection. Each
transform produces an output collection." /></p>
-<p><em>Figure: A branching pipeline. Two transforms are applied to a single
+<p><em>Figure 2: A branching pipeline. Two transforms are applied to a single
PCollection of database table rows.</em></p>
<p>You can also build your own <a href="#composite-transforms">composite
transforms</a> that
@@ -2990,9 +2988,9 @@ windows are not considered until <code
class="highlighter-rouge">GroupByKey</cod
window and key. This can have different effects on your pipeline. Consider the
example pipeline in the figure below:</p>
-<p><img src="/images/windowing-pipeline-unbounded.png" alt="Diagram of
pipeline applying windowing" title="Pipeline applying windowing" /></p>
+<p><img src="/images/windowing-pipeline-unbounded.svg" alt="Diagram of
pipeline applying windowing" title="Pipeline applying windowing" /></p>
-<p><strong>Figure:</strong> Pipeline applying windowing</p>
+<p><strong>Figure 3:</strong> Pipeline applying windowing</p>
<p>In the above pipeline, we create an unbounded <code
class="highlighter-rouge">PCollection</code> by reading a set of
key/value pairs using <code class="highlighter-rouge">KafkaIO</code>, and then
apply a windowing function to that
@@ -3020,9 +3018,9 @@ transform in the Beam SDK for Java).</p>
<p>To illustrate how windowing with a bounded <code
class="highlighter-rouge">PCollection</code> can affect how your
pipeline processes data, consider the following pipeline:</p>
-<p><img src="/images/unwindowed-pipeline-bounded.png" alt="Diagram of
GroupByKey and ParDo without windowing, on a bounded collection"
title="GroupByKey and ParDo without windowing, on a bounded collection" /></p>
+<p><img src="/images/unwindowed-pipeline-bounded.svg" alt="Diagram of
GroupByKey and ParDo without windowing, on a bounded collection"
title="GroupByKey and ParDo without windowing, on a bounded collection" /></p>
-<p><strong>Figure:</strong> <code class="highlighter-rouge">GroupByKey</code>
and <code class="highlighter-rouge">ParDo</code> without windowing, on a
bounded collection.</p>
+<p><strong>Figure 4:</strong> <code
class="highlighter-rouge">GroupByKey</code> and <code
class="highlighter-rouge">ParDo</code> without windowing, on a bounded
collection.</p>
<p>In the above pipeline, we create a bounded <code
class="highlighter-rouge">PCollection</code> by reading a set of
key/value pairs using <code class="highlighter-rouge">TextIO</code>. We then
group the collection using <code class="highlighter-rouge">GroupByKey</code>,
@@ -3035,9 +3033,9 @@ all elements in your <code
class="highlighter-rouge">PCollection</code> are assi
<p>Now, consider the same pipeline, but using a windowing function:</p>
-<p><img src="/images/windowing-pipeline-bounded.png" alt="Diagram of
GroupByKey and ParDo with windowing, on a bounded collection" title="GroupByKey
and ParDo with windowing, on a bounded collection" /></p>
+<p><img src="/images/windowing-pipeline-bounded.svg" alt="Diagram of
GroupByKey and ParDo with windowing, on a bounded collection" title="GroupByKey
and ParDo with windowing, on a bounded collection" /></p>
-<p><strong>Figure:</strong> <code class="highlighter-rouge">GroupByKey</code>
and <code class="highlighter-rouge">ParDo</code> with windowing, on a bounded
collection.</p>
+<p><strong>Figure 5:</strong> <code
class="highlighter-rouge">GroupByKey</code> and <code
class="highlighter-rouge">ParDo</code> with windowing, on a bounded
collection.</p>
<p>As before, the pipeline creates a bounded <code
class="highlighter-rouge">PCollection</code> of key/value pairs. We
then set a <a href="#setting-your-pcollections-windowing-function">windowing
function</a>
@@ -3082,7 +3080,7 @@ the second window, and so on.</p>
<p><img src="/images/fixed-time-windows.png" alt="Diagram of fixed time
windows, 30s in duration" title="Fixed time windows, 30s in duration" /></p>
-<p><strong>Figure:</strong> Fixed time windows, 30s in duration.</p>
+<p><strong>Figure 6:</strong> Fixed time windows, 30s in duration.</p>
<h4 id="sliding-time-windows">7.2.2. Sliding time windows</h4>
@@ -3101,7 +3099,7 @@ example.</p>
<p><img src="/images/sliding-time-windows.png" alt="Diagram of sliding time
windows, with 1 minute window duration and 30s window period" title="Sliding
time windows, with 1 minute window duration and 30s window period" /></p>
-<p><strong>Figure:</strong> Sliding time windows, with 1 minute window
duration and 30s window
+<p><strong>Figure 7:</strong> Sliding time windows, with 1 minute window
duration and 30s window
period.</p>
<h4 id="session-windows">7.2.3. Session windows</h4>
@@ -3116,7 +3114,7 @@ the start of a new window.</p>
<p><img src="/images/session-windows.png" alt="Diagram of session windows with
a minimum gap duration" title="Session windows, with a minimum gap duration"
/></p>
-<p><strong>Figure:</strong> Session windows, with a minimum gap duration. Note
how each data key
+<p><strong>Figure 8:</strong> Session windows, with a minimum gap duration.
Note how each data key
has different windows, according to its data distribution.</p>
<h4 id="single-global-window">7.2.4. The single global window</h4>
diff --git a/website/generated-content/get-started/wordcount-example/index.html
b/website/generated-content/get-started/wordcount-example/index.html
index eadba37..e5fd1ac 100644
--- a/website/generated-content/get-started/wordcount-example/index.html
+++ b/website/generated-content/get-started/wordcount-example/index.html
@@ -445,7 +445,7 @@ input and output data is often represented by the SDK class
<code class="highlig
<code class="highlighter-rouge">PCollection</code> is a special class,
provided by the Beam SDK, that you can use to
represent a dataset of virtually any size, including unbounded datasets.</p>
-<p><img src="/images/wordcount-pipeline.png" alt="The MinimalWordCount
pipeline data flow." width="800px" /></p>
+<p><img src="/images/wordcount-pipeline.svg" alt="The MinimalWordCount
pipeline data flow." width="800px" /></p>
<p><em>Figure 1: The MinimalWordCount pipeline data flow.</em></p>
diff --git
a/website/generated-content/images/design-your-pipeline-additional-outputs.png
b/website/generated-content/images/design-your-pipeline-additional-outputs.png
deleted file mode 100644
index a4fae32..0000000
Binary files
a/website/generated-content/images/design-your-pipeline-additional-outputs.png
and /dev/null differ
diff --git
a/website/generated-content/images/design-your-pipeline-additional-outputs.svg
b/website/generated-content/images/design-your-pipeline-additional-outputs.svg
new file mode 100644
index 0000000..7ed856c
--- /dev/null
+++
b/website/generated-content/images/design-your-pipeline-additional-outputs.svg
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="207px" viewBox="0 0 1158 207" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>A pipeline with a transform that outputs multiple
PCollections.</title>
+ <g id="design-your-pipeline-additional-outputs"
transform="translate(0.000000, 1.000000)">
+ <g id="Branch" transform="translate(676.000000, 32.000000)"
stroke="#3062A8" stroke-width="2" fill="#FFFFFF">
+ <polyline id="Directed-edge" points="0 72 8.75 72 8.75 0 20
0"></polyline>
+ <polyline id="Directed-edge" transform="translate(10.000000,
108.000000) scale(1, -1) translate(-10.000000, -108.000000) " points="0 144
8.75 144 8.75 72 20 72"></polyline>
+ </g>
+ <g id="PCollection" transform="translate(696.000000, 143.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘B’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.3242188" y="22">‘B’ </tspan>
+ <tspan x="7.359375" y="41">names</tspan>
+ </text>
+ </g>
+ <g id="PCollection" transform="translate(696.000000, 0.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘A’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.0859375" y="22">‘A’ </tspan>
+ <tspan x="7.359375" y="41">names</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 40.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="64" y="70">ParDo</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 102.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Line" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 73.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="28">Table </tspan>
+ <tspan x="13.59375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 42.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-database-of-nam" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="33" y="42">Read </tspan>
+ <tspan x="33" y="70">database of </tspan>
+ <tspan x="33" y="98">names</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,103.5 L113,103.5 L113,101.5
L146,101.5 L146,95.5 L160,102.5 L146,109.5 L146,103.5 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 51.000000)">
+ <g id="Database-symbol" transform="translate(0.000000, 0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="17" y="61">Database </tspan>
+ <tspan x="17" y="82">table</tspan>
+ </text>
+ </g>
+ <g id="Legend" transform="translate(0.000000, 183.000000)">
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="155" y="17">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" stroke="#757575" fill="#FFFFFF"
stroke-width="2" cx="140.5" cy="10.5" r="7.5"></circle>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="3" width="15"
height="15"></rect>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/design-your-pipeline-flatten.png
b/website/generated-content/images/design-your-pipeline-flatten.png
deleted file mode 100644
index d07f7e5..0000000
Binary files
a/website/generated-content/images/design-your-pipeline-flatten.png and
/dev/null differ
diff --git a/website/generated-content/images/design-your-pipeline-flatten.svg
b/website/generated-content/images/design-your-pipeline-flatten.svg
new file mode 100644
index 0000000..c354cd7
--- /dev/null
+++ b/website/generated-content/images/design-your-pipeline-flatten.svg
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="266px" viewBox="0 0 1158 266" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>A pipeline that merges two collections into one collection with the
Flatten transform.</title>
+ <g id="design-your-pipeline-flatten">
+ <path d="M1012,121 L1012,141" id="Directed-edge" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(1012.000000,
131.000000) rotate(-90.000000) translate(-1012.000000, -131.000000) "></path>
+ <g id="PCollection" transform="translate(1024.000000, 97.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="34.5" cy="34.5" r="34.5"></circle>
+ <text id="‘A’-+-‘B’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="9.4140625" y="31">‘A’ + ‘B’ </tspan>
+ <tspan x="10.359375" y="50">names</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(808.000000, 70.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Flatten" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="60" y="70">Flatten</tspan>
+ </text>
+ </g>
+ <g id="Merge" transform="translate(678.000000, 60.000000)">
+ <path id="Directed-edge" d="M116,73 L105.125,73 L105.125,147
L84,147 L84,145 L103.125,145 L103.125,71 L116,71 L116,65 L130,72 L116,79
L116,73 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path id="Directed-edge" d="M116,73 L103.125,73 L103.125,2 L84,2
L84,0 L105.125,0 L105.125,71 L116,71 L116,65 L130,72 L116,79 L116,73 Z"
fill="#757575" fill-rule="nonzero"></path>
+ <path d="M10,-9 L10,11" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(10.000000,
1.000000) rotate(-90.000000) translate(-10.000000, -1.000000) "></path>
+ <path d="M10,135 L10,155" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(10.000000,
145.000000) rotate(-90.000000) translate(-10.000000, -145.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(700.000000, 30.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘A’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.5859375" y="23">‘A’ </tspan>
+ <tspan x="7.859375" y="42">names</tspan>
+ </text>
+ </g>
+ <g id="PCollection" transform="translate(700.000000, 173.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘B’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.3242188" y="23">‘B’ </tspan>
+ <tspan x="7.359375" y="42">names</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(483.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo-(extract-strin" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="20" y="40">ParDo (extract </tspan>
+ <tspan x="20" y="67">strings starting </tspan>
+ <tspan x="20" y="94">with ‘A’)</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(483.000000, 142.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo-(extract-strin" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="20" y="43">ParDo (extract </tspan>
+ <tspan x="20" y="70">strings starting </tspan>
+ <tspan x="20" y="97">with ‘B’)</tspan>
+ </text>
+ </g>
+ <g id="Branch" transform="translate(353.000000, 61.000000)">
+ <path id="Directed-edge" d="M115.983293,144.729332
L103.125,144.480863 L103.125,73 L84,73 L84,71 L105.125,71 L105.125,142.519137
L116.021933,142.729706 L116.137854,136.730826 L130,144 L115.867373,150.728213
L115.983293,144.729332 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path id="Directed-edge" d="M116,1 L105.125,1 L105.125,73 L84,73
L84,71 L103.125,71 L103.125,-1 L116,-1 L116,-7 L130,0 L116,7 L116,1 Z"
fill="#757575" fill-rule="nonzero"></path>
+ <path d="M11,63 L11,83" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
73.000000) rotate(-90.000000) translate(-11.000000, -73.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 103.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="27">Table </tspan>
+ <tspan x="13.59375" y="46">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 72.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-database-of-nam" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="17" y="56">Read database </tspan>
+ <tspan x="17" y="84">of names</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,133.5 L113,133.5 L113,131.5
L146,131.5 L146,125.5 L160,132.5 L146,139.5 L146,133.5 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 82.000000)">
+ <g id="Database-symbol">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="84" rx="56.5"
ry="18"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="18" width="113"
height="66"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="18" rx="56.5"
ry="18"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="22" y="61">Database </tspan>
+ <tspan x="22" y="82">table</tspan>
+ </text>
+ </g>
+ <g id="Legend" transform="translate(0.000000, 214.000000)">
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="155" y="17">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" stroke="#757575" fill="#FFFFFF"
stroke-width="2" cx="140.5" cy="10.5" r="7.5"></circle>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="3" width="15"
height="15"></rect>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/design-your-pipeline-join.png
b/website/generated-content/images/design-your-pipeline-join.png
deleted file mode 100644
index b7ccb9f..0000000
Binary files a/website/generated-content/images/design-your-pipeline-join.png
and /dev/null differ
diff --git a/website/generated-content/images/design-your-pipeline-join.svg
b/website/generated-content/images/design-your-pipeline-join.svg
new file mode 100644
index 0000000..41ca394
--- /dev/null
+++ b/website/generated-content/images/design-your-pipeline-join.svg
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="333px" viewBox="0 0 1158 333" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>A pipeline that does a relational join of two input
collections.</title>
+ <g id="design-your-pipeline-join">
+ <g id="PTransform" transform="translate(160.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-database" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="41" y="55">Read from </tspan>
+ <tspan x="41" y="83">database</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 142.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-text-file" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="40" y="56">Read from </tspan>
+ <tspan x="40" y="84">text file</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(496.000000, 39.725000)">
+ <polygon id="Aggregation-PTransform-symbol" fill="#3062A8"
points="128.813953 0 261 91.7333333 128.813953 184 0 92.2666667"></polygon>
+ <text id="Join" font-family="Roboto-Regular, Roboto"
font-size="28" font-weight="normal" fill="#FFFFFF">
+ <tspan x="98.1689453" y="101.275">Join</tspan>
+ </text>
+ </g>
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="815" cy="131" r="37"></circle>
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="413" cy="60" r="36"></circle>
+ <text id="Names-+-addrs." font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="387.570312" y="56">Names</tspan>
+ <tspan x="384.171875" y="75">+ addrs.</tspan>
+ </text>
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="413" cy="205" r="36"></circle>
+ <text id="Names-+-orders" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="387.070312" y="200">Names</tspan>
+ <tspan x="383.132812" y="219">+ orders</tspan>
+ </text>
+ <text id="Names,-orders-+-addr" font-family="Roboto-Regular, Roboto"
font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="790.6875" y="120">Names, </tspan>
+ <tspan x="788.468262" y="138">orders + </tspan>
+ <tspan x="795.082031" y="156">addrs.</tspan>
+ </text>
+ <path d="M766,121.5 L766,141.5" id="Directed-edge" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(766.000000,
131.500000) rotate(-90.000000) translate(-766.000000, -131.500000) "></path>
+ <g id="Merge" transform="translate(354.377439, 60.000000)">
+ <path id="Directed-edge" d="M127.622561,73 L116.747561,73
L116.747561,147 L95,147 L95,145 L114.747561,145 L114.747561,71 L127.622561,71
L127.622561,65 L141.622561,72 L127.622561,79 L127.622561,73 Z" fill="#757575"
fill-rule="nonzero"></path>
+ <path id="Directed-edge" d="M127.622561,73 L114.747561,73
L114.747561,2 L95.6225614,2 L95.6225614,0 L116.747561,0 L116.747561,71
L127.622561,71 L127.622561,65 L141.622561,72 L127.622561,79 L127.622561,73 Z"
fill="#757575" fill-rule="nonzero"></path>
+ <path d="M10.6225614,-9 L10.6225614,11" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(10.622561,
1.000000) rotate(-90.000000) translate(-10.622561, -1.000000) "></path>
+ <path d="M10.6225614,135 L10.6225614,155" id="Line"
stroke="#3062A8" stroke-width="2" stroke-linecap="square"
transform="translate(10.622561, 145.000000) rotate(-90.000000)
translate(-10.622561, -145.000000) "></path>
+ </g>
+ <path id="Directed-edge" d="M146,61.5 L113,61.5 L113,59.5 L146,59.5
L146,53.5 L160,60.5 L146,67.5 L146,61.5 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <path id="Directed-edge" d="M146,205.5 L114,205.5 L114,203.5
L146,203.5 L146,197.5 L160,204.5 L146,211.5 L146,205.5 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 9.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="21" y="60">Database </tspan>
+ <tspan x="21" y="81">table</tspan>
+ </text>
+ </g>
+ <g id="Document" transform="translate(1.000000, 161.000000)">
+ <path d="M0,0 L0,81.1880544 C5.73926173,85.0626848 15.1689615,87
28.2890992,87 C56.5,87 57.2032971,71.8576229 84.878475,71.8576229
C90.6940962,71.8576229 100.067938,74.9677667 113,81.1880544 L113,0 L0,0 Z"
id="Document-symbol" fill="#E0E0E0"></path>
+ <text id="Text-file" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="25" y="43">Text file</tspan>
+ </text>
+ </g>
+ <g id="Legend" transform="translate(1.000000, 278.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="4" width="15"
height="15"></rect>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <text id="Aggregation" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="162" y="17">Aggregating PTransform</tspan>
+ </text>
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="52">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="7.5" cy="46.5" r="7.5"></circle>
+ <path d="M143.364341,5 L154,12.4782609 L143.364341,20
L133,12.5217391 L143.364341,5 Z" id="Rectangle" fill="#3062A8"></path>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/design-your-pipeline-linear.png
b/website/generated-content/images/design-your-pipeline-linear.png
deleted file mode 100644
index a021fe7..0000000
Binary files a/website/generated-content/images/design-your-pipeline-linear.png
and /dev/null differ
diff --git a/website/generated-content/images/design-your-pipeline-linear.svg
b/website/generated-content/images/design-your-pipeline-linear.svg
new file mode 100644
index 0000000..19ba99f
--- /dev/null
+++ b/website/generated-content/images/design-your-pipeline-linear.svg
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="163px" viewBox="0 0 1158 163" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>A simple, linear pipeline.</title>
+ <g id="design-your-pipeline-linear" transform="translate(0.000000,
0.000000)">
+ <g id="Legend" transform="translate(0.000000, 143.000000)">
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="155" y="17">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="140.5" cy="11.5" r="7.5"></circle>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="3" width="15"
height="15"></rect>
+ </g>
+ <path id="Directed-edge" d="M1031,63 L999,63 L999,61 L1031,61 L1031,55
L1045,62 L1031,69 L1031,63 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 11.000000)">
+ <g id="Database-symbol" transform="translate(0.000000, 0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="18" y="61">Database </tspan>
+ <tspan x="18" y="82">table</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(805.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Write-transform" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="44" y="56">Write </tspan>
+ <tspan x="44" y="84">transform</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(675.500000, 60.500000)">
+ <path id="Line" d="M115.5,2.5 L83.5,2.5 L83.5,0.5 L115.5,0.5
L115.5,-5.5 L129.5,1.5 L115.5,8.5 L115.5,2.5 Z" fill="#757575"
fill-rule="nonzero"></path>
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(696.500000, 31.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="PColl." font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="10.6953125" y="36">PColl.</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 0.000000)">
+ <path d="M0,0 L194,0 L194,124 L0,124 L0,0 Z"
id="PTransform-symbol" fill="#3062A8"></path>
+ <text id="Transform" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="41" y="70">Transform</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 60.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Line" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 31.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="PColl." font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="10.1953125" y="36">PColl.</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-transform" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="44" y="56">Read </tspan>
+ <tspan x="44" y="84">transform</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,63 L113,63 L113,61 L146,61 L146,55
L160,62 L146,69 L146,63 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(1045.000000, 11.000000)">
+ <g id="Database-symbol" transform="translate(0.000000, 0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="18" y="61">Database </tspan>
+ <tspan x="18" y="82">table</tspan>
+ </text>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git
a/website/generated-content/images/design-your-pipeline-multiple-pcollections.png
b/website/generated-content/images/design-your-pipeline-multiple-pcollections.png
deleted file mode 100644
index 7eb802b..0000000
Binary files
a/website/generated-content/images/design-your-pipeline-multiple-pcollections.png
and /dev/null differ
diff --git
a/website/generated-content/images/design-your-pipeline-multiple-pcollections.svg
b/website/generated-content/images/design-your-pipeline-multiple-pcollections.svg
new file mode 100644
index 0000000..15314c5
--- /dev/null
+++
b/website/generated-content/images/design-your-pipeline-multiple-pcollections.svg
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="266px" viewBox="0 0 1158 266" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>A branching pipeline. Two transforms are applied to a single
PCollection of database table rows.</title>
+ <g id="design-your-pipeline-multiple-pcollections">
+ <g id="Merge" transform="translate(678.000000, 60.000000)"
stroke="#3062A8" stroke-linecap="square" stroke-width="2">
+ <path d="M10,-9 L10,11" id="Line" transform="translate(10.000000,
1.000000) rotate(-90.000000) translate(-10.000000, -1.000000) "></path>
+ <path d="M10,135 L10,155" id="Line"
transform="translate(10.000000, 145.000000) rotate(-90.000000)
translate(-10.000000, -145.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(700.000000, 30.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘A’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.5859375" y="23">‘A’ </tspan>
+ <tspan x="7.859375" y="42">names</tspan>
+ </text>
+ </g>
+ <g id="PCollection" transform="translate(700.000000, 173.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="‘B’-names" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="23.3242188" y="23">‘B’ </tspan>
+ <tspan x="7.359375" y="42">names</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(483.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo-(extract-strin" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="20" y="40">ParDo (extract </tspan>
+ <tspan x="20" y="67">strings starting </tspan>
+ <tspan x="20" y="94">with ‘A’)</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(483.000000, 142.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo-(extract-strin" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="20" y="43">ParDo (extract </tspan>
+ <tspan x="20" y="70">strings starting </tspan>
+ <tspan x="20" y="97">with ‘B’)</tspan>
+ </text>
+ </g>
+ <g id="Branch" transform="translate(353.000000, 61.000000)">
+ <path id="Directed-edge" d="M115.983293,144.729332
L103.125,144.480863 L103.125,73 L84,73 L84,71 L105.125,71 L105.125,142.519137
L116.021933,142.729706 L116.137854,136.730826 L130,144 L115.867373,150.728213
L115.983293,144.729332 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path id="Directed-edge" d="M116,1 L105.125,1 L105.125,73 L84,73
L84,71 L103.125,71 L103.125,-1 L116,-1 L116,-7 L130,0 L116,7 L116,1 Z"
fill="#757575" fill-rule="nonzero"></path>
+ <path d="M11,63 L11,83" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
73.000000) rotate(-90.000000) translate(-11.000000, -73.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 103.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="27">Table </tspan>
+ <tspan x="13.59375" y="46">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 72.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-database-of-nam" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="17" y="57">Read database </tspan>
+ <tspan x="17" y="85">of names</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,133.5 L113,133.5 L113,131.5
L146,131.5 L146,125.5 L160,132.5 L146,139.5 L146,133.5 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 82.000000)">
+ <g id="Database-symbol">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="84" rx="56.5"
ry="18"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="18" width="113"
height="66"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="18" rx="56.5"
ry="18"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="22" y="61">Database </tspan>
+ <tspan x="22" y="82">table</tspan>
+ </text>
+ </g>
+ <g id="Legend" transform="translate(0.000000, 214.000000)">
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="155" y="17">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" stroke="#757575" fill="#FFFFFF"
stroke-width="2" cx="140.5" cy="11.5" r="7.5"></circle>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="4" width="15"
height="15"></rect>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/unwindowed-pipeline-bounded.png
b/website/generated-content/images/unwindowed-pipeline-bounded.png
deleted file mode 100644
index 7725f34..0000000
Binary files a/website/generated-content/images/unwindowed-pipeline-bounded.png
and /dev/null differ
diff --git a/website/generated-content/images/unwindowed-pipeline-bounded.svg
b/website/generated-content/images/unwindowed-pipeline-bounded.svg
new file mode 100644
index 0000000..ccf7ab1
--- /dev/null
+++ b/website/generated-content/images/unwindowed-pipeline-bounded.svg
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="227px" viewBox="0 0 1158 227" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>GroupByKey and ParDo without windowing, on a bounded
collection.</title>
+ <g id="unwindowed-pipeline-bounded" transform="translate(1.000000,
0.000000)">
+ <g id="Legend" transform="translate(0.000000, 172.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="4" width="15"
height="15"></rect>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <text id="Aggregation" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="162" y="17">Aggregating PTransform</tspan>
+ </text>
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="52">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="7.5" cy="46.5" r="7.5"></circle>
+ <path d="M143.364341,5 L154,12.4782609 L143.364341,20
L133,12.5217391 L143.364341,5 Z" id="Rectangle" fill="#3062A8"></path>
+ </g>
+ <path d="M1072.5,80 L1072.5,100" id="Directed-edge" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(1072.500000,
90.000000) rotate(-90.000000) translate(-1072.500000, -90.000000) "></path>
+ <g id="PCollection" transform="translate(1084.500000, 55.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="35" cy="35" r="35"></circle>
+ <text id="Rows-after-ParDo" font-family="Roboto-Regular, Roboto"
font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="17.1015625" y="21">Rows </tspan>
+ <tspan x="19.8554688" y="39">after </tspan>
+ <tspan x="14.9555664" y="57">ParDo</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(868.000000, 28.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="64.5" y="70">ParDo</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(741.550000, 90.765000)">
+ <path d="M10.5,-9 L10.5,11" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(10.500000,
1.000000) rotate(-90.000000) translate(-10.500000, -1.000000) "></path>
+ <path id="Line" d="M112.45,2.235 L83.45,2.235 L83.45,0.235
L112.45,0.235 L112.45,-5.765 L126.45,1.235 L112.45,8.235 L112.45,2.235 Z"
fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(763.000000, 61.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="30.9530303" cy="31.2207576" r="30.530303"></circle>
+ <text id="Rows-by-key" font-family="Roboto-Regular, Roboto"
font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="12.616714" y="27">Rows </tspan>
+ <tspan x="10.0788722" y="45">by key</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 0.000000)">
+ <polygon id="Aggregation-PTransform-symbol" fill="#3062A8"
points="128.813953 0 261 91.7333333 128.813953 184 0 92.2666667"></polygon>
+ <text id="GroupByKey" font-family="Roboto-Regular, Roboto"
font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="68.5810547" y="99">GroupByKey</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 90.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Path-2" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 61.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="28">Table </tspan>
+ <tspan x="13.59375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 30.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-Kafka-IO" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="44" y="55">Read from </tspan>
+ <tspan x="44" y="83">Kafka IO</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,92 L113,92 L113,90 L146,90 L146,84
L160,91 L146,98 L146,92 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 40.000000)">
+ <g id="Database-symbol" transform="translate(0.000000, 0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="18" y="61">Database </tspan>
+ <tspan x="18" y="82">table</tspan>
+ </text>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/windowing-pipeline-bounded.png
b/website/generated-content/images/windowing-pipeline-bounded.png
deleted file mode 100644
index 198ed11..0000000
Binary files a/website/generated-content/images/windowing-pipeline-bounded.png
and /dev/null differ
diff --git a/website/generated-content/images/windowing-pipeline-bounded.svg
b/website/generated-content/images/windowing-pipeline-bounded.svg
new file mode 100644
index 0000000..743fe2e
--- /dev/null
+++ b/website/generated-content/images/windowing-pipeline-bounded.svg
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1175px" height="443px" viewBox="0 0 1175 443" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>GroupByKey and ParDo with windowing, on a bounded
collection.</title>
+ <g id="windowing-pipeline-bounded" transform="translate(1.000000,
0.000000)">
+ <path d="M204.5,296 L204.5,316" id="Directed-edge" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(204.500000,
306.000000) rotate(-90.000000) translate(-204.500000, -306.000000) "></path>
+ <g id="PCollection" transform="translate(214.000000, 271.000000)">
+ <circle id="PCollection-symbol" stroke="#757575"
stroke-width="2" fill="#FFFFFF" cx="35" cy="35" r="35"></circle>
+ <text id="Rows-after-ParDo" font-family="Roboto-Regular,
Roboto" font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="17.1015625" y="21">Rows </tspan>
+ <tspan x="19.8554688" y="39">after </tspan>
+ <tspan x="14.9555664" y="57">ParDo</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(0.000000, 244.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="64.5" y="70">ParDo</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(90.550000, 90.765000)">
+ <path id="Line" d="M-0.55,139.235 L-0.55,127.735
L1036.45058,127.735 L1036.5,42.4994202 L1038.5,42.5005798 L1038.44942,129.735
L1.45,129.735 L1.45,139.235 L7.45,139.235 L0.45,153.235 L-6.55,139.235
L-0.55,139.235 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path d="M983.5,-9 L983.5,11" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(983.500000,
1.000000) rotate(-90.000000) translate(-983.500000, -1.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(1085.550000, 48.265000)">
+ <circle id="PCollection-symbol" stroke="#757575"
stroke-width="2" fill="#FFFFFF" cx="42.5" cy="42.5" r="42.5"></circle>
+ <text id="Grouped-by-key-and-w" font-family="Roboto-Regular,
Roboto" font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="14.0307617" y="30">Grouped </tspan>
+ <tspan x="7.25952148" y="48">by key and </tspan>
+ <tspan x="16.7626953" y="66">window</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(804.000000, 0.000000)">
+ <polygon id="Aggregation-PTransform-symbol" fill="#3062A8"
points="128.813953 0 261 91.7333333 128.813953 184 0 92.2666667"></polygon>
+ <text id="GroupByKey-(per-wind" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="67.6310547" y="84.265">GroupByKey </tspan>
+ <tspan x="63.374707" y="111.265">(per window)</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(675.500000, 90.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Path-2" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5
L115,-5.5 L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575"
fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(696.500000, 61.000000)">
+ <circle id="PCollection-symbol" stroke="#757575"
stroke-width="2" fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.7070312" y="28">Table </tspan>
+ <tspan x="14.09375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 30.000000)">
+ <path d="M0,0 L194,0 L194,124 L0,124 L0,0 Z"
id="PTransform-symbol" fill="#3062A8"></path>
+ <text id="Apply-windows" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="48" y="54">Apply </tspan>
+ <tspan x="48" y="82">windows</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 90.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Path-2" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5
L115,-5.5 L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575"
fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 61.000000)">
+ <circle id="PCollection-symbol" stroke="#757575"
stroke-width="2" fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="28">Table </tspan>
+ <tspan x="13.59375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 30.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-Kafka-IO" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="44" y="55">Read from </tspan>
+ <tspan x="44" y="83">Kafka IO</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,92 L113,92 L113,90 L146,90 L146,84
L160,91 L146,98 L146,92 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 40.000000)">
+ <g id="Database-symbol" transform="translate(0.000000,
0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="18" y="61">Database </tspan>
+ <tspan x="18" y="82">table</tspan>
+ </text>
+ </g>
+ <g id="Legend" transform="translate(0.000000, 388.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="4"
width="15" height="15"></rect>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <text id="Aggregation" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="162" y="17">Aggregating PTransform</tspan>
+ </text>
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="52">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="7.5" cy="46.5" r="7.5"></circle>
+ <path d="M143.364341,5 L154,12.4782609 L143.364341,20
L133,12.5217391 L143.364341,5 Z" id="Rectangle" fill="#3062A8"></path>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/windowing-pipeline-unbounded.png
b/website/generated-content/images/windowing-pipeline-unbounded.png
deleted file mode 100644
index b5c5ee0..0000000
Binary files
a/website/generated-content/images/windowing-pipeline-unbounded.png and
/dev/null differ
diff --git a/website/generated-content/images/windowing-pipeline-unbounded.svg
b/website/generated-content/images/windowing-pipeline-unbounded.svg
new file mode 100644
index 0000000..ef8a0dd
--- /dev/null
+++ b/website/generated-content/images/windowing-pipeline-unbounded.svg
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="468px" viewBox="0 0 1158 468" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Pipeline applying windowing.</title>
+ <g id="windowing-pipeline-unbounded" transform="translate(1.000000,
0.000000)">
+ <g id="Legend" transform="translate(0.000000, 413.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="4"
width="15" height="15"></rect>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <text id="Aggregation" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="162" y="17">Aggregating PTransform</tspan>
+ </text>
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="52">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="7.5" cy="46.5" r="7.5"></circle>
+ <path d="M143.364341,5 L154,12.4782609 L143.364341,20
L133,12.5217391 L143.364341,5 Z" id="Rectangle" fill="#3062A8"></path>
+ </g>
+ <path d="M270.05,290.765 L270.05,310.765" id="Directed-edge"
stroke="#3062A8" stroke-width="2" stroke-linecap="square"
transform="translate(270.050000, 300.765000) rotate(-90.000000)
translate(-270.050000, -300.765000) "></path>
+ <g id="PCollection" transform="translate(281.550000, 257.265000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="42.5" cy="42.5" r="42.5"></circle>
+ <text id="Grouped-by-key-and-w" font-family="Roboto-Regular,
Roboto" font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="14.0307617" y="30">Grouped </tspan>
+ <tspan x="7.25952148" y="48">by key and </tspan>
+ <tspan x="16.7626953" y="66">window</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(0.000000, 209.000000)">
+ <polygon id="Aggregation-PTransform-symbol" fill="#3062A8"
points="128.813953 0 261 91.7333333 128.813953 184 0 92.2666667"></polygon>
+ <text id="GroupByKey-(per-wind" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="67.6310547" y="84.265">GroupByKey </tspan>
+ <tspan x="63.374707" y="111.265">(per window)</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(128.800000, 58.500000)">
+ <path id="Line" d="M-1,136.5 L-1,124.941369 L925.955823,124.941369
L926,39.499483 L928,39.500517 L927.954789,126.941369 L1,126.941369 L1,136.5
L7,136.5 L0,150.5 L-7,136.5 L-1,136.5 Z" fill="#757575"
fill-rule="nonzero"></path>
+ <path d="M880.5,-10 L880.5,12.2" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(880.500000,
1.500000) rotate(-90.000000) translate(-880.500000, -1.500000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(1021.000000, 27.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="35" cy="35" r="35"></circle>
+ <text id="Rows-after-ParDo" font-family="Roboto-Regular, Roboto"
font-size="15" font-weight="normal" fill="#000000">
+ <tspan x="17.1015625" y="21">Rows </tspan>
+ <tspan x="19.8554688" y="39">after </tspan>
+ <tspan x="14.9555664" y="57">ParDo</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(804.500000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="ParDo" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="64.5" y="70">ParDo</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(675.500000, 60.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Path-2" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(696.500000, 31.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.7070312" y="28">Table </tspan>
+ <tspan x="14.09375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 0.000000)">
+ <path d="M0,0 L194,0 L194,124 L0,124 L0,0 Z"
id="PTransform-symbol" fill="#3062A8"></path>
+ <text id="Apply-windows" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="48" y="54">Apply </tspan>
+ <tspan x="48" y="82">windows</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 60.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Path-2" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 31.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Table-rows" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="11.2070312" y="28">Table </tspan>
+ <tspan x="13.59375" y="47">rows</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 0.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-Kafka-IO" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="44" y="55">Read from </tspan>
+ <tspan x="44" y="83">Kafka IO</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M146,62 L113,62 L113,60 L146,60 L146,54
L160,61 L146,68 L146,62 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Database" transform="translate(0.000000, 10.000000)">
+ <g id="Database-symbol" transform="translate(0.000000, 0.000000)">
+ <ellipse id="Oval" fill="#E0E0E0" cx="56.5" cy="83.2631579"
rx="56.5" ry="17.8421053"></ellipse>
+ <rect id="Rectangle" fill="#E0E0E0" x="0" y="17.8421053"
width="113" height="65.4210526"></rect>
+ <ellipse id="Oval" fill="#EFEFEF" cx="56.5" cy="17.8421053"
rx="56.5" ry="17.8421053"></ellipse>
+ </g>
+ <text id="Database-table" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="18" y="61">Database </tspan>
+ <tspan x="18" y="82">table</tspan>
+ </text>
+ </g>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/website/generated-content/images/wordcount-pipeline.png
b/website/generated-content/images/wordcount-pipeline.png
deleted file mode 100644
index 3be0b7e..0000000
Binary files a/website/generated-content/images/wordcount-pipeline.png and
/dev/null differ
diff --git a/website/generated-content/images/wordcount-pipeline.svg
b/website/generated-content/images/wordcount-pipeline.svg
new file mode 100644
index 0000000..1dd47c7
--- /dev/null
+++ b/website/generated-content/images/wordcount-pipeline.svg
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<svg width="1158px" height="441px" viewBox="0 0 1158 441" version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>The MinimalWordCount pipeline graph.</title>
+ <g id="wordcount-pipeline" transform="translate(1.000000, 0.000000)">
+ <g id="Legend" transform="translate(0.000000, 387.000000)">
+ <text id="PCollection" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="52">PCollection</tspan>
+ </text>
+ <circle id="PCollection-symbol" fill="#FFFFFF" stroke="#757575"
stroke-width="2" cx="7.5" cy="45.5" r="7.5"></circle>
+ <text id="Aggregation" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="162" y="17">Aggregating PTransform</tspan>
+ </text>
+ <path d="M143.364341,4 L154,11.4782609 L143.364341,19
L133,11.5217391 L143.364341,4 Z" id="Aggregation-PTransform-symbol"
fill="#3062A8"></path>
+ <text id="PTransform" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#000000">
+ <tspan x="22" y="17">PTransform</tspan>
+ </text>
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="3"
width="15" height="15"></rect>
+ </g>
+ <g id="Document" transform="translate(566.000000, 256.000000)">
+ <path d="M0,0 L0,81.1880544 C5.73926173,85.0626848 15.1689615,87
28.2890992,87 C56.5,87 57.2032971,71.8576229 84.878475,71.8576229
C90.6940962,71.8576229 100.067938,74.9677667 113,81.1880544 L113,0 L0,0 Z"
id="Document-symbol" fill="#E0E0E0"></path>
+ <text id="Output-text-file" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="26" y="34">Output </tspan>
+ <tspan x="26" y="55">text file</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M552,303 L520,303 L520,301 L552,301
L552,295 L566,302 L552,309 L552,303 Z" fill="#E0E0E0"
fill-rule="nonzero"></path>
+ <g id="PTransform" transform="translate(326.000000, 238.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Write-to-text-file" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="55" y="56">Write to </tspan>
+ <tspan x="55" y="84">text file</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(193.500000, 300.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Line" d="M118.5,2.5 L86.5,2.5 L86.5,0.5 L118.5,0.5
L118.5,-5.5 L132.5,1.5 L118.5,8.5 L118.5,2.5 Z" fill="#757575"
fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(214.500000, 269.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="32.5" cy="32.5" r="32.5"></circle>
+ <text id="Word-counts" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="14.1210938" y="27">Word </tspan>
+ <tspan x="8.6875" y="46">counts</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(0.000000, 238.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Format-word-counts" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="34" y="56">Format </tspan>
+ <tspan x="34" y="84">word counts</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(95.500000, 91.500000)">
+ <path id="Line" d="M-0.5,132.5 L-0.5,120.941369
L1019.45139,120.941369 L1019.50057,34.4994312 L1021.50057,34.5005691
L1021.45025,122.941369 L1.5,122.941369 L1.5,132.5 L7.5,132.5 L0.5,146.5
L-6.5,132.5 L-0.5,132.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path d="M978.5,-9 L978.5,11" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(978.500000,
1.000000) rotate(-90.000000) translate(-978.500000, -1.000000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(1082.000000, 59.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="34" cy="34" r="34"></circle>
+ <text id="Word-counts" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="15.6210938" y="28">Word </tspan>
+ <tspan x="10.1875" y="47">counts</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(804.000000, 0.750000)">
+ <polygon id="Aggregation-PTransform-symbol" fill="#3062A8"
points="128.813953 0 261 91.7333333 128.813953 184 0 92.2666667"></polygon>
+ <text id="Count-frequency-of-e" font-family="Roboto-Regular,
Roboto" font-size="23" font-weight="normal" fill="#FFFFFF">
+ <tspan x="100.014893" y="68.25">Count </tspan>
+ <tspan x="66.3515625" y="95.25">frequency of </tspan>
+ <tspan x="77.3742676" y="122.25">each word</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(675.500000, 91.500000)">
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ <path id="Line" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ </g>
+ <g id="PCollection" transform="translate(696.500000, 62.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Words" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="8.49609375" y="37">Words</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(482.000000, 31.000000)">
+ <path d="M0,0 L194,0 L194,124 L0,124 L0,0 Z"
id="PTransform-symbol" fill="#3062A8"></path>
+ <text id="ParDo-(tokenize)" font-family="Roboto-Regular, Roboto"
font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="41" y="54">ParDo </tspan>
+ <tspan x="41" y="82">(tokenize)</tspan>
+ </text>
+ </g>
+ <g id="Directed-edge" transform="translate(353.000000, 91.500000)">
+ <path id="Line" d="M115,2.5 L83,2.5 L83,0.5 L115,0.5 L115,-5.5
L129,1.5 L115,8.5 L115,2.5 Z" fill="#757575" fill-rule="nonzero"></path>
+ <path d="M11,-8.5 L11,11.5" id="Line" stroke="#3062A8"
stroke-width="2" stroke-linecap="square" transform="translate(11.000000,
1.500000) rotate(-90.000000) translate(-11.000000, -1.500000) "></path>
+ </g>
+ <g id="PCollection" transform="translate(374.000000, 62.000000)">
+ <circle id="PCollection-symbol" stroke="#757575" stroke-width="2"
fill="#FFFFFF" cx="31" cy="31" r="31"></circle>
+ <text id="Text-lines" font-family="Roboto-Regular, Roboto"
font-size="16" font-weight="normal" fill="#000000">
+ <tspan x="15.4101562" y="27">Text </tspan>
+ <tspan x="14.3398438" y="46">lines</tspan>
+ </text>
+ </g>
+ <g id="PTransform" transform="translate(160.000000, 31.000000)">
+ <rect id="PTransform-symbol" fill="#3062A8" x="0" y="0"
width="194" height="124"></rect>
+ <text id="Read-from-text-file" font-family="Roboto-Regular,
Roboto" font-size="24" font-weight="normal" fill="#FFFFFF">
+ <tspan x="41" y="55">Read from </tspan>
+ <tspan x="41" y="83">text file</tspan>
+ </text>
+ </g>
+ <path id="Directed-edge" d="M145,94 L113,94 L113,92 L145,92 L145,86
L159,93 L145,100 L145,94 Z" fill="#E0E0E0" fill-rule="nonzero"></path>
+ <g id="Document" transform="translate(0.000000, 49.000000)">
+ <path d="M0,0 L0,81.1880544 C5.73926173,85.0626848 15.1689615,87
28.2890992,87 C56.5,87 57.2032971,71.8576229 84.878475,71.8576229
C90.6940962,71.8576229 100.067938,74.9677667 113,81.1880544 L113,0 L0,0 Z"
id="Document-symbol" fill="#E0E0E0"></path>
+ <text id="Input-text-file" font-family="Roboto-Regular, Roboto"
font-size="18" font-weight="normal" fill="#414141">
+ <tspan x="26" y="34">Input </tspan>
+ <tspan x="26" y="55">text file</tspan>
+ </text>
+ </g>
+ </g>
+</svg>
\ No newline at end of file