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

Abacn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/master by this push:
     new ddcd6544642 Add FlareDB to Beam runner docs (#40435)
ddcd6544642 is described below

commit ddcd6544642eec7a5835d928d211d41192e76d04
Author: Ganesh Sivakumar <[email protected]>
AuthorDate: Fri Oct 9 02:10:37 2026 +0530

    Add FlareDB to Beam runner docs (#40435)
    
    * add flaredb runner docs
---
 .../content/en/documentation/runners/flaredb.md    | 210 +++++++++++++++++++++
 website/www/site/data/capability_matrix.yaml       | 156 ++++++++++++++-
 .../www/site/data/en/documentation_runners.yaml    |   2 +
 website/www/site/data/works_with.yaml              |   3 +
 .../layouts/partials/section-menu/en/runners.html  |   1 +
 website/www/site/static/images/logo_flaredb.png    | Bin 0 -> 39481 bytes
 6 files changed, 371 insertions(+), 1 deletion(-)

diff --git a/website/www/site/content/en/documentation/runners/flaredb.md 
b/website/www/site/content/en/documentation/runners/flaredb.md
new file mode 100644
index 00000000000..dd080df5eda
--- /dev/null
+++ b/website/www/site/content/en/documentation/runners/flaredb.md
@@ -0,0 +1,210 @@
+---
+type: runners
+title: "FlareDB Runner"
+aliases: /learn/runners/flaredb/
+---
+<!--
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+# Overview
+
+[FlareDB](https://github.com/flare-db/flare-db) is an Apache Beam native 
streaming database for running Beam pipelines. It's built in Rust, a modern 
systems programming language, and it uses a streams-tables architecture 
inspired by the ideas described in the *Streaming Systems* book (Chp 6).
+
+<br/>
+
+The idea is that streams are data in motion, produced by computations 
(transforms), and a table is the same data at rest, during a windowing or 
grouping operation. FlareDB persists the PCollections as durable streams/tables 
on an append-only Apache Paimon table and runs the computations/transforms over 
the table using Apache DataFusion, a high-performance query engine.
+
+<br/>
+
+As a result, FlareDB is lightweight, takes fewer resources to run, and makes 
the computational results queryable without the need for an external database.
+
+The [Beam Capability Matrix](/documentation/runners/capability-matrix/) 
documents the supported capabilities of the FlareDB Runner.
+
+> **Note:** FlareDB is an independent and open-source runner for Apache Beam. 
It is not part of, or maintained by the Apache Beam project. The source code is 
available on [GitHub](https://github.com/flare-db/flare-db).
+
+# How to use FlareDB Runner
+
+Install FlareDB CLI to spawn up and manage FlareDB instance and run Beam 
pipelines.
+
+## 1. Install the FlareDB CLI
+
+If you are on **Linux or macOS**, please run the following command to install 
the CLI:
+
+```bash
+curl --proto '=https' --tlsv1.2 -LsSf 
https://github.com/flare-db/flare-db/releases/download/flare-cli-v0.3.2/flare-cli-installer.sh
 | sh
+```
+
+If you are on **Windows** use WSL.
+
+## 2. Initialize FlareDB
+
+After installing the CLI, run:
+
+```bash
+flare init
+```
+
+This command performs the initial setup by creating the required local 
directories and downloading the FlareDB binary and Apache Beam worker JAR.
+
+The initialization only needs to be **completed once**. After that, you can 
use the `flare up` and `flare down` commands to manage the instance.
+
+
+## 3. Start a FlareDB Instance
+
+Start a local FlareDB instance with:
+
+```bash
+flare up
+```
+
+Once the instance is running, FlareDB is ready to accept pipeline jobs.
+
+
+## 4. Configure Your Beam Pipeline
+
+To run an Apache Beam pipeline on FlareDB, add the FlareDB Runner SDK as a 
dependency to your Beam project. The runner SDK submits the pipeline to the 
FlareDB instance as a Job.
+
+{{< language-switcher java py >}}
+
+{{< paragraph class="language-java" >}}
+Add the FlareDB Runner SDK to your `pom.xml`:
+{{< /paragraph >}}
+
+{{< highlight java >}}
+<dependency>
+  <groupId>com.flare-db</groupId>
+  <artifactId>flaredb-runner</artifactId>
+  <version>0.3.2</version>
+</dependency>
+{{< /highlight >}}
+
+{{< paragraph class="language-java" >}}
+Set `FlareRunner` as the runner and configure the FlareDB instance and 
application JAR in your pipeline options:
+{{< /paragraph >}}
+
+{{< highlight java >}}
+WordCountPipelineOptions options =
+    PipelineOptionsFactory.fromArgs(args).as(WordCountPipelineOptions.class);
+
+options.setRunner(FlareRunner.class);
+options.setJobEndpoint("127.0.0.1:8099");
+options.setUberJar("build/libs/wordcount-0.2.0-all.jar");
+
+Pipeline pipeline = Pipeline.create(options);
+{{< /highlight >}}
+
+{{< paragraph class="language-java" >}}
+Alternatively, you can pass these as CLI arguments while running the pipeline:
+{{< /paragraph >}}
+
+{{< highlight java >}}
+./gradlew :wordcount:run --args="\
+  --runner=FlareRunner \
+  --jobEndpoint=127.0.0.1:8099 \
+  --uberJar=build/libs/wordcount-0.2.0-all.jar"
+{{< /highlight >}}
+
+{{< paragraph class="language-java" >}}
+Check out the full Java [WordCount 
example](https://github.com/flare-db/flare-db/tree/main/example/wordcount/src/main/java/com/flaredb/example)
 pipeline.
+{{< /paragraph >}}
+
+{{< paragraph class="language-py" >}}
+Create and activate a virtual environment, then install the `flaredb-runner` 
package. It includes the `apache-beam` dependency.
+{{< /paragraph >}}
+
+{{< highlight py >}}
+python3 -m venv .venv
+source .venv/bin/activate
+pip install flaredb-runner
+{{< /highlight >}}
+
+{{< paragraph class="language-py" >}}
+Set `FlareRunner` as the runner:
+{{< /paragraph >}}
+
+{{< highlight py >}}
+import apache_beam as beam
+from apache_beam.options.pipeline_options import PipelineOptions
+
+from flaredb_runner.flare_runner import FlareRunner
+
+pipeline_options = PipelineOptions(
+    job_endpoint="127.0.0.1:8099",
+)
+
+with beam.Pipeline(runner=FlareRunner(), options=pipeline_options) as p:
+{{< /highlight >}}
+
+{{< paragraph class="language-py" >}}
+Run the pipeline:
+{{< /paragraph >}}
+
+{{< highlight py >}}
+python3 wordcount.py
+{{< /highlight >}}
+
+{{< paragraph class="language-py" >}}
+Check out the full Python [wordcount 
example](https://github.com/flare-db/flare-db/blob/main/example/python/wordcount.py)
 pipeline.
+{{< /paragraph >}}
+
+
+## 5. Stop FlareDB instance
+
+After executing pipelines, run this command to stop FlareDB instance
+
+```bash
+flare down
+```
+
+## Pipeline options
+
+The FlareDB Runner is configured through the following pipeline options:
+
+<table class="table table-bordered">
+<tr>
+  <th>Option</th>
+  <th>Usage</th>
+  <th>Description</th>
+</tr>
+<tr>
+  <td>Runner</td>
+  <td><code>setRunner(FlareRunner.class)</code></td>
+  <td>Pipeline runner.</td>
+</tr>
+<tr>
+  <td>Job endpoint</td>
+  <td><code>setJobEndpoint("host:port")</code></td>
+  <td>URL of the FlareDB job service. Defaults to 
<code>127.0.0.1:8099</code>.</td>
+</tr>
+<tr>
+  <td>Uber JAR</td>
+  <td><code>setUberJar("/path/to/app.jar")</code></td>
+  <td>Path to the fat JAR staged to workers.</td>
+</tr>
+<tr>
+  <td>Job name</td>
+  <td><code>setJobName("my-job")</code></td>
+  <td>Name of the submitted job.</td>
+</tr>
+</table>
+
+## Next steps
+
+- Browse the [FlareDB documentation](https://docs.flare-db.com/).
+- See the [Beam Capability Matrix](/documentation/runners/capability-matrix/) 
to learn about features supported by FlareDB.
+- Try more [examples](https://github.com/flare-db/flare-db/tree/main/example) 
in the FlareDB repository.
+- Report bugs or request features in the [FlareDB issue 
tracker](https://github.com/flare-db/flare-db/issues).
+- Contributions are welcome. See the [Contributing 
Guide](https://github.com/flare-db/flare-db/blob/main/CONTRIBUTING.md) to get 
started.
+
+FlareDB is released under the Apache License 2.0.
diff --git a/website/www/site/data/capability_matrix.yaml 
b/website/www/site/data/capability_matrix.yaml
index 3ffeacaed4b..3263e269fb0 100644
--- a/website/www/site/data/capability_matrix.yaml
+++ b/website/www/site/data/capability_matrix.yaml
@@ -18,6 +18,8 @@ capability-matrix:
       name: Prism Local Runner
     - class: flink
       name: Apache Flink
+    - class: flaredb
+      name: FlareDB
     - class: spark-rdd
       name: Apache Spark (RDD/DStream based)
     - class: spark-dataset
@@ -56,6 +58,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ParDo itself, as per-element transformation with UDFs, is 
fully supported by Flink for both batch and streaming.
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ParDo execution is supported
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -95,6 +101,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: "Uses Flink's keyBy for key grouping. When grouping by 
window in streaming (creating the panes) the Flink runner uses the Beam code. 
This guarantees support for all windowing and triggering mechanisms."
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: Uses Apache DataFusion to run GroupByKey operation.
             - class: spark-rdd
               l1: "Partially"
               l2: fully supported in batch mode
@@ -134,6 +144,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ""
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -173,6 +187,10 @@ capability-matrix:
               l1: "Yes"
               l2: "fully supported"
               l3: Uses a combiner for pre-aggregation for batch and streaming.
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "CombinePerKey and CombineGlobally expand into combine 
sub-transforms that run in the SDK harness."
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -212,6 +230,10 @@ capability-matrix:
               l1: "Partially"
               l2: supported via inlining
               l3: ""
+            - class: flaredb
+              l1: "Partially"
+              l2: supported via inlining
+              l3: "Composite transforms are expanded and inlined by the SDK 
before the pipeline reaches the runner."
             - class: spark-rdd
               l1: "Partially"
               l2: supported via inlining
@@ -251,6 +273,10 @@ capability-matrix:
               l1: "Yes"
               l2: some size restrictions in streaming
               l3: Batch mode supports a distributed implementation, but 
streaming mode may force some size restrictions. Neither mode is able to push 
lookups directly up into key-based sources.
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Side inputs are modeled in fusion and watermarking, but 
side-input data is not delivered to the SDK harness (only bag user state is 
served)."
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -290,6 +316,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3:
+            - class: flaredb
+              l1: "Partially"
+              l2: bounded sources only
+              l3: "Bounded sources run in the SDK harness (e.g. TextIO). 
Unbounded sources support is not implemented yet"
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -329,6 +359,10 @@ capability-matrix:
               l1: "Partially"
               l2: All metrics types are supported.
               l3: Only attempted values are supported. No committed values for 
metrics.
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Metrics are not collected or reported"
             - class: spark-rdd
               l1: "Partially"
               l2: All metric types are supported.
@@ -368,6 +402,10 @@ capability-matrix:
               l1: "Partially"
               l2: non-merging windows
               l3: State is supported for non-merging windows. SetState and 
MapState are not yet supported.
+            - class: flaredb
+              l1: "Partially"
+              l2: bag/value state and timers
+              l3: "BagState and bag-backed ValueState are supported, together 
with event-time and processing-time timers. SetState, MapState, and 
ordered-list state are not yet supported."
             - class: spark-rdd
               l1: "Partially"
               l2: full support in batch mode
@@ -416,6 +454,10 @@ capability-matrix:
               l1: "Partially"
               l2: Only portable Flink Runner supports this.
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "Bounded Splittable DoFns are expanded 
(pair-with-restriction, split-and-size, truncate, process) and executed with 
residual handling."
             - class: spark-rdd
               l1: "Partially"
               l2: Only portable Spark Runner in batch mode supports this.
@@ -455,6 +497,10 @@ capability-matrix:
               l1: "Partially"
               l2: Only portable Flink Runner supports this.
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "SDF side inputs are modeled in the expansion but not 
delivered to the harness."
             - class: spark-rdd
               l1:
               l2:
@@ -494,6 +540,10 @@ capability-matrix:
               l1: "Partially"
               l2: Only portable Flink Runner supports this.
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "Residual roots returned by the SDF are processed as new 
work items with output-watermark holds."
             - class: spark-rdd
               l1: "Partially"
               l2: Only portable Spark Runner in batch mode supports this.
@@ -533,6 +583,10 @@ capability-matrix:
               l1: "No"
               l2:
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Runner-initiated work splitting is not implemented yet."
             - class: spark-rdd
               l1: "No"
               l2:
@@ -572,6 +626,10 @@ capability-matrix:
               l1: "No"
               l2:
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: ""
             - class: spark-rdd
               l1: "No"
               l2: not implemented
@@ -620,6 +678,10 @@ capability-matrix:
               l1: "Yes"
               l2:
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Unbounded sources are not yet supported."
             - class: spark-rdd
               l1:
               l2:
@@ -659,6 +721,10 @@ capability-matrix:
               l1: "Partially"
               l2: Only portable Flink Runner supports this.
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: ""
             - class: spark-rdd
               l1:
               l2:
@@ -698,6 +764,10 @@ capability-matrix:
               l1: "Yes"
               l2:
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: ""
             - class: spark-rdd
               l1:
               l2:
@@ -737,6 +807,10 @@ capability-matrix:
               l1: "No"
               l2:
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: ""
             - class: spark-rdd
               l1:
               l2:
@@ -776,6 +850,10 @@ capability-matrix:
               l1: "Partially"
               l2: Only portable Flink Runner supports this with checkpointing 
enabled.
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: ""
             - class: spark-rdd
               l1:
               l2:
@@ -824,6 +902,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: default
+              l3: ""
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -863,6 +945,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: supported
+              l3: "Uses the interval-window, GroupByKey aggregates per fixed 
window."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -902,6 +988,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: supported
+              l3: "Uses the interval-window coder, GroupByKey aggregates per 
sliding window."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -941,6 +1031,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "The session-window is not supported yet."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -980,6 +1074,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Only the global and interval windows are supported."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -1019,6 +1117,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Window merging is not supported."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -1058,6 +1160,10 @@ capability-matrix:
               l1: "Yes"
               l2: supported
               l3: ""
+            - class: flaredb
+              l1: "Partially"
+              l2: default only
+              l3: "GroupByKey emits with the window's max timestamp, custom 
OutputTimeFns (timestamp combiners) are not supported."
             - class: spark-rdd
               l1: "Yes"
               l2: supported
@@ -1107,6 +1213,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "The trigger is read from the windowing strategy."
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -1146,6 +1256,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "AfterWatermark and AfterSynchronizedProcessingTime drive 
end-of-window and late firings."
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -1186,6 +1300,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "AfterProcessingTime fires against the processing-time 
clock."
             - class: spark-rdd
               l1: "Yes"
               l2: "This is Spark streaming's native model"
@@ -1226,6 +1344,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ""
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -1266,6 +1388,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "AfterAll, AfterAny, AfterEach, OrFinally are implemented."
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -1306,6 +1432,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ""
             - class: spark-rdd
               l1: "No"
               l2: ""
@@ -1346,6 +1476,10 @@ capability-matrix:
               l1: "Partially"
               l2: non-merging windows
               l3: The Flink Runner supports timers in non-merging windows.
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: "Supports timers and delivered to the SDK harness."
             - class: spark-rdd
               l1: "Partially"
               l2: fully supported in batch mode
@@ -1395,6 +1529,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ""
             - class: spark-rdd
               l1: "Yes"
               l2: fully supported
@@ -1435,6 +1573,10 @@ capability-matrix:
               l1: "Yes"
               l2: fully supported
               l3: ""
+            - class: flaredb
+              l1: "Yes"
+              l2: fully supported
+              l3: ""
             - class: spark-rdd
               l1: "No"
               l2: ""
@@ -1484,6 +1626,10 @@ capability-matrix:
               l1: "Partially"
               l2:
               l3: Flink supports taking a "savepoint" of the pipeline and 
shutting the pipeline down after its completion.
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "The drain API is not implemented."
             - class: spark-rdd
               l1:
               l2:
@@ -1523,6 +1669,10 @@ capability-matrix:
               l1: "Partially"
               l2:
               l3: Flink has a native savepoint capability.
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "PCollections are materialized as Paimon tables, but there 
is no checkpoint/savepoint API."
             - class: spark-rdd
               l1: "Partially"
               l2:
@@ -1562,6 +1712,10 @@ capability-matrix:
               l1: "Partially"
               l2:
               l3: Flink may perform different shuffling algorithms for batch 
and streaming. Flink guarantees key-ordered delivery in streaming, though not 
in batch.
+            - class: flaredb
+              l1: "No"
+              l2: not implemented
+              l3: "Single-node execution, no explicit key-ordered delivery 
guarantee."
             - class: spark-rdd
               l1: "Unverified"
               l2:
@@ -1585,4 +1739,4 @@ capability-matrix:
             - class: kafka-streams
               l1: "No"
               l2: not implemented
-              l3: ""
\ No newline at end of file
+              l3: ""
diff --git a/website/www/site/data/en/documentation_runners.yaml 
b/website/www/site/data/en/documentation_runners.yaml
index 8c67a8f28c6..db56b99d73a 100644
--- a/website/www/site/data/en/documentation_runners.yaml
+++ b/website/www/site/data/en/documentation_runners.yaml
@@ -35,3 +35,5 @@
   description: Runs on <a  target="_blank" 
href="https://hazelcast.com/";>Hazelcast Jet</a>.
 - name: { text: "Twister2Runner:", link: /documentation/runners/twister2/ }
   description: Runs on <a target="_blank" 
href="https://twister2.org/";>Twister2</a>.
+- name: { text: "FlareRunner:", link: /documentation/runners/flaredb/ }
+  description: Runs on <a target="_blank" 
href="https://github.com/flare-db/flare-db";>FlareDB</a>.
diff --git a/website/www/site/data/works_with.yaml 
b/website/www/site/data/works_with.yaml
index cf748f23332..75cc92d9ba7 100644
--- a/website/www/site/data/works_with.yaml
+++ b/website/www/site/data/works_with.yaml
@@ -25,6 +25,9 @@
 - title: Twister2
   image_url: /images/logo_twister2.png
   url: /documentation/runners/twister2/
+- title: FlareDB Runner
+  image_url: /images/logo_flaredb.png
+  url: /documentation/runners/flaredb/
 - title: Amazon Kinesis Data Analytics
   image_url: /images/logo_amazon-kinesis.png
   url: 
https://docs.aws.amazon.com/kinesisanalytics/latest/java/examples-beam.html
diff --git a/website/www/site/layouts/partials/section-menu/en/runners.html 
b/website/www/site/layouts/partials/section-menu/en/runners.html
index 6119debe878..b579c9a4129 100644
--- a/website/www/site/layouts/partials/section-menu/en/runners.html
+++ b/website/www/site/layouts/partials/section-menu/en/runners.html
@@ -15,6 +15,7 @@
 <li><a href="/documentation/runners/direct/">Direct Runner</a></li>
 <li><a href="/documentation/runners/prism/">Prism Runner</a></li>
 <li><a href="/documentation/runners/flink/">Apache Flink</a></li>
+<li><a href="/documentation/runners/flaredb/">FlareDB Runner</a></li>
 <li><a href="/documentation/runners/nemo/">Apache Nemo</a></li>
 <li><a href="/documentation/runners/spark/">Apache Spark</a></li>
 <li><a href="/documentation/runners/dataflow/">Google Cloud Dataflow</a></li>
diff --git a/website/www/site/static/images/logo_flaredb.png 
b/website/www/site/static/images/logo_flaredb.png
new file mode 100644
index 00000000000..166320c58f6
Binary files /dev/null and b/website/www/site/static/images/logo_flaredb.png 
differ

Reply via email to