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 013bb682d5c Publishing website 2022/04/04 22:15:26 at commit 0262ee5
013bb682d5c is described below

commit 013bb682d5c702fca5bcd0b5e7c094438d10aae9
Author: jenkins <[email protected]>
AuthorDate: Mon Apr 4 22:15:27 2022 +0000

    Publishing website 2022/04/04 22:15:26 at commit 0262ee5
---
 .../dataframes/differences-from-pandas/index.html  |  2 +-
 .../dsls/dataframes/overview/index.html            |  2 +-
 .../sql/calcite/aggregate-functions/index.html     |  2 +-
 .../dsls/sql/calcite/data-types/index.html         |  2 +-
 .../dsls/sql/calcite/lexical-structure/index.html  |  2 +-
 .../dsls/sql/calcite/overview/index.html           |  2 +-
 .../dsls/sql/calcite/query-syntax/index.html       |  2 +-
 .../dsls/sql/calcite/scalar-functions/index.html   |  2 +-
 .../extensions/create-external-table/index.html    |  2 +-
 .../dsls/sql/extensions/joins/index.html           |  2 +-
 .../dsls/sql/extensions/set/index.html             |  2 +-
 .../extensions/user-defined-functions/index.html   |  2 +-
 .../extensions/windowing-and-triggering/index.html |  2 +-
 .../documentation/dsls/sql/overview/index.html     |  2 +-
 .../documentation/dsls/sql/shell/index.html        |  2 +-
 .../documentation/dsls/sql/walkthrough/index.html  |  2 +-
 .../sql/zetasql/aggregate-functions/index.html     |  2 +-
 .../sql/zetasql/conditional-expressions/index.html |  2 +-
 .../dsls/sql/zetasql/conversion-rules/index.html   |  2 +-
 .../dsls/sql/zetasql/data-types/index.html         |  2 +-
 .../dsls/sql/zetasql/lexical/index.html            |  2 +-
 .../dsls/sql/zetasql/math-functions/index.html     |  2 +-
 .../dsls/sql/zetasql/operators/index.html          |  2 +-
 .../dsls/sql/zetasql/overview/index.html           |  2 +-
 .../dsls/sql/zetasql/query-syntax/index.html       |  2 +-
 .../dsls/sql/zetasql/string-functions/index.html   |  2 +-
 .../dsls/sql/zetasql/syntax/index.html             |  2 +-
 .../documentation/runners/spark/index.html         | 32 +++++++++++++--
 .../sdks/feature-comparison/index.html             |  2 +-
 .../sdks/go-cross-compilation/index.html           | 45 ++++++++++++++++++++++
 .../documentation/sdks/go/index.html               |  7 ++--
 .../sdks/java-dependencies/index.html              |  2 +-
 .../documentation/sdks/java-extensions/index.html  |  2 +-
 .../sdks/java-multi-language-pipelines/index.html  |  2 +-
 .../documentation/sdks/java-thirdparty/index.html  |  2 +-
 .../documentation/sdks/java/euphoria/index.html    |  2 +-
 .../documentation/sdks/java/index.html             |  2 +-
 .../sdks/java/testing/nexmark/index.html           |  2 +-
 .../sdks/python-dependencies/index.html            |  2 +-
 .../python-multi-language-pipelines/index.html     |  2 +-
 .../sdks/python-pipeline-dependencies/index.html   |  2 +-
 .../documentation/sdks/python-streaming/index.html |  2 +-
 .../sdks/python-type-safety/index.html             |  2 +-
 .../documentation/sdks/python/index.html           |  2 +-
 website/generated-content/learn/sdks/go/index.html |  1 +
 website/generated-content/sitemap.xml              |  2 +-
 46 files changed, 121 insertions(+), 48 deletions(-)

diff --git 
a/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
 
b/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
index 80f9d80a8bc..9dfe1fb9b7a 100644
--- 
a/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
+++ 
b/website/generated-content/documentation/dsls/dataframes/differences-from-pandas/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p>This is similar to pandas <a 
href=https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html>read_csv</a>,
 but <code>df</code> is a deferred Beam DataFrame representing the contents of 
the file. The input filename can be any file pattern understood by <a 
href=https://beam.apache.org/releases/pydoc/2.37.0/apache_beam.io.fileio.html#apache_beam.io.fileio.MatchFiles>fileio.MatchFiles</a>.</p><p>For
 an example of using sources and sinks with the DataFrame [...]
 
 with dataframe.allow_non_parallel_operations():
diff --git 
a/website/generated-content/documentation/dsls/dataframes/overview/index.html 
b/website/generated-content/documentation/dsls/dataframes/overview/index.html
index d2d3a5199db..639a406d707 100644
--- 
a/website/generated-content/documentation/dsls/dataframes/overview/index.html
+++ 
b/website/generated-content/documentation/dsls/dataframes/overview/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 Run in Colab</a></td></table><p><br><br><br><br></p><p>The Apache Beam Python 
SDK provides a DataFrame API for working with pandas-like <a 
href=https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html>DataFrame</a>
 objects. The feature lets you convert a PCollection to a DataFrame and then 
interact with the DataFrame using the standard methods available on the pandas 
DataFrame API. The DataFrame API is built on top of the pandas implementation, 
and pandas DataFram [...]
 </code></pre><p>Note that the <em>same</em> <code>pandas</code> version should 
be installed on workers when executing DataFrame API pipelines on distributed 
runners. Reference <a 
href=https://github.com/apache/beam/blob/master/sdks/python/container/py38/base_image_requirements.txt><code>base_image_requirements.txt</code></a>
 for the Python version and Beam release you are using to see what version of 
<code>pandas</code> will be used by default on workers.</p><h2 
id=using-dataframes>Using [...]
 
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
index 5ad0362c568..a73815dd602 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/aggregate-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
 
b/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
index 07429dbc6b3..ebd0a460cf4 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/data-types/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 including arrays, maps, and nested rows. This page documents supported
 <a href=https://calcite.apache.org/docs/reference.html#data-types>Apache 
Calcite data types</a> supported by Beam Calcite SQL.</p><p>In Java, these 
types are mapped to Java types large enough to hold the
 full range of values.</p><div class=table-wrapper><table><thead><tr><th>SQL 
Type</th><th>Description</th><th>Java 
class</th></tr></thead><tbody><tr><td>TINYINT</td><td>1 byte signed integer in 
range -128 to 127</td><td>java.lang.Byte</td></tr><tr><td>SMALLINT</td><td>2 
byte signed integer in range -32768 to 
32767</td><td>java.lang.Short</td></tr><tr><td>INTEGER</td><td>4 byte signed 
integer in range -2147483648 to 
2147483647</td><td>java.lang.Integer</td></tr><tr><td>BIGINT</td><td>8 byt [...]
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
 
b/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
index 66a366627a0..9277219eebb 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/lexical-structure/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <em>identifiers,</em> <em>quoted identifiers, literals</em>, 
<em>keywords</em>, <em>operators</em>,
 and <em>special characters</em>. Tokens can be separated by whitespace (space,
 backspace, tab, newline) or comments.</p><h2 
id=identifiers>Identifiers</h2><p>Identifiers are names that are associated 
with columns, tables, and
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/overview/index.html 
b/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
index 25b86c0693a..2ade0b79c95 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/overview/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 big data processing with some streaming enhancements. Beam Calcite SQL is the 
default Beam SQL dialect.</p><p>Beam SQL has additional extensions leveraging 
Beam’s unified batch/streaming model and processing complex data types. You can 
use these extensions with all Beam SQL dialects, including Beam Calcite 
SQL.</p><h2 id=query-syntax>Query syntax</h2><p>Query statements scan one or 
more tables or expressions and return the computed result rows. For more 
information about query statements [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
 
b/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
index edd940a6316..ed856e8c92d 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/query-syntax/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 result rows.</p><p>Generally, the semantics of queries is standard. See the 
following
 sections to learn about extensions for supporting Beam&rsquo;s unified
 batch/streaming model:</p><ul><li><a 
href=/documentation/dsls/sql/extensions/joins>Joins</a></li><li><a 
href=/documentation/dsls/sql/windowing-and-triggering/>Windowing & 
Triggering</a></li></ul><p>The main functionality of Beam SQL is the 
<code>SELECT</code> statement. This is how you
diff --git 
a/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
index 6b482785e12..095516267fd 100644
--- 
a/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/calcite/scalar-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
 
b/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
index acc33bfa1bb..72330138004 100644
--- 
a/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/extensions/create-external-table/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=/documentation/io/built-in/>external storage system</a>.
 For some storage systems, <code>CREATE EXTERNAL TABLE</code> does not create a 
physical table until
 a write occurs. After the physical table exists, you can access the table with
diff --git 
a/website/generated-content/documentation/dsls/sql/extensions/joins/index.html 
b/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
index 80a5820b4ee..d074db21cb9 100644
--- 
a/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/extensions/joins/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 with all elements from another input. Due to the fact that both inputs are
 bounded, no windowing or triggering is involved.</p><h2 
id=join-unbounded-unbounded>Unbounded JOIN Unbounded</h2><p>Standard join 
implementation is used. All elements from one input are matched
 with all elements from another input.</p><p><strong>Windowing and 
Triggering</strong></p><p>The following properties must be satisfied when 
joining unbounded inputs:</p><ul><li>Inputs must have compatible windows, 
otherwise <code>IllegalArgumentException</code>
diff --git 
a/website/generated-content/documentation/dsls/sql/extensions/set/index.html 
b/website/generated-content/documentation/dsls/sql/extensions/set/index.html
index 5d298d08c41..28e72f30de6 100644
--- a/website/generated-content/documentation/dsls/sql/extensions/set/index.html
+++ b/website/generated-content/documentation/dsls/sql/extensions/set/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 Options</a>
 via the SQL shell. These are the same Pipeline Options passed to other Beam
 applications on the command line in the <code>--&lt;option>=&lt;value></code> 
format.</p><h2 id=syntax>Syntax</h2><pre><code>SET option = value
diff --git 
a/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
index b03701ea49d..4d98cd9ac47 100644
--- 
a/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/extensions/user-defined-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 needs, they can be authored in Java and invoked in your SQL query. These
 are commonly called UDF (for scalar functions) and UDAFs (for aggregate 
functions).</p><h2 id=create-and-specify-a-user-defined-function-udf>Create and 
specify a User Defined Function (UDF)</h2><p>A UDF can be the 
following:</p><ul><li>Any Java method that takes zero or more scalar fields and
 returns one scalar value.</li><li>A 
<code>SerializableFunction</code>.</li></ul><p>Below is an example of UDF and 
how to use it in DSL:</p><div class="language-java snippet"><div 
class="notebook-skip code-snippet"><a class=copy type=button 
data-bs-toggle=tooltip data-bs-placement=bottom title="Copy to clipboard"><img 
src=/images/copy-icon.svg></a><div class=highlight><pre class=chroma><code 
class=language-java data-lang=java><span class=cm>/**
diff --git 
a/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
 
b/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
index 938253ec21f..560a08c7693 100644
--- 
a/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/extensions/windowing-and-triggering/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 to a <code>BeamSql</code> transform</li><li>you can use windowing extensions 
in your windowing query, which will override
 the windowing of your input <code>PCollections</code></li></ul><p>Triggering 
can only be used by setting it on your input <code>PCollections</code>; there
 are no SQL extensions for specifying triggering.</p><p>This section covers the 
use of SQL extensions to directly apply windowing.</p><p>Beam SQL supports 
windowing functions specified in <code>GROUP BY</code> clause.
diff --git 
a/website/generated-content/documentation/dsls/sql/overview/index.html 
b/website/generated-content/documentation/dsls/sql/overview/index.html
index 0ddca2f6d09..f3e8de203c2 100644
--- a/website/generated-content/documentation/dsls/sql/overview/index.html
+++ b/website/generated-content/documentation/dsls/sql/overview/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 bounded and unbounded <code>PCollections</code> with SQL statements. Your SQL 
query
 is translated to a <code>PTransform</code>, an encapsulated segment of a Beam 
pipeline.
 You can freely mix SQL <code>PTransforms</code> and other 
<code>PTransforms</code> in your pipeline.</p><p>Beam SQL includes the 
following dialects:</p><ul><li><a href=https://calcite.apache.org>Beam Calcite 
SQL</a></li><li><a href=https://github.com/google/zetasql>Beam 
ZetaSQL</a></li></ul><p>Beam Calcite SQL is a variant of Apache Calcite, a 
dialect widespread in
diff --git a/website/generated-content/documentation/dsls/sql/shell/index.html 
b/website/generated-content/documentation/dsls/sql/shell/index.html
index 0af1a4f5de7..0f8a2649f64 100644
--- a/website/generated-content/documentation/dsls/sql/shell/index.html
+++ b/website/generated-content/documentation/dsls/sql/shell/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 
 ./sdks/java/extensions/sql/shell/build/install/shell/bin/shell
 </code></pre><p>After you run the commands, the SQL shell starts and you can 
type queries:</p><pre><code>Welcome to Beam SQL 2.6.0-SNAPSHOT (based on 
sqlline version 1.4.0)
diff --git 
a/website/generated-content/documentation/dsls/sql/walkthrough/index.html 
b/website/generated-content/documentation/dsls/sql/walkthrough/index.html
index 1d2f05d73f9..a49a68786d9 100644
--- a/website/generated-content/documentation/dsls/sql/walkthrough/index.html
+++ b/website/generated-content/documentation/dsls/sql/walkthrough/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 be in <code>Row</code> format. A <code>Row</code> represents a single, 
immutable record in a Beam SQL
 <code>PCollection</code>. The names and types of the fields/columns in the row 
are defined
 by its associated <a 
href=https://beam.apache.org/releases/javadoc/2.37.0/index.html?org/apache/beam/sdk/schemas/Schema.html>Schema</a>.
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
index a9d7d24c456..334378ad2ed 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/aggregate-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p><strong>Description</strong></p><p>Returns the average of 
non-<code>NULL</code> input values.</p><p><strong>Supported Argument 
Types</strong></p><p>FLOAT64. Note that, for floating point input types, the 
return result
 is non-deterministic, which means you might receive a different result each 
time
 you use this function.</p><p><strong>Returned Data 
Types</strong></p><ul><li>FLOAT64</li></ul><p><strong>Examples</strong></p><pre><code>SELECT
 AVG(x) as avg
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
index 09af8d22c98..6c41db0235b 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/conditional-expressions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
   WHEN value THEN result
   [WHEN ...]
   [ELSE else_result]
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
index 9cda26c20ec..498b9e406d3 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/conversion-rules/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 automatically under the conditions described below.</li></ul><p>The table 
below summarizes all possible <code>CAST</code>s and coercions. &ldquo;Coercion 
To&rdquo; applies to all <em>expressions</em> of a given data type (e.g. a 
column).</p><div class=table-wrapper><table><thead><tr><th>From 
Type</th><th>CAST to</th><th>Coercion 
To</th></tr></thead><tbody><tr><td>INT64</td><td><span>INT64</span><br><span>FLOAT64</span><br><span>STRING</span><br></td><td><span>FLOAT64</span><br></td></tr>
 [...]
 </code></pre><p>Cast syntax is used in a query to indicate that the result 
type of an
 expression should be converted to some other 
type.</p><p>Example:</p><pre><code>CAST(x=1 AS STRING)
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
index b3e032674cb..147666ac75d 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/data-types/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 each property applies to:</p><div 
class=table-wrapper><table><thead><tr><th>Property</th><th>Description</th><th>Applies
 To</th></tr></thead><tbody><tr><td>Nullable</td><td nowrap><code>NULL</code> 
is a valid value.</td><td>All data types, with the following 
exceptions:<ul><li>ARRAYs cannot be <code>NULL</code>.</li><li><code>NULL 
ARRAY</code> elements cannot persist to a table.</li><li>Queries cannot handle 
<code>NULL ARRAY</code> elements.</li></ul></td></tr><tr><td>Orderable</td><td 
n [...]
 Field names are ignored. Less than and greater than comparisons are not
 supported.</p><p><br><br><br><br>All types that support comparisons
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html 
b/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
index 19ebf07c3f3..0aa9dce642f 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/lexical/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <em>identifiers,</em> <em>quoted identifiers, literals</em>, 
<em>keywords</em>, <em>operators</em>, and
 <em>special characters</em>. Tokens can be separated by whitespace (space, 
backspace,
 tab, newline) or comments.</p><p><a id=identifiers></a></p><h2 
id=identifiers>Identifiers</h2><p>Identifiers are names that are associated 
with columns, tables, and other
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
index a4b65cd253e..0c71b74b9d1 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/math-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p><strong>Description</strong></p><p>Modulo function: returns 
the remainder of the division of X by Y. Returned value
 has the same sign as X.</p><h2 id=ceil>CEIL</h2><pre><code>CEIL(X)
 </code></pre><p><strong>Description</strong></p><p>Returns the smallest 
integral value (with FLOAT64
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html 
b/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
index 3f6095ae5cd..5c481580a69 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/operators/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 function call syntax. An operator manipulates any number of data inputs, also
 called operands, and returns a result.</p><p>Common 
conventions:</p><ul><li>Unless otherwise specified, all operators return 
<code>NULL</code> when one of the
 operands is <code>NULL</code>.</li></ul><p>The following table lists all 
supported operators from highest to
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html 
b/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
index 66ac5b0edaa..2d13438b06a 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/overview/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
index d7c80f8762a..3b152fb530f 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/query-syntax/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 the computed result rows.</p><h2 id=sql-syntax>SQL Syntax</h2><pre>
 <span class=var>query_statement</span>:
     <span class=var>query_expr</span>
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
 
b/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
index 5418d7a1189..c742ccf2f01 100644
--- 
a/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
+++ 
b/website/generated-content/documentation/dsls/sql/zetasql/string-functions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 canonical equivalence.</p><div 
class=table-wrapper><table><thead><tr><th>Operator 
syntax</th><th>Description</th></tr></thead><tbody><tr><td><a 
href=#char_length>CHAR_LENGTH(value)</a></td><td>Returns the length of the 
string in characters</td></tr><tr><td><a 
href=#character_length>CHARACTER_LENGTH(value)</a></td><td>Synonym for 
CHAR_LENGTH</td></tr><tr><td><a href=#concat>CONCAT(value1[, 
&mldr;])</a></td><td>Concatenates up to five values into a single 
result</td></tr><tr><td><a href=#e [...]
 </code></pre><p><strong>Description</strong></p><p>Returns the length of the 
STRING in characters.</p><p><strong>Return 
type</strong></p><p>INT64</p><p><strong>Examples</strong></p><pre><code>
 Table example:
diff --git 
a/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html 
b/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
index 5465e7f9b63..c89516ac483 100644
--- a/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
+++ b/website/generated-content/documentation/dsls/sql/zetasql/syntax/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 operand and the other operand is another numeric type, both operands are
 converted to FLOAT64 before the function is
 evaluated.</p></li><li><p>If an operand is <code>NULL</code>, the result is 
<code>NULL</code>, with the exception of the
diff --git a/website/generated-content/documentation/runners/spark/index.html 
b/website/generated-content/documentation/runners/spark/index.html
index d90436c6ac3..8d581b03b1d 100644
--- a/website/generated-content/documentation/runners/spark/index.html
+++ b/website/generated-content/documentation/runners/spark/index.html
@@ -18,7 +18,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>Runners</span></li><li><a 
href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a 
href=/documentation/runners/direct/>Direct Ru [...]
+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>Runners</span></li><li><a 
href=/documentation/runners/capability-matrix/>Capability Matrix</a></li><li><a 
href=/documentation/runners/direct/>Direct Ru [...]
 The Spark Runner can execute Spark pipelines just like a native Spark 
application; deploying a self-contained application for local mode, running on 
Spark&rsquo;s Standalone RM, or using YARN or Mesos.</p><p>The Spark Runner 
executes Beam pipelines on top of Apache Spark, providing:</p><ul><li>Batch and 
streaming (and combined) pipelines.</li><li>The same fault-tolerance <a 
href=https://spark.apache.org/docs/latest/streaming-programming-guide.html#fault-tolerance-semantics>guarantees</a>
 [...]
 the portable functionality of the Spark Runner. Please use the switcher below 
to
 select the appropriate Runner:</p><h2 
id=which-runner-to-use-portable-or-non-portable-runner>Which runner to use: 
portable or non portable runner?</h2><p>Beam and its Runners originally only 
supported JVM-based languages
@@ -93,13 +93,39 @@ provided with the Spark master address.</p><p 
class=language-py><ol start=2><li>
 For more details on the different deployment modes see: <a 
href=https://spark.apache.org/docs/latest/spark-standalone.html>Standalone</a>, 
<a href=https://spark.apache.org/docs/latest/running-on-yarn.html>YARN</a>, or 
<a 
href=https://spark.apache.org/docs/latest/running-on-mesos.html>Mesos</a>.</p><p
 class=language-py><ol><li>Start a Spark cluster which exposes the master on 
port 7077 by default.</li></ol></p><p class=language-py><ol start=2><li>Start 
JobService that will connect with th [...]
 Note however that <code>environment_type=LOOPBACK</code> is only intended for 
local testing.
 See <a href=/roadmap/portability/#sdk-harness-config>here</a> for 
details.</li></ol></p><p class=language-py>(Note that, depending on your 
cluster setup, you may need to change the <code>environment_type</code> option.
-See <a href=/roadmap/portability/#sdk-harness-config>here</a> for 
details.)</p><h2 id=pipeline-options-for-the-spark-runner>Pipeline options for 
the Spark Runner</h2><p>When executing your pipeline with the Spark Runner, you 
should consider the following pipeline options.</p><p 
class=language-java><br><b>For RDD/DStream based runner:</b><br></p><table 
class="language-java table 
table-bordered"><tr><th>Field</th><th>Description</th><th>Default 
Value</th></tr><tr><td><code>runner</code></t [...]
+See <a href=/roadmap/portability/#sdk-harness-config>here</a> for 
details.)</p><h3 id=running-on-dataproc-cluster-yarn-backed>Running on Dataproc 
cluster (YARN backed)</h3><p>To run Beam jobs written in Python, Go, and other 
supported languages, you can use the <code>SparkRunner</code> and 
<code>PortableRunner</code> as described on the Beam&rsquo;s <a 
href=https://beam.apache.org/documentation/runners/spark/>Spark Runner</a> page 
(also see <a href=https://beam.apache.org/roadmap/portabi [...]
+gcloud dataproc clusters create <b><i>CLUSTER_NAME</i></b> \
+    --optional-components=DOCKER \
+    --image-version=<b><i>DATAPROC_IMAGE_VERSION</i></b> \
+    --region=<b><i>REGION</i></b> \
+    --enable-component-gateway \
+    --scopes=https://www.googleapis.com/auth/cloud-platform \
+    --properties spark:spark.master.rest.enabled=true
+</pre><ul><li><code>--optional-components</code>: 
Docker.</li><li><code>--image-version</code>: the <a 
href=https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_cloud_dataproc_versions>cluster&rsquo;s
 image version</a>, which determines the Spark version installed on the cluster 
(for example, see the Apache Spark component versions listed for the latest and 
previous four <a 
href=https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-release-
 [...]
+gsutil mb <b><i>BUCKET_NAME</i></b>
+</pre><ol start=3><li>Install the necessary Python libraries for the job in 
your local environment.</li></ol><pre>
+python -m pip install apache-beam[gcp]==<b><i>BEAM_VERSION</i></b>
+</pre><ol start=4><li>Bundle the word count example pipeline along with all 
dependencies, artifacts, etc. required to run the pipeline into a jar that can 
be executed later.</li></ol><pre>
+python -m apache_beam.examples.wordcount \
+    --runner=SparkRunner \
+    --output_executable_path=<b><i>OUTPUT_JAR_PATH</b></i> \
+    --output=gs://<b><i>BUCKET_NAME</i></b>/python-wordcount-out \
+    --spark_version=3
+</pre><ul><li><code>--runner</code>(required): 
<code>SparkRunner</code>.</li><li><code>--output_executable_path</code>(required):
 path for the bundle jar to be 
created.</li><li><code>--output</code>(required): where output shall be 
written.</li><li><code>--spark_version</code>(optional): select spark version 2 
(default) or 3.</li></ul><ol start=5><li>Submit spark job to Dataproc 
cluster&rsquo;s master node.</li></ol><pre>
+gcloud dataproc jobs submit spark \
+        --cluster=<b><i>CLUSTER_NAME</i></b> \
+        --region=<b><i>REGION</i></b> \
+        --class=org.apache.beam.runners.spark.SparkPipelineRunner \
+        --jars=<b><i>OUTPUT_JAR_PATH</b></i>
+</pre><ul><li><code>--cluster</code>: name of created Dataproc 
cluster.</li><li><code>--region</code>: a supported Dataproc <a 
href=https://cloud.google.com/dataproc/docs/concepts/regional-endpoints#regional_endpoint_semantics>region</a>.</li><li><code>--class</code>:
 the entry point for your application.</li><li><code>--jars</code>: path to the 
bundled jar including your application and all dependencies.</li></ul><ol 
start=6><li>Check that the results were written to your bucket.</li></ [...]
+gsutil cat 
gs://<b><i>BUCKET_NAME</b></i>/python-wordcount-out-<b><i>SHARD_ID</b></i>
+</pre><h2 id=pipeline-options-for-the-spark-runner>Pipeline options for the 
Spark Runner</h2><p>When executing your pipeline with the Spark Runner, you 
should consider the following pipeline options.</p><p 
class=language-java><br><b>For RDD/DStream based runner:</b><br></p><table 
class="language-java table 
table-bordered"><tr><th>Field</th><th>Description</th><th>Default 
Value</th></tr><tr><td><code>runner</code></td><td>The pipeline runner to use. 
This option allows you to determine the [...]
 The <code>PipelineOptions</code> described above are not to replace 
<code>spark-submit</code>, but to complement it.
 Passing any of the above mentioned options could be done as one of the 
<code>application-arguments</code>, and setting <code>&ndash;master</code> 
takes precedence.
 For more on how to generally use <code>spark-submit</code> checkout Spark <a 
href=https://spark.apache.org/docs/latest/submitting-applications.html#launching-applications-with-spark-submit>documentation</a>.</p><h3
 id=monitoring-your-job>Monitoring your job</h3><p>You can monitor a running 
Spark job using the Spark <a 
href=https://spark.apache.org/docs/latest/monitoring.html#web-interfaces>Web 
Interfaces</a>. By default, this is available at port <code>4040</code> on the 
driver node. If  [...]
 Spark also has a history server to <a 
href=https://spark.apache.org/docs/latest/monitoring.html#viewing-after-the-fact>view
 after the fact</a>.<p class=language-java>Metrics are also available via <a 
href=https://spark.apache.org/docs/latest/monitoring.html#rest-api>REST API</a>.
 Spark provides a <a 
href=https://spark.apache.org/docs/latest/monitoring.html#metrics>metrics 
system</a> that allows reporting Spark metrics to a variety of Sinks. The Spark 
runner reports user-defined Beam Aggregators using this same metrics system and 
currently supports <code>GraphiteSink</code> and <code>CSVSink</code>, and 
providing support for additional Sinks supported by Spark is easy and 
straight-forward.</p><p class=language-py>Spark metrics are not yet supported 
on the portable [...]
-Instead, you should use <code>SparkContextOptions</code> which can only be 
used programmatically and is not a common <code>PipelineOptions</code> 
implementation.<br><br><b>For Structured Streaming based 
runner:</b><br>Provided SparkSession and StreamingListeners are not supported 
on the Spark Structured Streaming runner</p><p class=language-py>Provided 
SparkContext and StreamingListeners are not supported on the Spark portable 
runner.</p><h3 id=kubernetes>Kubernetes</h3><p>An <a href=htt [...]
+Instead, you should use <code>SparkContextOptions</code> which can only be 
used programmatically and is not a common <code>PipelineOptions</code> 
implementation.<br><br><b>For Structured Streaming based 
runner:</b><br>Provided SparkSession and StreamingListeners are not supported 
on the Spark Structured Streaming runner</p><p class=language-py>Provided 
SparkContext and StreamingListeners are not supported on the Spark portable 
runner.</p><h3 id=kubernetes>Kubernetes</h3><p>An <a href=htt [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/sdks/feature-comparison/index.html 
b/website/generated-content/documentation/sdks/feature-comparison/index.html
index ca7855de213..ce4ae44a770 100644
--- a/website/generated-content/documentation/sdks/feature-comparison/index.html
+++ b/website/generated-content/documentation/sdks/feature-comparison/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/sdks/go-cross-compilation/index.html 
b/website/generated-content/documentation/sdks/go-cross-compilation/index.html
new file mode 100644
index 00000000000..aa2f8ce7a79
--- /dev/null
+++ 
b/website/generated-content/documentation/sdks/go-cross-compilation/index.html
@@ -0,0 +1,45 @@
+<!doctype html><html lang=en class=no-js><head><meta charset=utf-8><meta 
http-equiv=x-ua-compatible content="IE=edge"><meta name=viewport 
content="width=device-width,initial-scale=1"><title>Go SDK Cross 
Compilation</title><meta name=description content="Apache Beam is an open 
source, unified model and set of language-specific SDKs for defining and 
executing data processing workflows, and also data ingestion and integration 
flows, supporting Enterprise Integration Patterns (EIPs) and Doma [...]
+<a class=navbar-link href=/get-started/beam-overview/>Get Started</a>
+<a class=navbar-link href=/documentation/>Documentation</a>
+<button type=button class="navbar-toggle menu-open" aria-expanded=false 
aria-controls=navbar onclick=openMenu()>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span 
class=icon-bar></span></button></div><div class="navbar-mask closed"></div><div 
id=navbar class="navbar-container closed"><button type=button 
class=navbar-toggle aria-expanded=false aria-controls=navbar id=closeMenu>
+<span class=sr-only>Toggle navigation</span>
+<span class=icon-bar></span><span class=icon-bar></span><span 
class=icon-bar></span></button><ul class="nav navbar-nav"><li><div 
class=searchBar-mobile><script>(function(){var 
cx='012923275103528129024:4emlchv9wzi';var 
gcse=document.createElement('script');gcse.type='text/javascript';gcse.async=true;gcse.src='https://cse.google.com/cse.js?cx='+cx;var
 
s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(gcse,s);})();</script><gcse:search></gcse:search></div></li><li><a
 c [...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg"; width="20" 
height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" 
fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 
4.403"/></svg></span></a><ul class="dropdown-menu dropdown-menu-right"><li><a 
target=_blank href=http://www.apache.org/>ASF Homepage</a></li><li><a 
target=_blank href=http://www.apache.org/licenses/>License</a> [...]
+<span><svg xmlns="http://www.w3.org/2000/svg"; width="12" height="11" 
fill="none" viewBox="0 0 12 11"><path stroke="#ff6d00" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M10.666 4.535 5.847 9.108 1.444 
4.535"/></svg></span></a><ul class=dropdown-menu><li><a 
class=navbar-dropdown-menu-link href=/documentation/>General</a></li><li><a 
class=navbar-dropdown-menu-link 
href=/documentation/sdks/java/>Languages</a></li><li><a 
class=navbar-dropdown-menu-link href=/documentati [...]
+<a class=navbar-link href=/community/>Community</a>
+<a class=navbar-link href=/contribute/>Contribute</a>
+<a class=navbar-link href=/blog/>Blog</a>
+<a class=navbar-link href=/case-studies/>Case Studies</a></div><div 
id=iconsBar><a type=button onclick=showSearch()><svg 
xmlns="http://www.w3.org/2000/svg"; width="25" height="24" fill="none" 
viewBox="0 0 25 24"><path stroke="#ff6d00" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2.75" d="M10.191 17c3.866.0 7-3.134 
7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zM21.191 21l-6-6"/></svg></a><a 
target=_blank 
href=https://github.com/apache/beam/edit/master/website/www/site/content/en 
[...]
+&nbsp;Apache
+<span class=arrow-icon><svg xmlns="http://www.w3.org/2000/svg"; width="20" 
height="20" fill="none" viewBox="0 0 20 20"><circle cx="10" cy="10" r="10" 
fill="#ff6d00"/><path stroke="#fff" stroke-linecap="round" 
stroke-linejoin="round" stroke-width="2" d="M8.535 5.28l4.573 4.818-4.573 
4.403"/></svg></span></a><ul class=dropdown-menu><li><a 
class=navbar-dropdown-menu-link target=_blank href=http://www.apache.org/>ASF 
Homepage</a></li><li><a class=navbar-dropdown-menu-link target=_blank href=h 
[...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+To execute a Go binary on a machine, it must be compiled for the matching 
operating system and processor architecture.
+This has implications for how Go SDK pipelines execute on <a 
href=/documentation/glossary/#worker>workers</a>.</p><h1 
id=development-using-go-run>Development: Using <code>go run</code></h1><p>When 
starting your in development pipeline against a remote runner, you can use 
<code>go run</code> from your development environment.
+The Go SDK will cross-compile your pipeline for <code>linux-amd64</code>, and 
use that as the pipeline&rsquo;s worker binary.</p><p>Alternatively, some local 
runners support Loopback execution.
+Setting the flag <code>--environment_type=LOOPBACK</code> can cause the runner 
to connect back to the local binary to serve as a worker.
+This can simplify development and debugging by avoiding hiding log output in a 
container.</p><h1 id=production-overriding-the-worker-binary>Production: 
Overriding the Worker Binary</h1><p>Go SDK pipeline binaries have a 
<code>--worker_binary</code> flag to set the path to the desired worker binary.
+This section will teach you how to use this flag for robust Go 
pipelines.</p><p>In production settings, it&rsquo;s common to only have access 
to compiled artifacts.
+For Go SDK pipelines, you may need to have two: one for the launching 
platform, and one for the worker platform.</p><p>In order to run a Go program 
on a specific platform, that program must be built targeting that 
platform&rsquo;s operating system, and architecture.
+The Go compiler is able to cross compile to a target architecture by setting 
the <a href=https://go.dev/doc/install/source#environment><code>$GOOS</code> 
and <code>$GOARCH</code> environment variables</a> for your build.</p><p>For 
example, you may be launching a pipeline from an M1 Macbook, but running the 
jobs on a Flink cluster executing on linux VMs with amd64 processors.
+In this situation, you would need to compile your pipeline binary for both 
<code>darwin-arm64</code> for the launching, and 
<code>linux-amd64</code>.</p><pre><code># Build binary for the launching 
platform.
+# This uses the defaults for your machine, so no new environment variables are 
needed.
+$ go build path/to/my/pipeline -o output/launcher
+
+# Build binary for the worker platform, linux-amd64
+$ GOOS=linux GOARCH=amd64 go build path/to/my/pipeline -o output/worker
+</code></pre><p>Execute the pipeline with the <code>--worker_binary</code> 
flag set to the desired binary.</p><pre><code># Launch the pipeline specifying 
the worker binary.
+$ ./output/launcher --worker_binary=output/worker --runner=flink 
--endpoint=... &lt;...other flags...&gt;
+</code></pre><h1 id=sdk-containers>SDK Containers</h1><p>Apache Beam releases 
<a href=documentation/runtime/environments/>SDK specific containers</a> for 
runners to use to launch workers.
+These containers provision and initialize the worker binary as appropriate for 
the SDK.</p><p>At present, Go SDK worker containers are only built for the 
<code>linux-amd64</code> platform.
+See <a href=https://issues.apache.org/jira/browse/BEAM-11704>BEAM-11704</a> 
for the current state of ARM64 container support.</p><p>Because Go is 
statically compiled, there are no runtime dependencies on a specific Go version 
for a container.
+The Go release used to compile your binary will be what your workers execute.
+Be sure to update to a recent <a href=https://go.dev/doc/devel/release>Go 
release</a> for best performance.</p></div></div><footer class=footer><div 
class=footer__contained><div class=footer__cols><div class="footer__cols__col 
footer__cols__col__logos"><div class=footer__cols__col__logo><img 
src=/images/beam_logo_circle.svg class=footer__logo alt="Beam logo"></div><div 
class=footer__cols__col__logo><img src=/images/apache_logo_circle.svg 
class=footer__logo alt="Apache logo"></div></div>< [...]
+<a href=http://www.apache.org>The Apache Software Foundation</a>
+| <a href=/privacy_policy>Privacy Policy</a>
+| <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git a/website/generated-content/documentation/sdks/go/index.html 
b/website/generated-content/documentation/sdks/go/index.html
index 431e69ef3c4..32e81667d8d 100644
--- a/website/generated-content/documentation/sdks/go/index.html
+++ b/website/generated-content/documentation/sdks/go/index.html
@@ -18,9 +18,10 @@
 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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
-It is based on the following <a 
href=https://s.apache.org/beam-go-sdk-design-rfc>design</a>.</p><h2 
id=get-started-with-the-go-sdk>Get Started with the Go SDK</h2><p>Get started 
with the <a href=/get-started/quickstart-go>Beam Go SDK quickstart</a> to set 
up your development environment and run an example pipeline. Then, read through 
the <a href=/documentation/programming-guide>Beam programming guide</a> to 
learn the basic concepts that apply to all SDKs in Beam.</p><p>See the <a 
href=ht [...]
-It&rsquo;s possible to write many kinds of transforms, but specific built in 
transforms may still be missing.</p><p>Requests for specific transforms may be 
filed to the <a 
href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20BEAM%20AND%20status%20in%20(Open%2C%20%22In%20Progress%22%2C%20Idea%2C%20%22Under%20Discussion%22%2C%20%22In%20Implementation%22%2C%20%22Triage%20Needed%22)%20AND%20component%20%3D%20sdk-go%20ORDER%20BY%20updated%20DESC"><code>sdk-go</code>
 component in J [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+It is based on the following <a 
href=https://s.apache.org/beam-go-sdk-design-rfc>design</a>.</p><p>Unlike Java 
and Python, Go is a statically compiled language.
+This means worker binaries may need to be <a 
href=/documentation/sdks/go-cross-compilation/>cross-compiled</a> to execute on 
distributed runners.</p><h2 id=get-started-with-the-go-sdk>Get Started with the 
Go SDK</h2><p>Get started with the <a href=/get-started/quickstart-go>Beam Go 
SDK quickstart</a> to set up your development environment and run an example 
pipeline. Then, read through the <a href=/documentation/programming-guide>Beam 
programming guide</a> to learn the basic concepts tha [...]
+It&rsquo;s possible to write many kinds of transforms, but specific built in 
transforms may still be missing, or incomplete.</p><p>Requests for specific 
transforms may be filed to the <a 
href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20BEAM%20AND%20status%20in%20(Open%2C%20%22In%20Progress%22%2C%20Idea%2C%20%22Under%20Discussion%22%2C%20%22In%20Implementation%22%2C%20%22Triage%20Needed%22)%20AND%20component%20%3D%20sdk-go%20ORDER%20BY%20updated%20DESC"><code>sdk-go</code>
 [...]
 Contributions are welcome.</p></div></div><footer class=footer><div 
class=footer__contained><div class=footer__cols><div class="footer__cols__col 
footer__cols__col__logos"><div class=footer__cols__col__logo><img 
src=/images/beam_logo_circle.svg class=footer__logo alt="Beam logo"></div><div 
class=footer__cols__col__logo><img src=/images/apache_logo_circle.svg 
class=footer__logo alt="Apache logo"></div></div><div class=footer-wrapper><div 
class=wrapper-grid><div class=footer__cols__col><di [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
diff --git 
a/website/generated-content/documentation/sdks/java-dependencies/index.html 
b/website/generated-content/documentation/sdks/java-dependencies/index.html
index 193b74f4537..34985be91ce 100644
--- a/website/generated-content/documentation/sdks/java-dependencies/index.html
+++ b/website/generated-content/documentation/sdks/java-dependencies/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 import additional dependencies. Version collisions can result in unexpected
 behavior in the service. If you are using any of these packages in your code, 
be
 aware that some libraries are not forward-compatible and you may need to pin to
diff --git 
a/website/generated-content/documentation/sdks/java-extensions/index.html 
b/website/generated-content/documentation/sdks/java-extensions/index.html
index bc614ca1628..53449df1302 100644
--- a/website/generated-content/documentation/sdks/java-extensions/index.html
+++ b/website/generated-content/documentation/sdks/java-extensions/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 is to simplify the most common cases of join to a simple function 
call.</p><p>The functions are generic and support joins of any Beam-supported 
types.
 Input to the join functions are <code>PCollections</code> of <code>Key</code> 
/ <code>Value</code>s. Both
 the left and right <code>PCollection</code>s need the same type for the key. 
All the join
diff --git 
a/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
 
b/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
index a3a18add19e..5f30ad62fdd 100644
--- 
a/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
+++ 
b/website/generated-content/documentation/sdks/java-multi-language-pipelines/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
     <span class=kd>private</span> <span class=kd>static</span> <span 
class=kd>final</span> <span class=n>String</span> <span class=n>URN</span> 
<span class=o>=</span> <span 
class=s>&#34;beam:transforms:xlang:pythontransform&#34;</span><span 
class=o>;</span>
 
     <span class=kd>private</span> <span class=kd>static</span> <span 
class=n>String</span> <span class=n>expansionAddress</span><span 
class=o>;</span>
diff --git 
a/website/generated-content/documentation/sdks/java-thirdparty/index.html 
b/website/generated-content/documentation/sdks/java-thirdparty/index.html
index dc6dad0859d..d2bcba5f05c 100644
--- a/website/generated-content/documentation/sdks/java-thirdparty/index.html
+++ b/website/generated-content/documentation/sdks/java-thirdparty/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 the webserver. The format of these log files is a configuration option in the 
Apache HTTPD server so parsing this
 into useful data elements is normally very hard to do.</p><p>To solve this 
problem in an easy way a library was created that works in combination with 
Apache Beam
 and is capable of doing this for both the Apache HTTPD and NGINX.</p><p>The 
basic idea is that the logformat specification is the schema used to create the 
line.
diff --git 
a/website/generated-content/documentation/sdks/java/euphoria/index.html 
b/website/generated-content/documentation/sdks/java/euphoria/index.html
index 82de183d4ad..a6c3982d558 100644
--- a/website/generated-content/documentation/sdks/java/euphoria/index.html
+++ b/website/generated-content/documentation/sdks/java/euphoria/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 In 2015, <a href=https://www.vldb.org/pvldb/vol8/p1792-Akidau.pdf>DataFlow 
whitepaper</a> inspired original authors to go one step further and also 
provide the unified API for both stream and batch processing.
 The API has been open-sourced in 2016 and is still in active development. As 
the Beam&rsquo;s community goal was very similar, we decided to contribute
 the API as a high level DSL over Beam Java SDK and share our effort with the 
community.</p><p>Euphoria DSL integration is still work in progress and is 
tracked as part of <a 
href=https://issues.apache.org/jira/browse/BEAM-3900>BEAM-3900</a>.</p><h2 
id=wordcount-example>WordCount Example</h2><p>Lets start with the small 
example.<div class="language-java snippet"><div class="notebook-skip 
code-snippet"><a class=copy type=button data-bs-toggle=tooltip 
data-bs-placement=bottom title="Copy to [...]
diff --git a/website/generated-content/documentation/sdks/java/index.html 
b/website/generated-content/documentation/sdks/java/index.html
index ac9472ab646..6020c90f02f 100644
--- a/website/generated-content/documentation/sdks/java/index.html
+++ b/website/generated-content/documentation/sdks/java/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=http://www.apache.org>The Apache Software Foundation</a>
 | <a href=/privacy_policy>Privacy Policy</a>
 | <a href=/feed.xml>RSS Feed</a><br><br>Apache Beam, Apache, Beam, the Beam 
logo, and the Apache feather logo are either registered trademarks or 
trademarks of The Apache Software Foundation. All other products or name brands 
are trademarks of their respective holders, including The Apache Software 
Foundation.</div></div></div></div></footer></body></html>
\ No newline at end of file
diff --git 
a/website/generated-content/documentation/sdks/java/testing/nexmark/index.html 
b/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
index 4988a1456d7..79fe351f79d 100644
--- 
a/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
+++ 
b/website/generated-content/documentation/sdks/java/testing/nexmark/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 queries in <a 
href=https://web.archive.org/web/20100620010601/http://datalab.cs.pdx.edu/niagaraST/NEXMark/>Nexmark
 research
 paper</a></p><p>These are multiple queries over a three entities model 
representing on online
 auction system:</p><ul><li><strong>Person</strong> represents a person 
submitting an item for auction and/or making
diff --git 
a/website/generated-content/documentation/sdks/python-dependencies/index.html 
b/website/generated-content/documentation/sdks/python-dependencies/index.html
index 71d36f20770..196534c9538 100644
--- 
a/website/generated-content/documentation/sdks/python-dependencies/index.html
+++ 
b/website/generated-content/documentation/sdks/python-dependencies/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 import additional dependencies. Version collisions can result in unexpected
 behavior in the service. If you are using any of these packages in your code, 
be
 aware that some libraries are not forward-compatible and you may need to pin to
diff --git 
a/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
 
b/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
index d6204f7c252..7c697db6f21 100644
--- 
a/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
+++ 
b/website/generated-content/documentation/sdks/python-multi-language-pipelines/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 
   <span class=kd>final</span> <span class=n>String</span> <span 
class=n>prefix</span><span class=o>;</span>
 
diff --git 
a/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
 
b/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
index ad9b850c54c..8718997c380 100644
--- 
a/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
+++ 
b/website/generated-content/documentation/sdks/python-pipeline-dependencies/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 </code></pre><p>This command creates a <code>requirements.txt</code> file that 
lists all packages that are installed on your machine, regardless of where they 
were installed from.</p></li><li><p>Edit the <code>requirements.txt</code> file 
and leave only the packages that were installed from PyPI and are used in the 
workflow source. Delete all packages that are not relevant to your 
code.</p></li><li><p>Run your pipeline with the following command-line 
option:</p><pre><code> --requirements [...]
 </code></pre><p>The runner will use the <code>requirements.txt</code> file to 
install your additional dependencies onto the remote 
workers.</p></li></ol><p><strong>Important:</strong> Remote workers will 
install all packages listed in the <code>requirements.txt</code> file. Because 
of this, it&rsquo;s very important that you delete non-PyPI packages from the 
<code>requirements.txt</code> file, as stated in step 2. If you don&rsquo;t 
remove non-PyPI packages, the remote workers will fail  [...]
 COPY &lt;path to requirements.txt&gt; /tmp/requirements.txt
diff --git 
a/website/generated-content/documentation/sdks/python-streaming/index.html 
b/website/generated-content/documentation/sdks/python-streaming/index.html
index ca407d269b7..00f5d4e2b87 100644
--- a/website/generated-content/documentation/sdks/python-streaming/index.html
+++ b/website/generated-content/documentation/sdks/python-streaming/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 <a href=#unsupported-features>limitations</a>) starting with Beam SDK version 
2.5.0.</p><h2 id=why-use-streaming-execution>Why use streaming 
execution?</h2><p>Beam creates an unbounded PCollection if your pipeline reads 
from a streaming or
 continously-updating data source (such as Cloud Pub/Sub). A runner must
 process an unbounded PCollection using a streaming job that runs continuously,
diff --git 
a/website/generated-content/documentation/sdks/python-type-safety/index.html 
b/website/generated-content/documentation/sdks/python-type-safety/index.html
index 7982af96112..09f37760e1b 100644
--- a/website/generated-content/documentation/sdks/python-type-safety/index.html
+++ b/website/generated-content/documentation/sdks/python-type-safety/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 The Beam SDK for Python implements a subset of <a 
href=https://www.python.org/dev/peps/pep-0484/>PEP 484</a> and aims to follow 
it as closely as possible in its own typehints module.</p><p>These flags 
control Beam type 
safety:</p><ul><li><p><code>--no_pipeline_type_check</code></p><p>Disables type 
checking during pipeline construction.
 Default is to perform these 
checks.</p></li><li><p><code>--runtime_type_check</code></p><p>Enables runtime 
type checking of every element.
 This may affect pipeline performance, so the default is to skip these 
checks.</p></li><li><p><code>--type_check_additional</code></p><p>Enables 
additional type checks. These are no enabled by default to preserve
diff --git a/website/generated-content/documentation/sdks/python/index.html 
b/website/generated-content/documentation/sdks/python/index.html
index 93ae93b9993..7f3f7590fc8 100644
--- a/website/generated-content/documentation/sdks/python/index.html
+++ b/website/generated-content/documentation/sdks/python/index.html
@@ -18,7 +18,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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
+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>Languages</span></li><li><span 
class=section-nav-list-title>Java</span><ul class=section-nav-list><li><a 
href=/documentation/sdks/java/>Java SDK overvi [...]
 is experimentally available (with some <a 
href=/documentation/sdks/python-streaming/#unsupported-features>limitations</a>)
 starting with Beam SDK version 2.5.0.</p><h2 id=python-type-safety>Python type 
safety</h2><p>Python is a dynamically-typed language with no static type 
checking. The Beam SDK for Python uses type hints during pipeline construction 
and runtime to try to emulate the correctness guarantees achieved by true 
static typing. <a href=/documentation/sdks/python-type-safety>Ensuring Python 
Type Safety</a> walks through how to use type hints, which help you to catch 
potential bugs up front with the [...]
 new I/O connectors. See the <a 
href=/documentation/io/developing-io-overview>Developing I/O connectors 
overview</a>
diff --git a/website/generated-content/learn/sdks/go/index.html 
b/website/generated-content/learn/sdks/go/index.html
new file mode 100644
index 00000000000..23ad63b5b54
--- /dev/null
+++ b/website/generated-content/learn/sdks/go/index.html
@@ -0,0 +1 @@
+<!doctype html><html><head><title>/documentation/sdks/go/</title><link 
rel=canonical href=/documentation/sdks/go/><meta name=robots 
content="noindex"><meta charset=utf-8><meta http-equiv=refresh content="0; 
url=/documentation/sdks/go/"></head></html>
\ No newline at end of file
diff --git a/website/generated-content/sitemap.xml 
b/website/generated-content/sitemap.xml
index 4bc9a1e7fd0..141fb730320 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>/blog/beam-2.37.0/</loc><lastmod>2022-03-04T10:14:02-08:00</lastmod></url><url><loc>/categories/blog/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/categories/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/blog/u
 [...]
\ 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>/blog/beam-2.37.0/</loc><lastmod>2022-03-04T10:14:02-08:00</lastmod></url><url><loc>/categories/blog/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/blog/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/categories/</loc><lastmod>2022-03-28T08:41:34-07:00</lastmod></url><url><loc>/blog/u
 [...]
\ No newline at end of file

Reply via email to