You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by gi...@apache.org on 2022/11/14 16:17:16 UTC

[beam] branch asf-site updated: Publishing website 2022/11/14 16:17:10 at commit 5a72696

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 39a6ff0fc09 Publishing website 2022/11/14 16:17:10 at commit 5a72696
39a6ff0fc09 is described below

commit 39a6ff0fc09f527ed828c3ebf8ab8cd69e6881cb
Author: jenkins <bu...@apache.org>
AuthorDate: Mon Nov 14 16:17:11 2022 +0000

    Publishing website 2022/11/14 16:17:10 at commit 5a72696
---
 .../documentation/basics/index.html                | 30 +++++++++++-----------
 website/generated-content/documentation/index.xml  | 26 +++++++++----------
 website/generated-content/get-started/index.html   |  2 +-
 website/generated-content/sitemap.xml              |  2 +-
 4 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/website/generated-content/documentation/basics/index.html b/website/generated-content/documentation/basics/index.html
index 91da6624b41..9830a2db2ff 100644
--- a/website/generated-content/documentation/basics/index.html
+++ b/website/generated-content/documentation/basics/index.html
@@ -19,7 +19,7 @@
 function addPlaceholder(){$('input:text').attr('placeholder',"What are you looking for?");}
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
-function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Documentation</span></li><li><a href=/documentation>Using the Documentation</a></li><li class=section-nav-item--collapsible><span class=section-nav-lis [...]
+function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Documentation</span></li><li><a href=/documentation>Using the Documentation</a></li><li class=section-nav-item--collapsible><span class=section-nav-lis [...]
 data-parallel processing pipelines. To get started with Beam, you&rsquo;ll need to
 understand an important set of core concepts:</p><ul><li><a href=#pipeline><em>Pipeline</em></a> - A pipeline is a user-constructed graph of
 transformations that defines the desired data processing operations.</li><li><a href=#pcollection><em>PCollection</em></a> - A <code>PCollection</code> is a data set or data
@@ -47,7 +47,7 @@ collections that grow over time.</li><li><a href=#splittable-dofn><em>Splittable
 elements in a non-monolithic way. You can checkpoint the processing of an
 element, and the runner can split the remaining work to yield additional
 parallelism.</li></ul><p>The following sections cover these concepts in more detail and provide links to
-additional documentation.</p><h3 id=pipeline>Pipeline</h3><p>A Beam pipeline is a graph (specifically, a
+additional documentation.</p><h2 id=pipeline>Pipeline</h2><p>A Beam pipeline is a graph (specifically, a
 <a href=https://en.wikipedia.org/wiki/Directed_acyclic_graph>directed acyclic graph</a>)
 of all the data and computations in your data processing task. This includes
 reading input data, transforming that data, and writing output data. A pipeline
@@ -61,7 +61,7 @@ be unbounded streams of data. In Beam, most transforms apply equally to bounded
 and unbounded data.</p><p>You can express almost any computation that you can think of as a graph as a
 Beam pipeline. A Beam driver program typically starts by creating a <code>Pipeline</code>
 object, and then uses that object as the basis for creating the pipeline’s data
-sets and its transforms.</p><p>For more information about pipelines, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#overview>Beam Programming Guide: Overview</a></li><li><a href=/documentation/programming-guide/#creating-a-pipeline>Beam Programming Guide: Creating a pipeline</a></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></u [...]
+sets and its transforms.</p><p>For more information about pipelines, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#overview>Beam Programming Guide: Overview</a></li><li><a href=/documentation/programming-guide/#creating-a-pipeline>Beam Programming Guide: Creating a pipeline</a></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></u [...]
 potentially distributed, homogeneous data set or data stream, and is owned by
 the specific <code>Pipeline</code> object for which it is created. Multiple pipelines
 cannot share a <code>PCollection</code>. Beam pipelines process PCollections, and the
@@ -108,7 +108,7 @@ frequently used, but there are a few common key formats (such as key-value pairs
 and timestamps) so the runner can understand them.</p><p><strong>Windowing strategy</strong>:</p><p>Every <code>PCollection</code> has a windowing strategy, which is a specification of
 essential information for grouping and triggering operations. The <code>Window</code>
 transform sets up the windowing strategy, and the <code>GroupByKey</code> transform has
-behavior that is governed by the windowing strategy.</p><br><p>For more information about PCollections, see the following page:</p><ul><li><a href=/documentation/programming-guide/#pcollections>Beam Programming Guide: PCollections</a></li></ul><h3 id=ptransform>PTransform</h3><p>A <code>PTransform</code> (or transform) represents a data processing operation, or a step,
+behavior that is governed by the windowing strategy.</p><br><p>For more information about PCollections, see the following page:</p><ul><li><a href=/documentation/programming-guide/#pcollections>Beam Programming Guide: PCollections</a></li></ul><h2 id=ptransform>PTransform</h2><p>A <code>PTransform</code> (or transform) represents a data processing operation, or a step,
 in your pipeline. A transform is usually applied to one or more input
 <code>PCollection</code> objects. Transforms that read input are an exception; these
 transforms might not have an input <code>PCollection</code>.</p><p>You provide transform processing logic in the form of a function object
@@ -126,7 +126,7 @@ collection. You can also define your own more complex composite transforms to
 fit your pipeline’s exact use case.</p><p>The following list has some common transform types:</p><ul><li>Source transforms such as <code>TextIO.Read</code> and <code>Create</code>. A source transform
 conceptually has no input.</li><li>Processing and conversion operations such as <code>ParDo</code>, <code>GroupByKey</code>,
 <code>CoGroupByKey</code>, <code>Combine</code>, and <code>Count</code>.</li><li>Outputting transforms such as <code>TextIO.Write</code>.</li><li>User-defined, application-specific composite transforms.</li></ul><p>For more information about transforms, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#overview>Beam Programming Guide: Overview</a></li><li><a href=/documentation/programming-guide/#transforms>Beam Programming Guide: Transforms</a></li><li>Beam t [...]
-<a href=/documentation/transforms/python/overview/>Python</a>)</li></ul><h3 id=aggregation>Aggregation</h3><p>Aggregation is computing a value from multiple (1 or more) input elements. In
+<a href=/documentation/transforms/python/overview/>Python</a>)</li></ul><h2 id=aggregation>Aggregation</h2><p>Aggregation is computing a value from multiple (1 or more) input elements. In
 Beam, the primary computational pattern for aggregation is to group all elements
 with a common key and window then combine each group of elements using an
 associative and commutative operation. This is similar to the &ldquo;Reduce&rdquo; operation
@@ -151,7 +151,7 @@ results of aggregation involves three concepts:</p><ul><li><a href=#window>Windo
 can be complete.</li><li><a href=#watermark>Watermarks</a>, which estimate the completeness of your input.</li><li><a href=#trigger>Triggers</a>, which govern when and how to emit aggregated results.</li></ul><p>For more information about available aggregation transforms, see the following
 pages:</p><ul><li><a href=/documentation/programming-guide/#core-beam-transforms>Beam Programming Guide: Core Beam transforms</a></li><li>Beam Transform catalog
 (<a href=/documentation/transforms/java/overview/#aggregation>Java</a>,
-<a href=/documentation/transforms/python/overview/#aggregation>Python</a>)</li></ul><h3 id=user-defined-function-udf>User-defined function (UDF)</h3><p>Some Beam operations allow you to run user-defined code as a way to configure
+<a href=/documentation/transforms/python/overview/#aggregation>Python</a>)</li></ul><h2 id=user-defined-function-udf>User-defined function (UDF)</h2><p>Some Beam operations allow you to run user-defined code as a way to configure
 the transform. For example, when using <code>ParDo</code>, user-defined code specifies what
 operation to apply to every element. For <code>Combine</code>, it specifies how values
 should be combined. By using <a href=/documentation/patterns/cross-language/>cross-language transforms</a>,
@@ -173,7 +173,7 @@ without communicating or sharing state with any of the other copies. Each copy
 of your user code function might be retried or run multiple times, depending on
 the pipeline runner and the processing backend that you choose for your
 pipeline. Beam also supports stateful processing through the
-<a href=/blog/stateful-processing/>stateful processing API</a>.</p><p>For more information about user-defined functions, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#requirements-for-writing-user-code-for-beam-transforms>Requirements for writing user code for Beam transforms</a></li><li><a href=/documentation/programming-guide/#pardo>Beam Programming Guide: ParDo</a></li><li><a href=/documentation/programming-guide/#setting-your-pcollections-windowing-fun [...]
+<a href=/blog/stateful-processing/>stateful processing API</a>.</p><p>For more information about user-defined functions, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#requirements-for-writing-user-code-for-beam-transforms>Requirements for writing user code for Beam transforms</a></li><li><a href=/documentation/programming-guide/#pardo>Beam Programming Guide: ParDo</a></li><li><a href=/documentation/programming-guide/#setting-your-pcollections-windowing-fun [...]
 schema for a <code>PCollection</code> defines elements of that <code>PCollection</code> as an ordered
 list of named fields. Each field has a name, a type, and possibly a set of user
 options.</p><p>In many cases, the element type in a <code>PCollection</code> has a structure that can be
@@ -187,14 +187,14 @@ example, <a href=/documentation/dsls/sql/overview/>Beam SQL</a> is a common tran
 that operates on schemas. These transforms allow selections and aggregations in
 terms of named schema fields. Another advantage of schemas is that they allow
 referencing of element fields by name. Beam provides a selection syntax for
-referencing fields, including nested and repeated fields.</p><p>For more information about schemas, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#schemas>Beam Programming Guide: Schemas</a></li><li><a href=/documentation/patterns/schema/>Schema Patterns</a></li></ul><h3 id=runner>Runner</h3><p>A Beam runner runs a Beam pipeline on a specific platform. Most runners are
+referencing fields, including nested and repeated fields.</p><p>For more information about schemas, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#schemas>Beam Programming Guide: Schemas</a></li><li><a href=/documentation/patterns/schema/>Schema Patterns</a></li></ul><h2 id=runner>Runner</h2><p>A Beam runner runs a Beam pipeline on a specific platform. Most runners are
 translators or adapters to massively parallel big data processing systems, such
 as Apache Flink, Apache Spark, Google Cloud Dataflow, and more. For example, the
 Flink runner translates a Beam pipeline into a Flink job. The Direct Runner runs
 pipelines locally so you can test, debug, and validate that your pipeline
 adheres to the Apache Beam model as closely as possible.</p><p>For an up-to-date list of Beam runners and which features of the Apache Beam
 model they support, see the runner
-<a href=/documentation/runners/capability-matrix/>capability matrix</a>.</p><p>For more information about runners, see the following pages:</p><ul><li><a href=/documentation/#choosing-a-runner>Choosing a Runner</a></li><li><a href=/documentation/runners/capability-matrix/>Beam Capability Matrix</a></li></ul><h3 id=window>Window</h3><p>Windowing subdivides a <code>PCollection</code> into <em>windows</em> according to the timestamps
+<a href=/documentation/runners/capability-matrix/>capability matrix</a>.</p><p>For more information about runners, see the following pages:</p><ul><li><a href=/documentation/#choosing-a-runner>Choosing a Runner</a></li><li><a href=/documentation/runners/capability-matrix/>Beam Capability Matrix</a></li></ul><h2 id=window>Window</h2><p>Windowing subdivides a <code>PCollection</code> into <em>windows</em> according to the timestamps
 of its individual elements. Windows enable grouping operations over unbounded
 collections by dividing the collection into windows of finite collections.</p><p>A <em>windowing function</em> tells the runner how to assign elements to one or more
 initial windows, and how to merge windows of grouped elements. Each element in a
@@ -213,7 +213,7 @@ with windows that are five minutes long. For each window, Beam must collect all
 the data with an event time timestamp in the given window range (between 0:00
 and 4:59 in the first window, for instance). Data with timestamps outside that
 range (data from 5:00 or later) belongs to a different window.</p><p>Two concepts are closely related to windowing and covered in the following
-sections: <a href=#watermark>watermarks</a> and <a href=#trigger>triggers</a>.</p><p>For more information about windows, see the following page:</p><ul><li><a href=/documentation/programming-guide/#windowing>Beam Programming Guide: Windowing</a></li><li><a href=/documentation/programming-guide/#setting-your-pcollections-windowing-function>Beam Programming Guide: WindowFn</a></li></ul><h3 id=watermark>Watermark</h3><p>In any data processing system, there is a certain amount of lag between [...]
+sections: <a href=#watermark>watermarks</a> and <a href=#trigger>triggers</a>.</p><p>For more information about windows, see the following page:</p><ul><li><a href=/documentation/programming-guide/#windowing>Beam Programming Guide: Windowing</a></li><li><a href=/documentation/programming-guide/#setting-your-pcollections-windowing-function>Beam Programming Guide: WindowFn</a></li></ul><h2 id=watermark>Watermark</h2><p>In any data processing system, there is a certain amount of lag between [...]
 a data event occurs (the “event time”, determined by the timestamp on the data
 element itself) and the time the actual data element gets processed at any stage
 in your pipeline (the “processing time”, determined by the clock on the system
@@ -232,7 +232,7 @@ is finite. After the watermark progresses past the end of a window, any further
 element that arrives with a timestamp in that window is considered <em>late data</em>.</p><p><a href=#trigger>Triggers</a> are a related concept that allow you to modify and refine
 the windowing strategy for a <code>PCollection</code>. You can use triggers to decide when
 each individual window aggregates and reports its results, including how the
-window emits late elements.</p><p>For more information about watermarks, see the following page:</p><ul><li><a href=/documentation/programming-guide/#watermarks-and-late-data>Beam Programming Guide: Watermarks and late data</a></li></ul><h3 id=trigger>Trigger</h3><p>When collecting and grouping data into windows, Beam uses <em>triggers</em> to
+window emits late elements.</p><p>For more information about watermarks, see the following page:</p><ul><li><a href=/documentation/programming-guide/#watermarks-and-late-data>Beam Programming Guide: Watermarks and late data</a></li></ul><h2 id=trigger>Trigger</h2><p>When collecting and grouping data into windows, Beam uses <em>triggers</em> to
 determine when to emit the aggregated results of each window (referred to as a
 <em>pane</em>). If you use Beam’s default windowing configuration and default trigger,
 Beam outputs the aggregated result when it estimates all data has arrived, and
@@ -250,7 +250,7 @@ arrives in each window, and firing when that data meets a certain property.
 Currently, data-driven triggers only support firing after a certain number of
 data elements.</li><li><strong>Composite triggers</strong>: These triggers combine multiple triggers in various
 ways. For example, you might want one trigger for early data and a different
-trigger for late data.</li></ul><p>For more information about triggers, see the following page:</p><ul><li><a href=/documentation/programming-guide/#triggers>Beam Programming Guide: Triggers</a></li></ul><h3 id=state-and-timers>State and timers</h3><p>Beam’s windowing and triggers provide an abstraction for grouping and
+trigger for late data.</li></ul><p>For more information about triggers, see the following page:</p><ul><li><a href=/documentation/programming-guide/#triggers>Beam Programming Guide: Triggers</a></li></ul><h2 id=state-and-timers>State and timers</h2><p>Beam’s windowing and triggers provide an abstraction for grouping and
 aggregating unbounded input data based on timestamps. However, there are
 aggregation use cases that might require an even higher degree of control. State
 and timers are two important concepts that help with these uses cases. Like
@@ -286,7 +286,7 @@ time passes. This is often used to create larger batches of data before
 processing. It can also be used to schedule events that should occur at a
 specific time.</li><li><strong>Dynamic timer tags</strong>: Beam also supports dynamically setting a timer tag. This
 allows you to set multiple different timers in a <code>DoFn</code> and dynamically
-choose timer tags (for example, based on data in the input elements).</li></ul><p>For more information about state and timers, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#state-and-timers>Beam Programming Guide: State and Timers</a></li><li><a href=/blog/stateful-processing/>Stateful processing with Apache Beam</a></li><li><a href=/blog/timely-processing/>Timely (and Stateful) Processing with Apache Beam</a></li></ul><h3 id=splittable-dofn>Splittable DoF [...]
+choose timer tags (for example, based on data in the input elements).</li></ul><p>For more information about state and timers, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#state-and-timers>Beam Programming Guide: State and Timers</a></li><li><a href=/blog/stateful-processing/>Stateful processing with Apache Beam</a></li><li><a href=/blog/timely-processing/>Timely (and Stateful) Processing with Apache Beam</a></li></ul><h2 id=splittable-dofn>Splittable DoF [...]
 elements in a non-monolithic way. Splittable <code>DoFn</code> makes it easier to create
 complex, modular I/O connectors in Beam.</p><p>A regular <code>ParDo</code> processes an entire element at a time, applying your regular
 <code>DoFn</code> and waiting for the call to terminate. When you instead apply a
@@ -303,9 +303,9 @@ checkpoint the sub-element and the runner repeats step 2.</li></ol><p>You can al
 processing. For example, if you write a splittable <code>DoFn</code> to watch a set of
 directories and output filenames as they arrive, you can split to subdivide the
 work of different directories. This allows the runner to split off a hot
-directory and give it additional resources.</p><p>For more information about Splittable <code>DoFn</code>, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#splittable-dofns>Splittable DoFns</a></li><li><a href=/blog/splittable-do-fn-is-available/>Splittable DoFn in Apache Beam is Ready to Use</a></li></ul><h3 id=whats-next>What&rsquo;s next</h3><p>Take a look at our <a href=/documentation/>other documentation</a> such as the Beam
+directory and give it additional resources.</p><p>For more information about Splittable <code>DoFn</code>, see the following pages:</p><ul><li><a href=/documentation/programming-guide/#splittable-dofns>Splittable DoFns</a></li><li><a href=/blog/splittable-do-fn-is-available/>Splittable DoFn in Apache Beam is Ready to Use</a></li></ul><h2 id=whats-next>What&rsquo;s next</h2><p>Take a look at our <a href=/documentation/>other documentation</a> such as the Beam
 programming guide, pipeline execution information, and transform reference
-catalogs.</p><div class=feedback><p class=update>Last updated on 2022/10/31</p><h3>Have you found everything you were looking for?</h3><p class=description>Was it all useful and clear? Is there anything that you would like to change? Let us know!</p><button class=load-button><a href="mailto:dev@beam.apache.org?subject=Beam Website Feedback">SEND FEEDBACK</a></button></div></div></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col f [...]
+catalogs.</p><div class=feedback><p class=update>Last updated on 2022/11/07</p><h3>Have you found everything you were looking for?</h3><p class=description>Was it all useful and clear? Is there anything that you would like to change? Let us know!</p><button class=load-button><a href="mailto:dev@beam.apache.org?subject=Beam Website Feedback">SEND FEEDBACK</a></button></div></div></div><footer class=footer><div class=footer__contained><div class=footer__cols><div class="footer__cols__col f [...]
 <a href=https://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></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/documentation/index.xml b/website/generated-content/documentation/index.xml
index 49a6f93c313..847fe402a3a 100644
--- a/website/generated-content/documentation/index.xml
+++ b/website/generated-content/documentation/index.xml
@@ -3665,7 +3665,7 @@ parallelism.&lt;/li>
 &lt;/ul>
 &lt;p>The following sections cover these concepts in more detail and provide links to
 additional documentation.&lt;/p>
-&lt;h3 id="pipeline">Pipeline&lt;/h3>
+&lt;h2 id="pipeline">Pipeline&lt;/h2>
 &lt;p>A Beam pipeline is a graph (specifically, a
 &lt;a href="https://en.wikipedia.org/wiki/Directed_acyclic_graph">directed acyclic graph&lt;/a>)
 of all the data and computations in your data processing task. This includes
@@ -3691,7 +3691,7 @@ sets and its transforms.&lt;/p>
 &lt;li>&lt;a href="/documentation/pipelines/design-your-pipeline">Design your pipeline&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/documentation/pipelines/create-your-pipeline">Create your pipeline&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="pcollection">PCollection&lt;/h3>
+&lt;h2 id="pcollection">PCollection&lt;/h2>
 &lt;p>A &lt;code>PCollection&lt;/code> is an unordered bag of elements. Each &lt;code>PCollection&lt;/code> is a
 potentially distributed, homogeneous data set or data stream, and is owned by
 the specific &lt;code>Pipeline&lt;/code> object for which it is created. Multiple pipelines
@@ -3770,7 +3770,7 @@ behavior that is governed by the windowing strategy.&lt;/p>
 &lt;ul>
 &lt;li>&lt;a href="/documentation/programming-guide/#pcollections">Beam Programming Guide: PCollections&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="ptransform">PTransform&lt;/h3>
+&lt;h2 id="ptransform">PTransform&lt;/h2>
 &lt;p>A &lt;code>PTransform&lt;/code> (or transform) represents a data processing operation, or a step,
 in your pipeline. A transform is usually applied to one or more input
 &lt;code>PCollection&lt;/code> objects. Transforms that read input are an exception; these
@@ -3805,7 +3805,7 @@ conceptually has no input.&lt;/li>
 &lt;li>Beam transform catalog (&lt;a href="/documentation/transforms/java/overview/">Java&lt;/a>,
 &lt;a href="/documentation/transforms/python/overview/">Python&lt;/a>)&lt;/li>
 &lt;/ul>
-&lt;h3 id="aggregation">Aggregation&lt;/h3>
+&lt;h2 id="aggregation">Aggregation&lt;/h2>
 &lt;p>Aggregation is computing a value from multiple (1 or more) input elements. In
 Beam, the primary computational pattern for aggregation is to group all elements
 with a common key and window then combine each group of elements using an
@@ -3848,7 +3848,7 @@ pages:&lt;/p>
 (&lt;a href="/documentation/transforms/java/overview/#aggregation">Java&lt;/a>,
 &lt;a href="/documentation/transforms/python/overview/#aggregation">Python&lt;/a>)&lt;/li>
 &lt;/ul>
-&lt;h3 id="user-defined-function-udf">User-defined function (UDF)&lt;/h3>
+&lt;h2 id="user-defined-function-udf">User-defined function (UDF)&lt;/h2>
 &lt;p>Some Beam operations allow you to run user-defined code as a way to configure
 the transform. For example, when using &lt;code>ParDo&lt;/code>, user-defined code specifies what
 operation to apply to every element. For &lt;code>Combine&lt;/code>, it specifies how values
@@ -3891,7 +3891,7 @@ pipeline. Beam also supports stateful processing through the
 &lt;li>&lt;a href="/documentation/programming-guide/#data-encoding-and-type-safety">Beam Programming Guide: Coder&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/documentation/programming-guide/#side-inputs">Beam Programming Guide: Side inputs&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="schema">Schema&lt;/h3>
+&lt;h2 id="schema">Schema&lt;/h2>
 &lt;p>A schema is a language-independent type definition for a &lt;code>PCollection&lt;/code>. The
 schema for a &lt;code>PCollection&lt;/code> defines elements of that &lt;code>PCollection&lt;/code> as an ordered
 list of named fields. Each field has a name, a type, and possibly a set of user
@@ -3914,7 +3914,7 @@ referencing fields, including nested and repeated fields.&lt;/p>
 &lt;li>&lt;a href="/documentation/programming-guide/#schemas">Beam Programming Guide: Schemas&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/documentation/patterns/schema/">Schema Patterns&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="runner">Runner&lt;/h3>
+&lt;h2 id="runner">Runner&lt;/h2>
 &lt;p>A Beam runner runs a Beam pipeline on a specific platform. Most runners are
 translators or adapters to massively parallel big data processing systems, such
 as Apache Flink, Apache Spark, Google Cloud Dataflow, and more. For example, the
@@ -3929,7 +3929,7 @@ model they support, see the runner
 &lt;li>&lt;a href="/documentation/#choosing-a-runner">Choosing a Runner&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/documentation/runners/capability-matrix/">Beam Capability Matrix&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="window">Window&lt;/h3>
+&lt;h2 id="window">Window&lt;/h2>
 &lt;p>Windowing subdivides a &lt;code>PCollection&lt;/code> into &lt;em>windows&lt;/em> according to the timestamps
 of its individual elements. Windows enable grouping operations over unbounded
 collections by dividing the collection into windows of finite collections.&lt;/p>
@@ -3968,7 +3968,7 @@ sections: &lt;a href="#watermark">watermarks&lt;/a> and &lt;a href="#trigger">tr
 &lt;li>&lt;a href="/documentation/programming-guide/#windowing">Beam Programming Guide: Windowing&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/documentation/programming-guide/#setting-your-pcollections-windowing-function">Beam Programming Guide: WindowFn&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="watermark">Watermark&lt;/h3>
+&lt;h2 id="watermark">Watermark&lt;/h2>
 &lt;p>In any data processing system, there is a certain amount of lag between the time
 a data event occurs (the “event time”, determined by the timestamp on the data
 element itself) and the time the actual data element gets processed at any stage
@@ -3996,7 +3996,7 @@ window emits late elements.&lt;/p>
 &lt;ul>
 &lt;li>&lt;a href="/documentation/programming-guide/#watermarks-and-late-data">Beam Programming Guide: Watermarks and late data&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="trigger">Trigger&lt;/h3>
+&lt;h2 id="trigger">Trigger&lt;/h2>
 &lt;p>When collecting and grouping data into windows, Beam uses &lt;em>triggers&lt;/em> to
 determine when to emit the aggregated results of each window (referred to as a
 &lt;em>pane&lt;/em>). If you use Beam’s default windowing configuration and default trigger,
@@ -4033,7 +4033,7 @@ trigger for late data.&lt;/li>
 &lt;ul>
 &lt;li>&lt;a href="/documentation/programming-guide/#triggers">Beam Programming Guide: Triggers&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="state-and-timers">State and timers&lt;/h3>
+&lt;h2 id="state-and-timers">State and timers&lt;/h2>
 &lt;p>Beam’s windowing and triggers provide an abstraction for grouping and
 aggregating unbounded input data based on timestamps. However, there are
 aggregation use cases that might require an even higher degree of control. State
@@ -4102,7 +4102,7 @@ choose timer tags (for example, based on data in the input elements).&lt;/li>
 &lt;li>&lt;a href="/blog/stateful-processing/">Stateful processing with Apache Beam&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/blog/timely-processing/">Timely (and Stateful) Processing with Apache Beam&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="splittable-dofn">Splittable DoFn&lt;/h3>
+&lt;h2 id="splittable-dofn">Splittable DoFn&lt;/h2>
 &lt;p>Splittable &lt;code>DoFn&lt;/code> (SDF) is a generalization of &lt;code>DoFn&lt;/code> that lets you process
 elements in a non-monolithic way. Splittable &lt;code>DoFn&lt;/code> makes it easier to create
 complex, modular I/O connectors in Beam.&lt;/p>
@@ -4136,7 +4136,7 @@ directory and give it additional resources.&lt;/p>
 &lt;li>&lt;a href="/documentation/programming-guide/#splittable-dofns">Splittable DoFns&lt;/a>&lt;/li>
 &lt;li>&lt;a href="/blog/splittable-do-fn-is-available/">Splittable DoFn in Apache Beam is Ready to Use&lt;/a>&lt;/li>
 &lt;/ul>
-&lt;h3 id="whats-next">What&amp;rsquo;s next&lt;/h3>
+&lt;h2 id="whats-next">What&amp;rsquo;s next&lt;/h2>
 &lt;p>Take a look at our &lt;a href="/documentation/">other documentation&lt;/a> such as the Beam
 programming guide, pipeline execution information, and transform reference
 catalogs.&lt;/p></description></item><item><title>Documentation: Beam glossary</title><link>/documentation/glossary/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/documentation/glossary/</guid><description>
diff --git a/website/generated-content/get-started/index.html b/website/generated-content/get-started/index.html
index dfb0fb21ceb..b2b9b0fc082 100644
--- a/website/generated-content/get-started/index.html
+++ b/website/generated-content/get-started/index.html
@@ -20,7 +20,7 @@ function addPlaceholder(){$('input:text').attr('placeholder',"What are you looki
 function endSearch(){var search=document.querySelector(".searchBar");search.classList.add("disappear");var icons=document.querySelector("#iconsBar");icons.classList.remove("disappear");}
 function blockScroll(){$("body").toggleClass("fixedPosition");}
 function openMenu(){addPlaceholder();blockScroll();}</script><div class="clearfix container-main-content"><div class="section-nav closed" data-offset-top=90 data-offset-bottom=500><span class="section-nav-back glyphicon glyphicon-menu-left"></span><nav><ul class=section-nav-list data-section-nav><li><span class=section-nav-list-main-title>Get started</span></li><li><a href=/get-started/beam-overview/>Beam Overview</a></li><li><a href=/get-started/tour-of-beam/>Tour of Beam</a></li><li><s [...]
-Java</a></li></ul></li><li><a href=/get-started/downloads>Install the SDK</a></li><li><span class=section-nav-list-title>Tutorials</span><ul class=section-nav-list><li><a href=/get-started/wordcount-example/>WordCount</a></li><li><a href=/get-started/mobile-gaming-example/>Mobile Gaming</a></li></ul></li><li class=section-nav-item--collapsible><span class=section-nav-list-title>Learning resources</span><ul class=section-nav-list><li><a href=/get-started/resources/learning-resources/#gett [...]
+Java</a></li></ul></li><li><a href=/get-started/downloads>Install the SDK</a></li><li><span class=section-nav-list-title>Tutorials</span><ul class=section-nav-list><li><a href=/get-started/wordcount-example/>WordCount</a></li><li><a href=/get-started/mobile-gaming-example/>Mobile Gaming</a></li></ul></li><li class=section-nav-item--collapsible><span class=section-nav-list-title>Learning resources</span><ul class=section-nav-list><li><a href=/get-started/resources/learning-resources/#gett [...]
 <a href=https://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></div><div class="footer__cols__col footer__cols__col__logos"><div class=footer__cols__col--group><div class=footer__cols__col__logo><a href=https://github.com/apache/beam><im [...]
\ No newline at end of file
diff --git a/website/generated-content/sitemap.xml b/website/generated-content/sitemap.xml
index c59a7134c8b..0c7c6b8ecf7 100644
--- a/website/generated-content/sitemap.xml
+++ b/website/generated-content/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/categories/blog/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/categories/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/blog/ml-resources/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/categ [...]
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>/categories/blog/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/categories/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/blog/ml-resources/</loc><lastmod>2022-11-10T17:26:15-05:00</lastmod></url><url><loc>/categ [...]
\ No newline at end of file