You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fluss.apache.org by gi...@apache.org on 2026/06/04 05:56:11 UTC
(fluss-website) branch asf-site updated: Deploy website - based on e32ba47099fb1ea03e3565ce6db903495d58a350
This is an automated email from the ASF dual-hosted git repository.
github-actions[bot] pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/fluss-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 2b28cd520 Deploy website - based on e32ba47099fb1ea03e3565ce6db903495d58a350
2b28cd520 is described below
commit 2b28cd520760a507842a8bfdef252186130e8706
Author: gh-actions <ac...@github.com>
AuthorDate: Thu Jun 4 05:56:03 2026 +0000
Deploy website - based on e32ba47099fb1ea03e3565ce6db903495d58a350
---
404.html | 4 +-
.../banner-98666bf14fe08041b4b05bd8eb130e11.png | Bin 0 -> 1670370 bytes
.../fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png | Bin 0 -> 210433 bytes
.../fig2-83362ecdf4c606f1417c0dbd214c94dd.png | Bin 0 -> 207183 bytes
.../fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png | Bin 0 -> 120395 bytes
.../fig4-08d80fb474cb83b4601a82bb67c86236.png | Bin 0 -> 98196 bytes
.../fig5-52cf53687f29879728f45ad5d03f9d85.png | Bin 0 -> 99544 bytes
.../{0264e805.0754e569.js => 0264e805.8944a0b5.js} | 2 +-
.../{08af526d.f3151ea9.js => 08af526d.1e6b79f3.js} | 2 +-
assets/js/38ffb1aa.675ebeef.js | 1 +
.../{7aafb598.189568a1.js => 7aafb598.212a20b5.js} | 2 +-
assets/js/814f3328.454caa83.js | 1 +
assets/js/814f3328.a974f167.js | 1 -
.../{9c4e8623.d2d42853.js => 9c4e8623.7eb64aad.js} | 2 +-
assets/js/b310ad83.f41e1da5.js | 1 +
assets/js/dbfc4782.1feb6e5c.js | 1 +
assets/js/dbfc4782.95a0d611.js | 1 -
.../{dd04b75e.300f61db.js => dd04b75e.e3533dff.js} | 2 +-
.../{ea70c07d.f38e4357.js => ea70c07d.dbd1f8ae.js} | 2 +-
assets/js/main.094a27c3.js | 2 -
assets/js/main.40c87326.js | 2 +
...js.LICENSE.txt => main.40c87326.js.LICENSE.txt} | 0
assets/js/runtime~main.2d469763.js | 1 +
assets/js/runtime~main.84321ecc.js | 1 -
.../index.html | 8 +-
blog/archive/index.html | 6 +-
blog/atom.xml | 185 +++++++++++++++------
blog/authors/index.html | 6 +-
blog/column-pruning-streaming-storage/index.html | 6 +-
blog/fluss-for-ai/index.html | 6 +-
blog/fluss-intro/index.html | 6 +-
blog/fluss-java-client/index.html | 6 +-
blog/fluss-joins-asf/index.html | 6 +-
blog/fluss-open-source/index.html | 6 +-
blog/fluss-storage-hierarchy/index.html | 8 +-
.../index.html | 161 ++++++++++++++++++
blog/fluss_fraud_detection/index.html | 6 +-
blog/fluss_rust_client_release/index.html | 6 +-
blog/hands-on-fluss-lakehouse/index.html | 8 +-
blog/index.html | 23 ++-
blog/page/2/index.html | 17 +-
blog/page/3/index.html | 12 +-
blog/partial-updates/index.html | 6 +-
blog/pk-key-tables-log-cache-streaming/index.html | 6 +-
blog/releases/0.6/index.html | 6 +-
blog/releases/0.7/index.html | 6 +-
blog/releases/0.8/index.html | 6 +-
blog/releases/0.9/index.html | 6 +-
blog/roaringbitmap-uv-deduplication/index.html | 6 +-
blog/rss.xml | 177 +++++++++++++++-----
blog/tags/apache-fluss/index.html | 6 +-
blog/tags/apache-iceberg/index.html | 6 +-
blog/tags/arrow/index.html | 6 +-
blog/tags/column-pruning/index.html | 6 +-
blog/tags/fluss-cpp/index.html | 6 +-
blog/tags/fluss-rs/index.html | 6 +-
blog/tags/fluss-rust/index.html | 6 +-
blog/tags/fluss/index.html | 6 +-
blog/tags/index.html | 6 +-
blog/tags/kafka/index.html | 6 +-
blog/tags/performance/index.html | 6 +-
blog/tags/pyfluss/index.html | 6 +-
blog/tags/real-time-analytics/index.html | 6 +-
blog/tags/releases/index.html | 6 +-
blog/tags/streaming-lakehouse/index.html | 6 +-
blog/tags/streaming/index.html | 6 +-
.../index.html | 6 +-
blog/taobao-practice/index.html | 6 +-
blog/tiering-service/index.html | 6 +-
blog/unified-streaming-lakehouse/index.html | 6 +-
blog/unveil-fluss-logo/index.html | 8 +-
.../index.html | 6 +-
blog/why-fluss/index.html | 6 +-
community/become-a-committer/index.html | 4 +-
community/dev/building/index.html | 4 +-
community/dev/ide-setup/index.html | 4 +-
community/fluss-logos/index.html | 4 +-
community/fluss-team/index.html | 4 +-
.../bug-reports-feature-requests/index.html | 4 +-
.../contribute-blog-posts/index.html | 4 +-
.../how-to-contribute/contribute-code/index.html | 4 +-
.../how-to-contribute/contribute-docs/index.html | 4 +-
.../hosting-community-calls/index.html | 4 +-
community/how-to-contribute/overview/index.html | 4 +-
.../review-pull-requests/index.html | 4 +-
.../creating-a-fluss-release/index.html | 4 +-
.../creating-a-fluss-shaded-release/index.html | 4 +-
.../release-manager-preparation/index.html | 4 +-
.../verifying-a-fluss-release/index.html | 4 +-
.../verifying-a-fluss-shaded-release/index.html | 4 +-
community/security/index.html | 4 +-
community/welcome/index.html | 4 +-
compare/kafka/index.html | 4 +-
docs/0.5/concepts/architecture/index.html | 4 +-
docs/0.5/dev/building/index.html | 4 +-
docs/0.5/dev/ide-setup/index.html | 4 +-
docs/0.5/engine-flink/ddl/index.html | 4 +-
docs/0.5/engine-flink/getting-started/index.html | 4 +-
docs/0.5/engine-flink/lookups/index.html | 4 +-
docs/0.5/engine-flink/reads/index.html | 4 +-
docs/0.5/engine-flink/writes/index.html | 4 +-
docs/0.5/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
docs/0.5/install-deploy/overview/index.html | 4 +-
docs/0.5/maintenance/configuration/index.html | 4 +-
docs/0.5/maintenance/filesystems/hdfs/index.html | 4 +-
docs/0.5/maintenance/filesystems/oss/index.html | 4 +-
.../maintenance/filesystems/overview/index.html | 4 +-
docs/0.5/maintenance/filesystems/s3/index.html | 4 +-
docs/0.5/maintenance/logging/index.html | 4 +-
docs/0.5/maintenance/metric-reporters/index.html | 4 +-
docs/0.5/maintenance/monitor-metrics/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/0.5/quickstart/flink/index.html | 4 +-
.../integrate-data-lakes/paimon/index.html | 4 +-
docs/0.5/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
.../table-design/data-distribution/ttl/index.html | 4 +-
docs/0.5/table-design/data-types/index.html | 4 +-
docs/0.5/table-design/overview/index.html | 4 +-
.../table-design/table-types/log-table/index.html | 4 +-
.../table-design/table-types/pk-table/index.html | 4 +-
docs/0.6/concepts/architecture/index.html | 4 +-
docs/0.6/engine-flink/ddl/index.html | 4 +-
docs/0.6/engine-flink/getting-started/index.html | 4 +-
docs/0.6/engine-flink/lookups/index.html | 4 +-
docs/0.6/engine-flink/options/index.html | 4 +-
docs/0.6/engine-flink/reads/index.html | 4 +-
docs/0.6/engine-flink/writes/index.html | 4 +-
docs/0.6/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
docs/0.6/install-deploy/overview/index.html | 4 +-
docs/0.6/maintenance/configuration/index.html | 4 +-
docs/0.6/maintenance/filesystems/hdfs/index.html | 4 +-
docs/0.6/maintenance/filesystems/oss/index.html | 4 +-
.../maintenance/filesystems/overview/index.html | 4 +-
docs/0.6/maintenance/filesystems/s3/index.html | 4 +-
.../maintenance/observability/logging/index.html | 4 +-
.../observability/metric-reporters/index.html | 4 +-
.../observability/monitor-metrics/index.html | 4 +-
.../observability/quickstart/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/0.6/quickstart/flink/index.html | 4 +-
.../integrate-data-lakes/paimon/index.html | 4 +-
docs/0.6/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
.../table-design/data-distribution/ttl/index.html | 4 +-
docs/0.6/table-design/data-types/index.html | 4 +-
docs/0.6/table-design/overview/index.html | 4 +-
.../table-design/table-types/log-table/index.html | 4 +-
.../table-design/table-types/pk-table/index.html | 4 +-
.../pk-table/merge-engines/first-row/index.html | 4 +-
.../table-types/pk-table/merge-engines/index.html | 4 +-
.../pk-table/merge-engines/versioned/index.html | 4 +-
docs/0.7/apis/java-client/index.html | 4 +-
docs/0.7/concepts/architecture/index.html | 4 +-
docs/0.7/engine-flink/datastream/index.html | 4 +-
docs/0.7/engine-flink/ddl/index.html | 4 +-
docs/0.7/engine-flink/getting-started/index.html | 4 +-
docs/0.7/engine-flink/lookups/index.html | 4 +-
docs/0.7/engine-flink/options/index.html | 4 +-
docs/0.7/engine-flink/reads/index.html | 4 +-
docs/0.7/engine-flink/writes/index.html | 4 +-
docs/0.7/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
docs/0.7/install-deploy/overview/index.html | 4 +-
docs/0.7/maintenance/configuration/index.html | 4 +-
docs/0.7/maintenance/filesystems/hdfs/index.html | 4 +-
docs/0.7/maintenance/filesystems/oss/index.html | 4 +-
.../maintenance/filesystems/overview/index.html | 4 +-
docs/0.7/maintenance/filesystems/s3/index.html | 4 +-
.../maintenance/observability/logging/index.html | 4 +-
.../observability/metric-reporters/index.html | 4 +-
.../observability/monitor-metrics/index.html | 4 +-
.../observability/quickstart/index.html | 4 +-
docs/0.7/maintenance/operations/racks/index.html | 4 +-
.../maintenance/operations/upgrading/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/0.7/quickstart/flink/index.html | 4 +-
docs/0.7/quickstart/security/index.html | 4 +-
docs/0.7/security/authentication/index.html | 4 +-
docs/0.7/security/authorization/index.html | 4 +-
docs/0.7/security/overview/index.html | 4 +-
.../integrate-data-lakes/paimon/index.html | 4 +-
docs/0.7/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
.../table-design/data-distribution/ttl/index.html | 4 +-
docs/0.7/table-design/data-types/index.html | 4 +-
docs/0.7/table-design/overview/index.html | 4 +-
.../table-design/table-types/log-table/index.html | 4 +-
.../table-design/table-types/pk-table/index.html | 4 +-
.../pk-table/merge-engines/default/index.html | 4 +-
.../pk-table/merge-engines/first-row/index.html | 4 +-
.../table-types/pk-table/merge-engines/index.html | 4 +-
.../pk-table/merge-engines/versioned/index.html | 4 +-
docs/0.8/apis/java-client/index.html | 4 +-
docs/0.8/concepts/architecture/index.html | 4 +-
docs/0.8/engine-flink/datastream/index.html | 4 +-
docs/0.8/engine-flink/ddl/index.html | 4 +-
docs/0.8/engine-flink/delta-joins/index.html | 4 +-
docs/0.8/engine-flink/getting-started/index.html | 4 +-
docs/0.8/engine-flink/lookups/index.html | 4 +-
docs/0.8/engine-flink/options/index.html | 4 +-
docs/0.8/engine-flink/reads/index.html | 4 +-
docs/0.8/engine-flink/writes/index.html | 4 +-
docs/0.8/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
.../install-deploy/deploying-with-helm/index.html | 4 +-
docs/0.8/install-deploy/overview/index.html | 4 +-
docs/0.8/maintenance/configuration/index.html | 4 +-
docs/0.8/maintenance/filesystems/hdfs/index.html | 4 +-
docs/0.8/maintenance/filesystems/obs/index.html | 4 +-
docs/0.8/maintenance/filesystems/oss/index.html | 4 +-
.../maintenance/filesystems/overview/index.html | 4 +-
docs/0.8/maintenance/filesystems/s3/index.html | 4 +-
.../maintenance/observability/logging/index.html | 4 +-
.../observability/metric-reporters/index.html | 4 +-
.../observability/monitor-metrics/index.html | 4 +-
.../observability/quickstart/index.html | 4 +-
.../operations/graceful-shutdown/index.html | 4 +-
docs/0.8/maintenance/operations/racks/index.html | 4 +-
.../operations/updating-configs/index.html | 4 +-
.../operations/upgrade-notes-0.8/index.html | 4 +-
.../operations/upgrade-notes-0.9/index.html | 4 +-
.../maintenance/operations/upgrading/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/0.8/quickstart/flink/index.html | 4 +-
docs/0.8/quickstart/lakehouse/index.html | 4 +-
docs/0.8/quickstart/security/index.html | 4 +-
docs/0.8/security/authentication/index.html | 4 +-
docs/0.8/security/authorization/index.html | 4 +-
docs/0.8/security/overview/index.html | 4 +-
.../integrate-data-lakes/iceberg/index.html | 4 +-
.../integrate-data-lakes/lance/index.html | 4 +-
.../integrate-data-lakes/paimon/index.html | 4 +-
docs/0.8/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
.../table-design/data-distribution/ttl/index.html | 4 +-
docs/0.8/table-design/data-types/index.html | 4 +-
docs/0.8/table-design/overview/index.html | 4 +-
.../table-design/table-types/log-table/index.html | 4 +-
.../table-design/table-types/pk-table/index.html | 4 +-
.../pk-table/merge-engines/default/index.html | 4 +-
.../pk-table/merge-engines/first-row/index.html | 4 +-
.../table-types/pk-table/merge-engines/index.html | 4 +-
.../pk-table/merge-engines/versioned/index.html | 4 +-
docs/apis/client-support-matrix/index.html | 4 +-
docs/apis/java-client/index.html | 4 +-
docs/concepts/architecture/index.html | 4 +-
docs/engine-flink/datastream/index.html | 4 +-
docs/engine-flink/ddl/index.html | 4 +-
docs/engine-flink/delta-joins/index.html | 4 +-
docs/engine-flink/getting-started/index.html | 4 +-
docs/engine-flink/lookups/index.html | 4 +-
docs/engine-flink/options/index.html | 4 +-
docs/engine-flink/procedures/index.html | 4 +-
docs/engine-flink/reads/index.html | 4 +-
docs/engine-flink/writes/index.html | 4 +-
docs/engine-spark/ddl/index.html | 4 +-
docs/engine-spark/getting-started/index.html | 4 +-
docs/engine-spark/options/index.html | 4 +-
docs/engine-spark/procedures/index.html | 4 +-
docs/engine-spark/reads/index.html | 4 +-
docs/engine-spark/structured-streaming/index.html | 4 +-
docs/engine-spark/writes/index.html | 4 +-
docs/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
docs/install-deploy/deploying-with-helm/index.html | 4 +-
docs/install-deploy/overview/index.html | 4 +-
docs/maintenance/configuration/index.html | 4 +-
docs/maintenance/filesystems/azure/index.html | 4 +-
docs/maintenance/filesystems/gs/index.html | 4 +-
docs/maintenance/filesystems/hdfs/index.html | 4 +-
docs/maintenance/filesystems/obs/index.html | 4 +-
docs/maintenance/filesystems/oss/index.html | 4 +-
docs/maintenance/filesystems/overview/index.html | 4 +-
docs/maintenance/filesystems/s3/index.html | 4 +-
docs/maintenance/observability/logging/index.html | 4 +-
.../observability/metric-reporters/index.html | 4 +-
.../observability/monitor-metrics/index.html | 4 +-
.../observability/quickstart/index.html | 4 +-
.../operations/graceful-shutdown/index.html | 4 +-
docs/maintenance/operations/racks/index.html | 4 +-
docs/maintenance/operations/rebalance/index.html | 4 +-
.../operations/updating-configs/index.html | 4 +-
.../operations/upgrade-notes-0.8/index.html | 4 +-
.../operations/upgrade-notes-0.9/index.html | 4 +-
.../operations/upgrade-notes-archive/index.html | 4 +-
docs/maintenance/operations/upgrading/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/next/apis/client-support-matrix/index.html | 4 +-
docs/next/apis/cpp-client/index.html | 4 +-
docs/next/apis/java-client/index.html | 4 +-
docs/next/apis/python-client/index.html | 4 +-
docs/next/apis/rust-client/index.html | 4 +-
docs/next/concepts/architecture/index.html | 4 +-
docs/next/engine-flink/datastream/index.html | 4 +-
docs/next/engine-flink/ddl/index.html | 4 +-
docs/next/engine-flink/delta-joins/index.html | 4 +-
docs/next/engine-flink/getting-started/index.html | 4 +-
docs/next/engine-flink/lookups/index.html | 4 +-
docs/next/engine-flink/options/index.html | 4 +-
docs/next/engine-flink/procedures/index.html | 4 +-
docs/next/engine-flink/reads/index.html | 4 +-
docs/next/engine-flink/writes/index.html | 4 +-
docs/next/engine-spark/ddl/index.html | 4 +-
docs/next/engine-spark/getting-started/index.html | 4 +-
docs/next/engine-spark/options/index.html | 4 +-
docs/next/engine-spark/procedures/index.html | 4 +-
docs/next/engine-spark/reads/index.html | 4 +-
.../engine-spark/structured-streaming/index.html | 4 +-
docs/next/engine-spark/writes/index.html | 4 +-
docs/next/index.html | 4 +-
.../deploying-distributed-cluster/index.html | 4 +-
.../deploying-local-cluster/index.html | 4 +-
.../deploying-with-docker/index.html | 4 +-
.../install-deploy/deploying-with-helm/index.html | 4 +-
docs/next/install-deploy/overview/index.html | 4 +-
docs/next/maintenance/configuration/index.html | 4 +-
docs/next/maintenance/filesystems/azure/index.html | 4 +-
docs/next/maintenance/filesystems/cos/index.html | 4 +-
docs/next/maintenance/filesystems/gs/index.html | 4 +-
docs/next/maintenance/filesystems/hdfs/index.html | 4 +-
docs/next/maintenance/filesystems/obs/index.html | 4 +-
docs/next/maintenance/filesystems/oss/index.html | 4 +-
.../maintenance/filesystems/overview/index.html | 4 +-
docs/next/maintenance/filesystems/s3/index.html | 4 +-
.../maintenance/observability/logging/index.html | 4 +-
.../observability/metric-reporters/index.html | 4 +-
.../observability/monitor-metrics/index.html | 4 +-
.../observability/quickstart/index.html | 4 +-
.../operations/graceful-shutdown/index.html | 4 +-
docs/next/maintenance/operations/racks/index.html | 4 +-
.../maintenance/operations/rebalance/index.html | 4 +-
.../operations/updating-configs/index.html | 4 +-
.../operations/upgrade-notes-0.8/index.html | 4 +-
.../operations/upgrade-notes-0.9/index.html | 4 +-
.../operations/upgrade-notes-1.0/index.html | 4 +-
.../operations/upgrade-notes-archive/index.html | 4 +-
.../maintenance/operations/upgrading/index.html | 4 +-
.../tiered-storage/lakehouse-storage/index.html | 4 +-
.../maintenance/tiered-storage/overview/index.html | 4 +-
.../tiered-storage/remote-storage/index.html | 4 +-
docs/next/quickstart/flink/index.html | 4 +-
docs/next/quickstart/lakehouse/index.html | 4 +-
docs/next/quickstart/security/index.html | 4 +-
docs/next/security/authentication/index.html | 4 +-
docs/next/security/authorization/index.html | 4 +-
docs/next/security/overview/index.html | 4 +-
.../catalogs/lakekeeper/index.html | 4 +-
.../formats/iceberg/index.html | 4 +-
.../integrate-data-lakes/formats/lance/index.html | 4 +-
.../integrate-data-lakes/formats/paimon/index.html | 4 +-
docs/next/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
.../table-design/data-distribution/ttl/index.html | 4 +-
docs/next/table-design/data-formats/index.html | 4 +-
docs/next/table-design/data-types/index.html | 4 +-
.../merge-engines/aggregation/index.html | 4 +-
.../table-design/merge-engines/default/index.html | 4 +-
.../merge-engines/first-row/index.html | 4 +-
docs/next/table-design/merge-engines/index.html | 4 +-
.../merge-engines/versioned/index.html | 4 +-
docs/next/table-design/overview/index.html | 4 +-
.../table-design/table-types/log-table/index.html | 4 +-
.../table-design/table-types/pk-table/index.html | 4 +-
docs/next/table-design/virtual-tables/index.html | 4 +-
docs/quickstart/flink/index.html | 4 +-
docs/quickstart/lakehouse/index.html | 4 +-
docs/quickstart/security/index.html | 4 +-
docs/security/authentication/index.html | 4 +-
docs/security/authorization/index.html | 4 +-
docs/security/overview/index.html | 4 +-
.../integrate-data-lakes/iceberg/index.html | 4 +-
.../integrate-data-lakes/lance/index.html | 4 +-
.../integrate-data-lakes/paimon/index.html | 4 +-
docs/streaming-lakehouse/overview/index.html | 4 +-
.../data-distribution/bucketing/index.html | 4 +-
.../data-distribution/partitioning/index.html | 4 +-
docs/table-design/data-distribution/ttl/index.html | 4 +-
docs/table-design/data-formats/index.html | 4 +-
docs/table-design/data-types/index.html | 4 +-
.../merge-engines/aggregation/index.html | 4 +-
docs/table-design/merge-engines/default/index.html | 4 +-
.../merge-engines/first-row/index.html | 4 +-
docs/table-design/merge-engines/index.html | 4 +-
.../merge-engines/versioned/index.html | 4 +-
docs/table-design/overview/index.html | 4 +-
docs/table-design/table-types/log-table/index.html | 4 +-
docs/table-design/table-types/pk-table/index.html | 4 +-
docs/table-design/virtual-tables/index.html | 4 +-
downloads/index.html | 4 +-
index.html | 4 +-
learn/talks/index.html | 4 +-
learn/videos/index.html | 4 +-
roadmap/index.html | 4 +-
search/index.html | 4 +-
sitemap.xml | 2 +-
sw.js | 2 +-
424 files changed, 1308 insertions(+), 961 deletions(-)
diff --git a/404.html b/404.html
index c592bff5b..a819a219a 100644
--- a/404.html
+++ b/404.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/assets/images/banner-98666bf14fe08041b4b05bd8eb130e11.png b/assets/images/banner-98666bf14fe08041b4b05bd8eb130e11.png
new file mode 100644
index 000000000..a45ca06d1
Binary files /dev/null and b/assets/images/banner-98666bf14fe08041b4b05bd8eb130e11.png differ
diff --git a/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png b/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png
new file mode 100644
index 000000000..9acc89550
Binary files /dev/null and b/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png differ
diff --git a/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png b/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png
new file mode 100644
index 000000000..a96f624a5
Binary files /dev/null and b/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png differ
diff --git a/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png b/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png
new file mode 100644
index 000000000..894007348
Binary files /dev/null and b/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png differ
diff --git a/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png b/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png
new file mode 100644
index 000000000..c887c03f2
Binary files /dev/null and b/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png differ
diff --git a/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png b/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png
new file mode 100644
index 000000000..ef2a93b65
Binary files /dev/null and b/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png differ
diff --git a/assets/js/0264e805.0754e569.js b/assets/js/0264e805.8944a0b5.js
similarity index 60%
rename from assets/js/0264e805.0754e569.js
rename to assets/js/0264e805.8944a0b5.js
index b0a8ba14c..441888b63 100644
--- a/assets/js/0264e805.0754e569.js
+++ b/assets/js/0264e805.8944a0b5.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[5],{10972(e,t,s){s.r(t),s.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>c,frontMatter:()=>o,metadata:()=>n,toc:()=>h});var n=s(93151),r=s(74848),i=s(28453);const o={slug:"fluss-storage-hierarchy",title:"The Storage Hierarchy: Hot, Remote, and Lake",date:new Date("2026-06-02T00:00:00.000Z"),authors:["giannis"],image:"./assets/storage_hierarchy/banner.png"},a=void 0,l={image:s(30732).A,au [...]
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[5],{10972(e,t,s){s.r(t),s.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>c,frontMatter:()=>o,metadata:()=>n,toc:()=>h});var n=s(93151),i=s(74848),r=s(28453);const o={slug:"fluss-storage-hierarchy",title:"The Storage Hierarchy: Hot, Remote, and Lake",date:new Date("2026-06-02T00:00:00.000Z"),authors:["giannis"],image:"./assets/storage_hierarchy/banner.png"},a=void 0,l={image:s(30732).A,au [...]
\ No newline at end of file
diff --git a/assets/js/08af526d.f3151ea9.js b/assets/js/08af526d.1e6b79f3.js
similarity index 62%
rename from assets/js/08af526d.f3151ea9.js
rename to assets/js/08af526d.1e6b79f3.js
index 89a187451..a6a0e1796 100644
--- a/assets/js/08af526d.f3151ea9.js
+++ b/assets/js/08af526d.1e6b79f3.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[529],{41344(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":3,"totalCount":25,"nextPage":"/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[529],{41344(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":3,"totalCount":26,"nextPage":"/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
diff --git a/assets/js/38ffb1aa.675ebeef.js b/assets/js/38ffb1aa.675ebeef.js
new file mode 100644
index 000000000..15bfc2dc2
--- /dev/null
+++ b/assets/js/38ffb1aa.675ebeef.js
@@ -0,0 +1 @@
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8263],{12796(e,t,s){s.r(t),s.d(t,{assets:()=>h,contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>n,toc:()=>l});var n=s(18561),r=s(74848),i=s(28453);const a={slug:"fluss-tiering-service-deep-dive-part1",title:"Tiering Service Deep Dive Part 1: The Mental Model",date:new Date("2026-06-04T00:00:00.000Z"),authors:["giannis"],image:"./assets/tiering_service_dd_part1/banner.png"},o [...]
\ No newline at end of file
diff --git a/assets/js/7aafb598.189568a1.js b/assets/js/7aafb598.212a20b5.js
similarity index 60%
rename from assets/js/7aafb598.189568a1.js
rename to assets/js/7aafb598.212a20b5.js
index c404d5824..905edf460 100644
--- a/assets/js/7aafb598.189568a1.js
+++ b/assets/js/7aafb598.212a20b5.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[3382],{24614(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog/page/3","page":3,"postsPerPage":10,"totalPages":3,"totalCount":25,"previousPage":"/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[3382],{24614(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog/page/3","page":3,"postsPerPage":10,"totalPages":3,"totalCount":26,"previousPage":"/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
diff --git a/assets/js/814f3328.454caa83.js b/assets/js/814f3328.454caa83.js
new file mode 100644
index 000000000..740430130
--- /dev/null
+++ b/assets/js/814f3328.454caa83.js
@@ -0,0 +1 @@
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[7472],{55513(e){e.exports=JSON.parse('{"title":"All our posts","items":[{"title":"Tiering Service Deep Dive Part 1: The Mental Model","permalink":"/blog/fluss-tiering-service-deep-dive-part1","unlisted":false,"date":"2026-06-04T00:00:00.000Z"},{"title":"The Storage Hierarchy: Hot, Remote, and Lake","permalink":"/blog/fluss-storage-hierarchy","unlisted":false,"date":"2026-06-02T00:00:00.000 [...]
\ No newline at end of file
diff --git a/assets/js/814f3328.a974f167.js b/assets/js/814f3328.a974f167.js
deleted file mode 100644
index e0580a6c7..000000000
--- a/assets/js/814f3328.a974f167.js
+++ /dev/null
@@ -1 +0,0 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[7472],{55513(e){e.exports=JSON.parse('{"title":"All our posts","items":[{"title":"The Storage Hierarchy: Hot, Remote, and Lake","permalink":"/blog/fluss-storage-hierarchy","unlisted":false,"date":"2026-06-02T00:00:00.000Z"},{"title":"How Apache Fluss Achieves True Pruning in Streaming Storage","permalink":"/blog/column-pruning-streaming-storage","unlisted":false,"date":"2026-04-22T00:00:00 [...]
\ No newline at end of file
diff --git a/assets/js/9c4e8623.d2d42853.js b/assets/js/9c4e8623.7eb64aad.js
similarity index 90%
rename from assets/js/9c4e8623.d2d42853.js
rename to assets/js/9c4e8623.7eb64aad.js
index 9c44e8fc9..b81433057 100644
--- a/assets/js/9c4e8623.d2d42853.js
+++ b/assets/js/9c4e8623.7eb64aad.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[2021],{47480(e,t,n){n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var a=n(93151),s=n(74848),r=n(28453);const o={slug:"fluss-storage-hierarchy",title:"The Storage Hierarchy: Hot, Remote, and Lake",date:new Date("2026-06-02T00:00:00.000Z"),authors:["giannis"],image:"./assets/storage_hierarchy/banner.png"},i=void 0,c={image:n(30732).A [...]
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[2021],{47480(e,t,n){n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var a=n(93151),s=n(74848),r=n(28453);const o={slug:"fluss-storage-hierarchy",title:"The Storage Hierarchy: Hot, Remote, and Lake",date:new Date("2026-06-02T00:00:00.000Z"),authors:["giannis"],image:"./assets/storage_hierarchy/banner.png"},i=void 0,c={image:n(30732).A [...]
\ No newline at end of file
diff --git a/assets/js/b310ad83.f41e1da5.js b/assets/js/b310ad83.f41e1da5.js
new file mode 100644
index 000000000..a0727d37b
--- /dev/null
+++ b/assets/js/b310ad83.f41e1da5.js
@@ -0,0 +1 @@
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[3878],{41016(e,t,n){n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>d});var s=n(18561),i=n(74848),r=n(28453);const a={slug:"fluss-tiering-service-deep-dive-part1",title:"Tiering Service Deep Dive Part 1: The Mental Model",date:new Date("2026-06-04T00:00:00.000Z"),authors:["giannis"],image:"./assets/tiering_service_dd_part1/banner.png"},o [...]
\ No newline at end of file
diff --git a/assets/js/dbfc4782.1feb6e5c.js b/assets/js/dbfc4782.1feb6e5c.js
new file mode 100644
index 000000000..0a1a2f2f8
--- /dev/null
+++ b/assets/js/dbfc4782.1feb6e5c.js
@@ -0,0 +1 @@
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8749],{91895(e){e.exports=JSON.parse('{"archive":{"blogPosts":[{"id":"fluss-tiering-service-deep-dive-part1","metadata":{"permalink":"/blog/fluss-tiering-service-deep-dive-part1","source":"@site/blog/2026-06-04-tiering-service-part1.md","title":"Tiering Service Deep Dive Part 1: The Mental Model","description":"Banner","date":"2026-06-04T00:00:00.000Z","tags":[],"hasTruncateMarker":true,"a [...]
\ No newline at end of file
diff --git a/assets/js/dbfc4782.95a0d611.js b/assets/js/dbfc4782.95a0d611.js
deleted file mode 100644
index 84a98944b..000000000
--- a/assets/js/dbfc4782.95a0d611.js
+++ /dev/null
@@ -1 +0,0 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8749],{91895(e){e.exports=JSON.parse('{"archive":{"blogPosts":[{"id":"fluss-storage-hierarchy","metadata":{"permalink":"/blog/fluss-storage-hierarchy","source":"@site/blog/2026-06-02-fluss-storage-hierarchy.md","title":"The Storage Hierarchy: Hot, Remote, and Lake","description":"Banner","date":"2026-06-02T00:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Giannis Polyzo [...]
\ No newline at end of file
diff --git a/assets/js/dd04b75e.300f61db.js b/assets/js/dd04b75e.e3533dff.js
similarity index 95%
rename from assets/js/dd04b75e.300f61db.js
rename to assets/js/dd04b75e.e3533dff.js
index 882337522..feb354785 100644
--- a/assets/js/dd04b75e.300f61db.js
+++ b/assets/js/dd04b75e.e3533dff.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[1672],{33024(a){a.exports=JSON.parse('{"authors":[{"name":"Jark Wu","title":"PPMC member of Apache Fluss (Incubating)","url":"https://github.com/wuchong","imageURL":"/avatars/wuchong.png","key":"jark","page":null,"count":9},{"name":"Giannis Polyzos","title":"PPMC member of Apache Fluss (Incubating)","url":"https://github.com/polyzos","imageURL":"/avatars/polyzos.png","key":"giannis","page" [...]
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[1672],{33024(a){a.exports=JSON.parse('{"authors":[{"name":"Jark Wu","title":"PPMC member of Apache Fluss (Incubating)","url":"https://github.com/wuchong","imageURL":"/avatars/wuchong.png","key":"jark","page":null,"count":9},{"name":"Giannis Polyzos","title":"PPMC member of Apache Fluss (Incubating)","url":"https://github.com/polyzos","imageURL":"/avatars/polyzos.png","key":"giannis","page" [...]
\ No newline at end of file
diff --git a/assets/js/ea70c07d.f38e4357.js b/assets/js/ea70c07d.dbd1f8ae.js
similarity index 75%
rename from assets/js/ea70c07d.f38e4357.js
rename to assets/js/ea70c07d.dbd1f8ae.js
index ce6f35b9a..d1d6cb873 100644
--- a/assets/js/ea70c07d.f38e4357.js
+++ b/assets/js/ea70c07d.dbd1f8ae.js
@@ -1 +1 @@
-"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8732],{76387(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog/page/2","page":2,"postsPerPage":10,"totalPages":3,"totalCount":25,"previousPage":"/blog","nextPage":"/blog/page/3","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
+"use strict";(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8732],{76387(e){e.exports=JSON.parse('{"metadata":{"permalink":"/blog/page/2","page":2,"postsPerPage":10,"totalPages":3,"totalCount":26,"previousPage":"/blog","nextPage":"/blog/page/3","blogDescription":"Blog","blogTitle":"Blog"}}')}}]);
\ No newline at end of file
diff --git a/assets/js/main.094a27c3.js b/assets/js/main.094a27c3.js
deleted file mode 100644
index 543d18621..000000000
--- a/assets/js/main.094a27c3.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see main.094a27c3.js.LICENSE.txt */
-(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8792],{35947(e,t,n){"use strict";n.d(t,{A:()=>p});n(96540);var a=n(53259),o=n.n(a),r=n(84054);const i={"00666a83":[()=>n.e(7387).then(n.bind(n,22170)),"@site/versioned_docs/version-0.9/engine-flink/writes.md",22170],"0159e4b3":[()=>n.e(1838).then(n.bind(n,28605)),"@site/versioned_docs/version-0.6/maintenance/tiered-storage/lakehouse-storage.md",28605],"019059a8":[()=>n.e(4944).then(n.bind(n,83097)),"@s [...]
\ No newline at end of file
diff --git a/assets/js/main.40c87326.js b/assets/js/main.40c87326.js
new file mode 100644
index 000000000..6935fab76
--- /dev/null
+++ b/assets/js/main.40c87326.js
@@ -0,0 +1,2 @@
+/*! For license information please see main.40c87326.js.LICENSE.txt */
+(globalThis.webpackChunkfluss_website=globalThis.webpackChunkfluss_website||[]).push([[8792],{35947(e,t,n){"use strict";n.d(t,{A:()=>p});n(96540);var a=n(53259),o=n.n(a),r=n(84054);const i={"00666a83":[()=>n.e(7387).then(n.bind(n,22170)),"@site/versioned_docs/version-0.9/engine-flink/writes.md",22170],"0159e4b3":[()=>n.e(1838).then(n.bind(n,28605)),"@site/versioned_docs/version-0.6/maintenance/tiered-storage/lakehouse-storage.md",28605],"019059a8":[()=>n.e(4944).then(n.bind(n,83097)),"@s [...]
\ No newline at end of file
diff --git a/assets/js/main.094a27c3.js.LICENSE.txt b/assets/js/main.40c87326.js.LICENSE.txt
similarity index 100%
rename from assets/js/main.094a27c3.js.LICENSE.txt
rename to assets/js/main.40c87326.js.LICENSE.txt
diff --git a/assets/js/runtime~main.2d469763.js b/assets/js/runtime~main.2d469763.js
new file mode 100644
index 000000000..f5b67ed0c
--- /dev/null
+++ b/assets/js/runtime~main.2d469763.js
@@ -0,0 +1 @@
+(()=>{"use strict";var e,a,c,f,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={exports:{}};return b[e].call(c.exports,c,c.exports,r),c.exports}r.m=b,e=[],r.O=(a,c,f,d)=>{if(!c){var b=1/0;for(i=0;i<e.length;i++){for(var[c,f,d]=e[i],t=!0,o=0;o<c.length;o++)(!1&d||b>=d)&&Object.keys(r.O).every(e=>r.O[e](c[o]))?c.splice(o--,1):(t=!1,d<b&&(b=d));if(t){e.splice(i--,1);var n=f();void 0!==n&&(a=n)}}return a}d=d||0;for(var i=e.length;i>0&&e[i-1][2]>d;i--)e[i]=e[i-1 [...]
\ No newline at end of file
diff --git a/assets/js/runtime~main.84321ecc.js b/assets/js/runtime~main.84321ecc.js
deleted file mode 100644
index a5b07be38..000000000
--- a/assets/js/runtime~main.84321ecc.js
+++ /dev/null
@@ -1 +0,0 @@
-(()=>{"use strict";var e,a,c,f,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={exports:{}};return b[e].call(c.exports,c,c.exports,r),c.exports}r.m=b,e=[],r.O=(a,c,f,d)=>{if(!c){var b=1/0;for(i=0;i<e.length;i++){for(var[c,f,d]=e[i],t=!0,o=0;o<c.length;o++)(!1&d||b>=d)&&Object.keys(r.O).every(e=>r.O[e](c[o]))?c.splice(o--,1):(t=!1,d<b&&(b=d));if(t){e.splice(i--,1);var n=f();void 0!==n&&(a=n)}}return a}d=d||0;for(var i=e.length;i>0&&e[i-1][2]>d;i--)e[i]=e[i-1 [...]
\ No newline at end of file
diff --git a/blog/2025/12/02/fluss-x-iceberg-why-your-lakehouse-is-not-streamhouse-yet/index.html b/blog/2025/12/02/fluss-x-iceberg-why-your-lakehouse-is-not-streamhouse-yet/index.html
index a8a889219..c179d4031 100644
--- a/blog/2025/12/02/fluss-x-iceberg-why-your-lakehouse-is-not-streamhouse-yet/index.html
+++ b/blog/2025/12/02/fluss-x-iceberg-why-your-lakehouse-is-not-streamhouse-yet/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p>
@@ -123,7 +123,7 @@ Think of your data as having two thermal zones:</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="solution-2-primary-key-tables-with-native-upsert-support">Solution 2: Primary Key Tables with Native Upsert Support<a href="#solution-2-primary-key-tables-with-native-upsert-support" class="hash-link" aria-label="Direct link to Solution 2: Primary Key Tables with Native Upsert Support" title="Direct link to Solution 2: Primary Key Tables with Native Upsert Support" translate="no"></a></h3>
<p><strong>Addresses:</strong> Gap 3 (Primary Key Not Enforced) & Gap 4 (Update Write Amplification)</p>
<p>Fluss provides first-class primary key semantics using an LSM tree architecture:</p>
-<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#0A0F1C;--prism-background-color:#F8FAFC"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#0A0F1C;background-color:#F8FAFC"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#0A0F1C"><span class="token plain">┌─────────────────────────────────────────────────┐</span><br></div><div class="token-line" [...]
+<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#0A0F1C;--prism-background-color:#F8FAFC"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#0A0F1C;background-color:#F8FAFC"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#0A0F1C"><span class="token plain">┌─────────────────────────────────────────────────┐</span><br></div><div class="token-line" [...]
<p><strong>How it works:</strong></p>
<p>When you write to a primary key table, Fluss:</p>
<ol>
diff --git a/blog/archive/index.html b/blog/archive/index.html
index cb55c327d..bc46594e3 100644
--- a/blog/archive/index.html
+++ b/blog/archive/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div>
</body>
diff --git a/blog/atom.xml b/blog/atom.xml
index ca2fda853..188be8e13 100644
--- a/blog/atom.xml
+++ b/blog/atom.xml
@@ -2,11 +2,146 @@
<feed xmlns="http://www.w3.org/2005/Atom">
<id>https://fluss.apache.org/blog/</id>
<title>Apache Fluss™ (Incubating) Blog</title>
- <updated>2026-06-02T00:00:00.000Z</updated>
+ <updated>2026-06-04T00:00:00.000Z</updated>
<generator>https://github.com/jpmonette/feed</generator>
<link rel="alternate" href="https://fluss.apache.org/blog/"/>
<subtitle>Apache Fluss™ (Incubating) Blog</subtitle>
<icon>https://fluss.apache.org/img/logo/fluss_favicon.svg</icon>
+ <entry>
+ <title type="html"><![CDATA[Tiering Service Deep Dive Part 1: The Mental Model]]></title>
+ <id>https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/</id>
+ <link href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/"/>
+ <updated>2026-06-04T00:00:00.000Z</updated>
+ <summary type="html"><![CDATA[Banner]]></summary>
+ <content type="html"><![CDATA[<p><img decoding="async" loading="lazy" alt="Banner" src="https://fluss.apache.org/assets/images/banner-98666bf14fe08041b4b05bd8eb130e11.png" width="1636" height="512" class="img_ev3q"></p>
+<p>If you're new to Fluss, the lake-tiering story is one of those topics where every explanation seems to assume you already know how it works.
+This three-part walkthrough aims to bring some clarity to the confusing parts of the system, and to help you understand how it works in practice.</p>
+<p><strong>Part 1</strong> builds the mental model from scratch and by the end of it you'll be able to describe, step by step, what happens between the moment a tiering timer fires and the moment a lake snapshot is committed.</p>
+<p><strong>Parts 2 and 3</strong> take that mental model and add the dials (parallelism, table kinds, freshness, multi-table behavior, scale-out) and then put it into a real production deployment (failures, pitfalls, monitoring).</p>
+<p><strong>Tiering Service Deep Dive, 3-parts:</strong></p>
+<ul>
+<li class=""><strong>Part 1 - The Mental Model:</strong> how one tiering round actually works, from timer fire to lake commit.</li>
+<li class=""><strong>Part 2 - Tuning:</strong> per-table dials, multi-table dynamics, and scaling out.</li>
+<li class=""><strong>Part 3 - In Production</strong> failure modes, design pitfalls, and monitoring.</li>
+</ul>
+<p>Fluss is bounded in capacity by design and that's the entire reason the tiering service exists.
+Its speed comes from keeping data on local disks attached to a small number of machines. Local disk is finite, costs money to keep spinning, and is sized for the working set, not for a year of history.
+Fluss isn't your archive, it's the freshest layer of your platform.
+So old data has to leave, on a schedule, into storage designed for the long haul. <strong>That's the job of the tiering service</strong>.</p>
+<p>Meanwhile, you have analysts and batch jobs and ML/AI pipelines <strong>who don't need millisecond freshness</strong>, but they need to query a year of orders, run a join over a quarter of clicks, train a model on six months of sessions.
+That's the job of the data Lakehouse. Parquet files on S3, organized as open table formats (Iceberg, Paimon, Hudi, Lance), queryable by <code>Spark</code>, <code>StarRocks</code>, <code>DuckDB</code>, <code>Trino</code>, <code>Flink-batch</code> or even just <code>Python</code>.</p>
+<p><strong>So you have two storage layers:</strong> the hot one (Fluss) and the cold one (the Lakehouse), <strong>exposed as one single table abstraction with different freshness layers</strong>, and you need something that moves data from one to the other on a regular schedule, in a way that's correct, atomic, and survives failures.
+That something is the tiering service.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png" width="1185" height="710" class="img_ev3q"></p>
+<p>The tiering service does three things at once.</p>
+<ol>
+<li class=""><strong>It keeps the Lakehouse fresh:</strong> within some configurable target like <strong>"never more than two minutes behind"</strong>.</li>
+<li class=""><strong>It lets Fluss reclaim space:</strong> once data is safely in the Lakehouse, Fluss can delete its own copy.</li>
+<li class=""><strong>And it does both atomically:</strong> the Lakehouse either sees a complete update or no update at all, never a half-written mess.</li>
+</ol>
+<p>The tiering service is just a stateless Flink <strong>(Spark support is also WIP)</strong> streaming job that runs continuously. It reads from Fluss, writes Parquet files to S3, and tells the Fluss coordinator <strong>"I committed this offset range, you can release it now."</strong></p>
+<p>Everything else in this article is about the details, but if you remember <strong>"it's a stateless Flink job that copies data, on a schedule, in atomic batches,"</strong> you've got the shape of it.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-three-processes-and-what-each-one-does">The Three Processes And What Each One Does<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-three-processes-and-what-each-one-does" class="hash-link" aria-label="Direct link to The Three Processes And What Each One Does" title="Direct link to The Three Processes And What Each One Does" translate="no"></a></h2>
+<p>Three processes are involved in tiering. They live in different places, they have different responsibilities, and they almost never overlap.
+Knowing which is which is half the battle of debugging anything.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png" width="1189" height="588" class="img_ev3q"></p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-coordinator">The Coordinator<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-coordinator" class="hash-link" aria-label="Direct link to The Coordinator" title="Direct link to The Coordinator" translate="no"></a></h3>
+<p>The Fluss coordinator is the brain of the cluster that handles <code>metadata</code>, <code>leader election</code>, and <code>cluster state</code>. Tiering is one of its many responsibilities.
+It keeps a list of which tables need to be tiered, when each was tiered last, and which one should go next.
+It does not move any data itself; it decides what runs and tracks what's in flight.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-flink-tiering-job">The Flink Tiering Job<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-flink-tiering-job" class="hash-link" aria-label="Direct link to The Flink Tiering Job" title="Direct link to The Flink Tiering Job" translate="no"></a></h3>
+<p>This is a stateless Flink streaming job that you deploy. It runs forever. Every so often, it calls the coordinator and asks <strong>"what should I work on next?"</strong>.
+When the coordinator hands it a table, the Flink job reads that table's data from the Fluss tablet servers, writes it out as Parquet files in the lake, and commits a lake snapshot.
+Then it reports back, <strong>"done, you can mark this table as tiered"</strong> and asks for the next one.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-fluss-tablet-servers">The Fluss Tablet Servers<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-fluss-tablet-servers" class="hash-link" aria-label="Direct link to The Fluss Tablet Servers" title="Direct link to The Fluss Tablet Servers" translate="no"></a></h3>
+<p>These are the Fluss processes that actually hold your data.
+The tiering job reads from them but never writes to them. They mostly don't know they're being tiered, they just serve reads.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-data-lakehouse">The Data Lakehouse<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-data-lakehouse" class="hash-link" aria-label="Direct link to The Data Lakehouse" title="Direct link to The Data Lakehouse" translate="no"></a></h3>
+<p>S3, GCS, or whatever object store you're using. The open table format (Paimon, Iceberg, Hudi or Lance) defines how files and metadata are laid out so that query engines can read them.
+The tiering job writes here. Nobody else touches it during tiering.</p>
+<blockquote>
+<p><strong>Why Split It This Way?</strong>
+Separating the <strong>"who decides"</strong> from the <strong>"who moves"</strong> is a deliberate design choice. The coordinator already manages cluster state. Making it also responsible for scheduling tiering is a small addition. Putting the actual data movement in Flink means you get all of Flink's benefits for free, parallelism, checkpointing, restart-from-failure, without having to build any of it from scratch.</p>
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-heartbeat">The Heartbeat<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-heartbeat" class="hash-link" aria-label="Direct link to The Heartbeat" title="Direct link to The Heartbeat" translate="no"></a></h2>
+<p>The coordinator and the Flink tiering job are different processes on different machines.
+They need a way to talk. They have exactly one channel: <strong>a single RPC called the heartbeat</strong>, sent by the Flink job to the coordinator on a configured interval (<code>tiering.poll.table.interval, default 30 seconds</code>).
+Every piece of communication between them happens inside this one call.</p>
+<p>That makes the heartbeat a four-purpose message:
+<img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png" width="1185" height="575" class="img_ev3q"></p>
+<p>The Flink job's heartbeat carries:</p>
+<ol>
+<li class=""><strong>What it's currently working on:</strong> the list of tables it's tiering right now</li>
+<li class=""><strong>What it just finished:</strong> tables whose Lakehouse commits succeeded since the last heartbeat</li>
+<li class=""><strong>What failed:</strong> tables whose tiering blew up for some reason, and</li>
+<li class=""><strong>"Give me another":</strong> a boolean flag asking for the next table from the queue. The coordinator's response carries either a new table assignment or a <strong>"nothing for you right now"</strong> message.</li>
+</ol>
+<p>Two things from this design that are worth remembering.</p>
+<p><strong>First, the coordinator only learns about in-progress work at heartbeat boundaries</strong>. The heartbeat cadence is for polling, <strong>"anything new for me?</strong>"
+Completion is different: when a table finishes (or fails), the enumerator triggers an immediate heartbeat rather than waiting for the next tick.
+So the worst-case lag of <strong>"up to 30 seconds"</strong> applies to mid-round status, not to commit announcements.</p>
+<p><strong>Second, every message has an "epoch" number stamped on it</strong>. Each time a table starts a new tiering attempt, its epoch goes up by one.
+If a Flink job tries to report success with a stale epoch (because the coordinator already gave up on that attempt and handed the work to someone else), the coordinator just ignores the message.
+This is how the system stays consistent even when things go sideways and we'll come back to it in <strong>Part 3</strong>, in the failure-modes section.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-life-of-a-table-four-states-walked-through">The Life Of A Table: Four States, Walked Through<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-life-of-a-table-four-states-walked-through" class="hash-link" aria-label="Direct link to The Life Of A Table: Four States, Walked Through" title="Direct link to The Life Of A Table: Four States, Walked Through" translate="no"></a></h2>
+<p>Every table that's enabled for lake tiering goes through the same lifecycle.
+The coordinator tracks each table's current state. For our purposes, four states are enough to keep in your head:</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png" width="1201" height="456" class="img_ev3q"></p>
+<blockquote>
+<p><strong>Note:</strong> The actual source code uses seven state names: <code>NEW</code>, <code>INITIALIZED</code>, <code>SCHEDULED</code>, <code>PENDING</code>, <code>TIERING</code>, <code>TIERED</code>, <code>FAILED</code>. Here we collapse them into four pedagogical states to keep the mental model small.</p>
+</blockquote>
+<p><strong>NEW</strong> is only used for the very first time a lake-enabled table is created, and <code>INITIALIZED</code> is only used for tables the coordinator rediscovers after a restart. Both transition into <code>SCHEDULED</code> immediately, so we ignore them here. <code>FAILED</code> is the unhappy-path state we'll come back to in <strong>Part 3</strong>.</p>
+<p><strong>WAITING.</strong> The table has been tiered recently and the freshness timer is counting down. Nothing to do.</p>
+<p><strong>READY.</strong> The timer has fired. The table is now in the coordinator's pending queue, waiting for a Flink job to pick it up on the next heartbeat. It might wait a few seconds, or several minutes if there are many other tables ahead of it.</p>
+<p><strong>TIERING.</strong> A Flink job has picked the table up and is reading its data, writing Parquet files to the Lakehouse, and aiming for a commit. The coordinator has started a clock; if this takes too long, it'll time out.</p>
+<p><strong>DONE.</strong> The Lakehouse commit landed. The coordinator records <strong>"this table was last tiered at time T"</strong> and immediately schedules the next round. The table goes back into <code>WAITING</code>.</p>
+<p>The happy path is just <code>WAITING → READY → TIERING → DONE → WAITING →</code> ... forever. The unhappy path, which we'll cover in <strong>Part 3</strong>, in the failure-modes section, is when TIERING ends in failure (timeout, reader crash, anything) and the table cycles back to <code>READY</code> without ever reaching <code>DONE</code>.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="a-complete-tiering-round-step-by-step">A Complete Tiering Round, Step By Step<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#a-complete-tiering-round-step-by-step" class="hash-link" aria-label="Direct link to A Complete Tiering Round, Step By Step" title="Direct link to A Complete Tiering Round, Step By Step" translate="no"></a></h2>
+<p>Three concepts are important to understand when you're reading this:</p>
+<ul>
+<li class=""><strong>Bucket:</strong> A horizontal partition of a Fluss table. If a table has 16 buckets, every record is hashed into one of the 16 by some key. Buckets are the unit of parallelism for both writes (different writers can land in different buckets) and reads.</li>
+<li class=""><strong>Split:</strong> A unit of work for the Flink tiering job. Each split says <strong>"read offsets X to Y of bucket B"</strong>. During a tiering round, the planner generates one split per bucket of the table being tiered.</li>
+<li class=""><strong>Reader:</strong> A Flink subtask that processes splits. If you set the Flink job's parallelism to 16, you have 16 readers. Each reader processes one split at a time and asks for another when it's done.</li>
+</ul>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="lets-walk-through-a-single-tiering-round-with-a-concrete-example">Let's walk through a single tiering round with a concrete example.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#lets-walk-through-a-single-tiering-round-with-a-concrete-example" class="hash-link" aria-label="Direct link to Let's walk through a single tiering round with a concrete example." title="Direct link to Let's walk through a single [...]
+<p>We have one table, called <code>orders</code>, with four buckets. It's a log table (we'll talk about what that means in Part 2, when we cover table kinds. For now, just think <strong>"an append-only stream of records"</strong>). Freshness is configured to five minutes. The Flink tiering job is up and running.</p>
+<p>Here's what happens:.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-timer-fires">T+0s the timer fires.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-timer-fires" class="hash-link" aria-label="Direct link to T+0s the timer fires." title="Direct link to T+0s the timer fires." translate="no"></a></h4>
+<p>Five minutes have passed since the last tiering round for <code>orders</code>. The coordinator transitions the table from WAITING to READY and pushes it onto the back of the pending queue. The act of entering the pending queue is also what increments the table's tiering epoch · to (say) 7 · so every fresh attempt is stamped at enqueue time, before any job has picked it up. Right now the queue contains just <code>orders</code>.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-sends-its-heartbeat">T+0s the Flink job sends its heartbeat.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-flink-job-sends-its-heartbeat" class="hash-link" aria-label="Direct link to T+0s the Flink job sends its heartbeat." title="Direct link to T+0s the Flink job sends its heartbeat." translate="no"></a></h4>
+<p>The job is idle, there is no work in progress, so its heartbeat says <strong>"give me something"</strong>. The coordinator pops <code>orders</code> off the queue, transitions it to <code>TIERING</code>, and replies <strong>"your next table is <code>orders</code>, epoch 7"</strong>. The epoch was already set when the table entered the queue. <code>requestTable()</code> just reads it and hands it back, it doesn't bump it again.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-plans-the-work">T+0s the Flink job plans the work.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-flink-job-plans-the-work" class="hash-link" aria-label="Direct link to T+0s the Flink job plans the work." title="Direct link to T+0s the Flink job plans the work." translate="no"></a></h4>
+<p>The job's enumerator (the part of a Flink source that decides what each parallel reader will do) asks the Fluss tablet servers: <strong>"what's the latest offset for each bucket of <code>orders</code> right now?"</strong> Let's say the answers come back as <code>[bucket-0: 1,000; bucket-1: 1,200; bucket-2: 950; bucket-3: 1,100]</code>. The enumerator also looks up where the last tiering round left off; the <strong>"last committed lake offset"</strong>, let's say <code>[bucket-0: 990; [...]
+The difference is the work for this round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-splits-are-created">T+0s splits are created.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-splits-are-created" class="hash-link" aria-label="Direct link to T+0s splits are created." title="Direct link to T+0s splits are created." translate="no"></a></h4>
+<p>The enumerator builds four splits, one per bucket. Each split says <strong>"read from offset X to offset Y of bucket B"</strong>. It shuffles them randomly (so no reader always gets the heaviest bucket) and assigns one split to each of the four Flink readers running in parallel.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-to-t60s-the-readers-work">T+0s to T+60s the readers work.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-to-t60s-the-readers-work" class="hash-link" aria-label="Direct link to T+0s to T+60s the readers work." title="Direct link to T+0s to T+60s the readers work." translate="no"></a></h4>
+<p>Each reader streams its assigned offset range from a Fluss tablet server and writes the records as Parquet files into a staging area in the lake. The buckets process independently and at different speeds. When a reader finishes its split, it emits a small message saying <strong>"bucket B is done, here are the files I wrote, the last offset I read was Y"</strong>.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png" width="1184" height="715" class="img_ev3q"></p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-collects-all-four-results">T+60s the commit operator collects all four results.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-collects-all-four-results" class="hash-link" aria-label="Direct link to T+60s the commit operator collects all four results." title="Direct link to T+60s the commit operator collects all four results." translate="no"></a></h4>
+<p>A dedicated Flink operator called the commit operator sits at the end of the job. In the normal path it waits for results from all four buckets, then commits them together as <strong>a single atomic lake snapshot</strong>. This gives you a clean, all-or-nothing update to the lake table. Once it has all four, it calls into the open table format and writes a snapshot that includes all the new Parquet files plus the updated per-bucket offsets. (Force-finish, which we'll meet in Part 2, i [...]
+<blockquote>
+<p><strong>One detail that's easy to miss:</strong> the lake snapshot is durable at <code>T+60s</code>, but the coordinator hasn't transitioned the table to <code>DONE</code> yet. That happens on the next heartbeat from the enumerator.</p>
+</blockquote>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss">T+60s the commit operator records the lake snapshot back to Fluss.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss" class="hash-link" aria-label="Direct link to T+60s the commit operator records the lake snapshot back to Fluss." title="Direct link to T+60s the commit operator re [...]
+<p>Now that the lake snapshot is durable, the commit operator (<code>TieringCommitOperator</code>) records the new snapshot offsets into Fluss metadata through the coordinator. It delegates this to a helper, <code>FlussTableLakeSnapshotCommitter</code>, which implements a two-phase commit (prepare + commit) against the coordinator gateway rather than RPC'ing tablet servers directly. This lets the cluster know that data up to those offsets is safely in the lake and can be aged out of Flus [...]
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-notifies-the-enumerator">T+60s the commit operator notifies the enumerator.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-notifies-the-enumerator" class="hash-link" aria-label="Direct link to T+60s the commit operator notifies the enumerator." title="Direct link to T+60s the commit operator notifies the enumerator." translate="no"></a></h4>
+<p>Immediately after the commit, the commit operator sends a <code>FinishedTieringEvent</code> back to the source enumerator. As we said earlier, the enumerator doesn't wait for the next 30-second poll tick. It fires an out-of-band heartbeat right away, carrying <code>orders</code> in the <code>finished_tables</code> list.
+The coordinator validates the epoch (still 7, all good), records the completion time, transitions <code>orders</code> to <code>DONE</code>, and immediately schedules the next round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="scheduling-the-next-round">Scheduling the next round.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#scheduling-the-next-round" class="hash-link" aria-label="Direct link to Scheduling the next round." title="Direct link to Scheduling the next round." translate="no"></a></h4>
+<p>The freshness timer is computed from when the round <strong>completed</strong>, not from when it started. The coordinator does <code>delay = freshness − (now − lastTieredTime)</code>, and <code>lastTieredTime</code> is set to the moment the completion heartbeat is processed. So with a five-minute freshness, the next round fires roughly five minutes after the commit, i.e. at about T+360s. This is the (intentional) reason the lake always lags by at least one full freshness interval plus [...]
+<p>That's it. Round complete. The lake now contains <code>orders</code> data up to the offsets that were current at T+0s. In another ~five minutes, the whole process repeats.</p>
+<blockquote>
+<p><strong>The most subtle point in this section: The "stopping offset" is decided at planning time, not at reading time.</strong> When the enumerator asks the tablet servers "what's your latest offset?" at T+0s, those answers freeze. Any records written to Fluss after T+0s but before the readers actually start working are not part of this round · they'll be picked up in the next one. This is correct behavior, but it means the lake always lags by at least one round, even if your freshnes [...]
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="next-up">Next Up<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#next-up" class="hash-link" aria-label="Direct link to Next Up" title="Direct link to Next Up" translate="no"></a></h2>
+<p>You've now got the mental model, the processes, the heartbeat conversation, the lifecycle, and what happens during one full round.
+The next part takes that round and shows what changes when you start tuning the dials, and then what changes again when you stop thinking about one table at a time.</p>]]></content>
+ <author>
+ <name>Giannis Polyzos</name>
+ <uri>https://github.com/polyzos</uri>
+ </author>
+ </entry>
<entry>
<title type="html"><![CDATA[The Storage Hierarchy: Hot, Remote, and Lake]]></title>
<id>https://fluss.apache.org/blog/fluss-storage-hierarchy/</id>
@@ -2917,52 +3052,4 @@ With Fluss handling the merge logic, achieving a single, up-to-date view from mu
<uri>https://github.com/polyzos</uri>
</author>
</entry>
- <entry>
- <title type="html"><![CDATA[The Story of Fluss Logo]]></title>
- <id>https://fluss.apache.org/blog/unveil-fluss-logo/</id>
- <link href="https://fluss.apache.org/blog/unveil-fluss-logo/"/>
- <updated>2025-05-28T00:00:00.000Z</updated>
- <summary type="html"><![CDATA[Introducing the Little Otter]]></summary>
- <content type="html"><![CDATA[<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/colored_logo-570a85568f48c50f3ce9cdcfc57c8670.png" width="1614" height="686" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introducing-the-little-otter">Introducing the Little Otter<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#introducing-the-little-otter" class="hash-link" aria-label="Direct link to Introducing the Little Otter" title="Direct link to Introducing the Little Otter" translate="no"></a></h2>
-<p>Today is <a href="https://www.otter.org/world-otter-day" target="_blank" rel="noopener noreferrer" class="">World Otter Day</a>, and we are thrilled to introduce the little otter to the Fluss community! 🎉</p>
-<p>Since open-sourced half a year ago, many community members and friends have asked us:
-"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p>
-<p>I don't want to interpret the symbolic meaning behind the Logo in a rigid way. Instead, I’d like to share the story behind its design — how we defined the direction and iterated step by step toward the final version. This process involved numerous subjective decisions made by the team. You might prefer one of the discarded versions, or disagree with some of the design choices. However, we want to share the journey with our community, and we hope it can also serve as a reference or ins [...]
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="logo-symbolism-what-do-we-want-to-convey">Logo symbolism: what do we want to convey?<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#logo-symbolism-what-do-we-want-to-convey" class="hash-link" aria-label="Direct link to Logo symbolism: what do we want to convey?" title="Direct link to Logo symbolism: what do we want to convey?" translate="no"></a></h2>
-<p><a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">Fluss</a> is an open-source streaming storage system designed for analytical workloads, with the goal of serving as a real-time data layer for Lakehouse architectures. Therefore, <em><strong>fluidity</strong></em> is the first key message we want to convey.</p>
-<p>Secondly, Fluss’s vision is to <strong>"Bring better analytics to data streams, and bring better freshness to data Lakehouses"</strong>. This requires the ability to adapt to multiple data lake formats and support a variety of query engines and compute engines. So, <em><strong>adaptability</strong></em> is the second core idea we want to convey.</p>
-<p>Additionally, as an open-source project planning to be donated to the Apache Software Foundation, building an open, diverse, and collaborative community has always been one of our core goals. In line with this value, we wanted the brand to express <em><strong>friendliness</strong></em>, which ultimately led us to choose animal as the logo design direction.</p>
-<p>We have also considered using abstract graphics for logo design. However, we noticed that many open-source projects that start with abstract logos, eventually introduce animal mascots to convey the friendliness of the community. These mascots not only play an important role in community outreach but also often replace the main logo in many contexts, becoming more representative visual symbols — such as Go’s gopher, Rust’s crab, and Airbyte’s octopus. Animal images are easier to get cl [...]
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image1-6acb85f09ad799d93582a37896aabf30.png" width="2768" height="1604" class="img_ev3q"></p>
-<p>Therefore, we made clear the direction in the early stage of Fluss Logo design: use an Animal image to convey our concept of <strong>fluidity</strong>, <strong>adaptability</strong>, and <strong>friendliness</strong>. The project name "Fluss" comes from the German word for "river" (Fluss), and we also hope that this animal has a close relationship with the river. Combined with these characteristics, the first animal that comes to our mind is the <strong>otter</strong>. The otter is an [...]
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image2-b9a57e1c35eb09c32fa4fcd07406ceeb.png" width="2310" height="1242" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="design-iterations-for-more-than-30-versions">Design iterations for more than 30 versions<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#design-iterations-for-more-than-30-versions" class="hash-link" aria-label="Direct link to Design iterations for more than 30 versions" title="Direct link to Design iterations for more than 30 versions" translate="no"></a></h2>
-<p>After clarifying the design direction and core values of Fluss Logo, we began to communicate with the design team in depth and launched multiple rounds of iteration. However, in the early versions of the design, we still couldn’t find the right feel — something was missing: the fluidity.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image3-37c9a30c044c5afbc6e35fa21c1793bc.png" width="1930" height="1014" class="img_ev3q"></p>
-<p>Therefore, we used ChatGPT to find inspiration, and tried a variety of prompt words, and this picture with a surfing wave quickly caught our eyes: dynamic, energy, speed, and flow, which is what we want! Although this otter looks like a Jerry rat... our design team quickly got our idea.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image4-c4082ae4730f49472a0414543ab5075a.png" width="298" height="294" class="img_ev3q"></p>
-<p>Based on the core elements of “otter” + “surfing”, we started a new round of design, and we iterated more than 20 versions based on this and finally evolved to the version you see today.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image5-7b6a1c8656ea141b803b8787e89d75df.png" width="2626" height="1204" class="img_ev3q"></p>
-<p>Subsequently, we also made many variations of the logo to adapt to different environments and background colors.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image6-ec1c384b777aef0f617d3fcb08a5e39e.png" width="1900" height="1048" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="get-feedback-from-community-users">Get feedback from community users<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#get-feedback-from-community-users" class="hash-link" aria-label="Direct link to Get feedback from community users" title="Direct link to Get feedback from community users" translate="no"></a></h2>
-<p>Designing a logo is a highly subjective process. But for an open-source project, the goal isn't to please the founding team — it's to resonate with the community. That’s why we've always valued community feedback and used it to guide our iterations.</p>
-<p>Some of the community feedback I loved very much:</p>
-<ul>
-<li class="">"The Fluss otter seems to be a sibling to Flink's squirrel."</li>
-<li class="">"I see Paimon in it!"</li>
-<li class="">"It's soooo cute!"</li>
-</ul>
-<p>Give it some ❤️ via ⭐ on GitHub if you like it as well!
-<a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">https://github.com/apache/fluss</a></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="community-egg">Community Egg<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#community-egg" class="hash-link" aria-label="Direct link to Community Egg" title="Direct link to Community Egg" translate="no"></a></h2>
-<p>At the time of the Fluss logo release, we also submitted an <a href="https://lists.apache.org/thread/osg23opm9x95xm318160808r984k0wk9" target="_blank" rel="noopener noreferrer" class="">incubation proposal</a> to the Apache Software Foundation, thanks to the strong support from our incubation mentors Yu Li, tison, Jingsong Lee, Becket Qin, and Jean-Baptiste. We're confident that Fluss will soon become one of the Apache projects.</p>
-<p>In parallel, we’ve designed and launched a series of Fluss community gifts, including stickers, t-shirts, and coffee cups. These items will be available at upcoming community events — stay tuned and pick your swags!</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image7-246c5eae97745ed3ae9872e84a86b134.png" width="1130" height="633" class="img_ev3q"></p>]]></content>
- <author>
- <name>Jark Wu</name>
- <uri>https://github.com/wuchong</uri>
- </author>
- </entry>
</feed>
\ No newline at end of file
diff --git a/blog/authors/index.html b/blog/authors/index.html
index 945442117..17e0da3be 100644
--- a/blog/authors/index.html
+++ b/blog/authors/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div>
</body>
diff --git a/blog/column-pruning-streaming-storage/index.html b/blog/column-pruning-streaming-storage/index.html
index 66f3493e8..0e376f7b8 100644
--- a/blog/column-pruning-streaming-storage/index.html
+++ b/blog/column-pruning-streaming-storage/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/fluss-for-ai/index.html b/blog/fluss-for-ai/index.html
index 6e249180c..8c3d7159e 100644
--- a/blog/fluss-for-ai/index.html
+++ b/blog/fluss-for-ai/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><img decoding="async" loading="lazy" src="/assets/images/banner-a3fa3c1c723340acae7046f86be1de82.png" width="1024" height="1024" class="img_ev3q">
<strong>Apache Fluss (Incubating) started as streaming storage for real-time analytics</strong>, built to work closely with stream processors like Apache Flink.
Its focus has always been on freshness, efficient analytical access, and continuous data, making fast-changing streams directly usable without forcing them
diff --git a/blog/fluss-intro/index.html b/blog/fluss-intro/index.html
index 19c2b4412..508e97c06 100644
--- a/blog/fluss-intro/index.html
+++ b/blog/fluss-intro/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
Today, we are excited to introduce Fluss, a cutting-edge streaming storage system designed to power real-time analytics.
We are going to explore Fluss's architecture, design principles, key features, and how it addresses the challenges of using Kafka for real-time analytics.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-features-of-fluss">Key Features of Fluss<a href="#key-features-of-fluss" class="hash-link" aria-label="Direct link to Key Features of Fluss" title="Direct link to Key Features of Fluss" translate="no"></a></h2>
diff --git a/blog/fluss-java-client/index.html b/blog/fluss-java-client/index.html
index fa631f983..abe641216 100644
--- a/blog/fluss-java-client/index.html
+++ b/blog/fluss-java-client/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introduction">Introduction<a href="#introduction" class="hash-link" aria-label="Direct link to Introduction" title="Direct link to Introduction" translate="no"></a></h2>
<p>Apache Fluss is a streaming data storage system built for real-time analytics, serving as a low-latency data layer in modern data Lakehouses.
It supports sub-second streaming reads and writes, storing data in a columnar format for efficiency, and offers two flexible table types: <strong>append-only Log Tables</strong> and <strong>updatable Primary Key Tables</strong>.
diff --git a/blog/fluss-joins-asf/index.html b/blog/fluss-joins-asf/index.html
index 1e58efc12..3659d6129 100644
--- a/blog/fluss-joins-asf/index.html
+++ b/blog/fluss-joins-asf/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
neutral, and standardized. Moving forward, Fluss will leverage the ASF ecosystem to accelerate the building of a global developer community, continuously driving innovation and adoption of next-generation real-time data infrastructure.</p>
<p><img decoding="async" loading="lazy" alt="ASF" src="/assets/images/asf-0621eab6f6aadbdfebfc5e24a36667c1.png" width="1231" height="631" class="img_ev3q"></p>
<p>The Fluss community has recently completed all donation procedures and successfully transferred the project to the Apache Software Foundation.
diff --git a/blog/fluss-open-source/index.html b/blog/fluss-open-source/index.html
index d4474a8fc..b2372f25e 100644
--- a/blog/fluss-open-source/index.html
+++ b/blog/fluss-open-source/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
Fluss is a <strong>streaming storage system</strong> designed to power real-time analytics. It aspires to change how organizations approach real-time data by acting as the <strong>real-time data layer</strong> for the Lakehouse.
Its cutting-edge design enables businesses to achieve <strong>sub-second latency</strong>, <strong>high throughput</strong>, and <strong>cost efficiency</strong> for data analytics, making it the ideal solution for modern data-driven applications.</p>
<p>We have historically invested a lot of effort into advancing the data streaming ecosystem, being major contributors to <a href="https://flink.apache.org/" target="_blank" rel="noopener noreferrer" class="">Apache Flink®</a>, <a href="https://www.ververica.com/blog/ververica-donates-flink-cdc-empowering-real-time-data-integration-for-the-community" target="_blank" rel="noopener noreferrer" class="">Apache Flink CDC</a>, and <a href="https://paimon.apache.org/" target="_blank" rel="noop [...]
diff --git a/blog/fluss-storage-hierarchy/index.html b/blog/fluss-storage-hierarchy/index.html
index 28ce541c8..1eb8d2b07 100644
--- a/blog/fluss-storage-hierarchy/index.html
+++ b/blog/fluss-storage-hierarchy/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>Apache Fluss stores data in three places:</strong> local disk on the tablet server, remote object storage like S3, and the lakehouse. Which place holds which data at any given moment, and what is responsible for moving it between them, is the foundation everything else rests on. Your capacity plan depends on it. Your latency targets depend on it. Your disaster-recovery story depends on it. So does your ability to predict, in advance, that a particular configuration change is g [...]
<p>This post walks through that layering. We'll cover what each tier holds, the two background tasks that move data between them, what changes for primary-key tables, and how recovery actually works when a tablet server loses its disk.</p>
<p>By the end you should be able to look at a Fluss deployment and say, for any given record, where it lives right now and where it will live in an hour.</p>
@@ -124,7 +124,7 @@
</ul>
<p>Each shortcut is wrong in a way that only becomes visible after you've configured something based on it.</p>
<p>The model here is: three tiers with three different jobs, two background tasks that should be reasoned about independently, a small set of defaults deliberately tuned for production.</p>
-<p>Disabling those defaults is almost always the wrong move. Tuning them to your workload is almost always the right one. 🌊</p></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Blog post page navigation"><a class="pagination-nav__link pagination-nav__link--next" href="/blog/column-pruning-streaming-storage/"><div class="pagination-nav__sublabel">Older post</div><div class="pagination-nav__label">How Apache Fluss Achieves True Pruning in Streaming Storage</div></a>< [...]
+<p>Disabling those defaults is almost always the wrong move. Tuning them to your workload is almost always the right one. 🌊</p></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Blog post page navigation"><a class="pagination-nav__link pagination-nav__link--prev" href="/blog/fluss-tiering-service-deep-dive-part1/"><div class="pagination-nav__sublabel">Newer post</div><div class="pagination-nav__label">Tiering Service Deep Dive Part 1: The Mental Model</div></a><a cl [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div></div>
</body>
diff --git a/blog/fluss-tiering-service-deep-dive-part1/index.html b/blog/fluss-tiering-service-deep-dive-part1/index.html
new file mode 100644
index 000000000..e6b94189f
--- /dev/null
+++ b/blog/fluss-tiering-service-deep-dive-part1/index.html
@@ -0,0 +1,161 @@
+<!doctype html>
+<html lang="en" dir="ltr" class="blog-wrapper blog-post-page plugin-blog plugin-id-default" data-has-hydrated="false">
+<head>
+<meta charset="UTF-8">
+<meta name="generator" content="Docusaurus v3.10.1">
+<title data-rh="true">Tiering Service Deep Dive Part 1: The Mental Model | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en [...]
+<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Fluss™ (Incubating) Atom Feed">
+
+
+
+
+<link rel="search" type="application/opensearchdescription+xml" title="Apache Fluss™ (Incubating)" href="/opensearch.xml">
+
+
+<link rel="icon" href="/img/logo/fluss_favicon.svg">
+<link rel="manifest" href="/manifest.json">
+<meta name="theme-color" content="#102856">
+
+<meta name="description" content="Apache Fluss is an open-source columnar streaming storage system. Sub-second freshness, primary-key tables, first-class Apache Flink integration, and native tiering to Apache Iceberg and Apache Paimon.">
+<meta property="og:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
+<meta property="og:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
+<meta property="og:type" content="website">
+<meta name="twitter:card" content="summary_large_image">
+<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
+<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
+<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
+</head>
+<body>
+<svg style="display: none;"><defs>
+<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
+</defs></svg>
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<p>If you're new to Fluss, the lake-tiering story is one of those topics where every explanation seems to assume you already know how it works.
+This three-part walkthrough aims to bring some clarity to the confusing parts of the system, and to help you understand how it works in practice.</p>
+<p><strong>Part 1</strong> builds the mental model from scratch and by the end of it you'll be able to describe, step by step, what happens between the moment a tiering timer fires and the moment a lake snapshot is committed.</p>
+<p><strong>Parts 2 and 3</strong> take that mental model and add the dials (parallelism, table kinds, freshness, multi-table behavior, scale-out) and then put it into a real production deployment (failures, pitfalls, monitoring).</p>
+<p><strong>Tiering Service Deep Dive, 3-parts:</strong></p>
+<ul>
+<li class=""><strong>Part 1 - The Mental Model:</strong> how one tiering round actually works, from timer fire to lake commit.</li>
+<li class=""><strong>Part 2 - Tuning:</strong> per-table dials, multi-table dynamics, and scaling out.</li>
+<li class=""><strong>Part 3 - In Production</strong> failure modes, design pitfalls, and monitoring.</li>
+</ul>
+<p>Fluss is bounded in capacity by design and that's the entire reason the tiering service exists.
+Its speed comes from keeping data on local disks attached to a small number of machines. Local disk is finite, costs money to keep spinning, and is sized for the working set, not for a year of history.
+Fluss isn't your archive, it's the freshest layer of your platform.
+So old data has to leave, on a schedule, into storage designed for the long haul. <strong>That's the job of the tiering service</strong>.</p>
+<p>Meanwhile, you have analysts and batch jobs and ML/AI pipelines <strong>who don't need millisecond freshness</strong>, but they need to query a year of orders, run a join over a quarter of clicks, train a model on six months of sessions.
+That's the job of the data Lakehouse. Parquet files on S3, organized as open table formats (Iceberg, Paimon, Hudi, Lance), queryable by <code>Spark</code>, <code>StarRocks</code>, <code>DuckDB</code>, <code>Trino</code>, <code>Flink-batch</code> or even just <code>Python</code>.</p>
+<p><strong>So you have two storage layers:</strong> the hot one (Fluss) and the cold one (the Lakehouse), <strong>exposed as one single table abstraction with different freshness layers</strong>, and you need something that moves data from one to the other on a regular schedule, in a way that's correct, atomic, and survives failures.
+That something is the tiering service.</p>
+<p><img decoding="async" loading="lazy" src="/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png" width="1185" height="710" class="img_ev3q"></p>
+<p>The tiering service does three things at once.</p>
+<ol>
+<li class=""><strong>It keeps the Lakehouse fresh:</strong> within some configurable target like <strong>"never more than two minutes behind"</strong>.</li>
+<li class=""><strong>It lets Fluss reclaim space:</strong> once data is safely in the Lakehouse, Fluss can delete its own copy.</li>
+<li class=""><strong>And it does both atomically:</strong> the Lakehouse either sees a complete update or no update at all, never a half-written mess.</li>
+</ol>
+<p>The tiering service is just a stateless Flink <strong>(Spark support is also WIP)</strong> streaming job that runs continuously. It reads from Fluss, writes Parquet files to S3, and tells the Fluss coordinator <strong>"I committed this offset range, you can release it now."</strong></p>
+<p>Everything else in this article is about the details, but if you remember <strong>"it's a stateless Flink job that copies data, on a schedule, in atomic batches,"</strong> you've got the shape of it.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-three-processes-and-what-each-one-does">The Three Processes And What Each One Does<a href="#the-three-processes-and-what-each-one-does" class="hash-link" aria-label="Direct link to The Three Processes And What Each One Does" title="Direct link to The Three Processes And What Each One Does" translate="no"></a></h2>
+<p>Three processes are involved in tiering. They live in different places, they have different responsibilities, and they almost never overlap.
+Knowing which is which is half the battle of debugging anything.</p>
+<p><img decoding="async" loading="lazy" src="/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png" width="1189" height="588" class="img_ev3q"></p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-coordinator">The Coordinator<a href="#the-coordinator" class="hash-link" aria-label="Direct link to The Coordinator" title="Direct link to The Coordinator" translate="no"></a></h3>
+<p>The Fluss coordinator is the brain of the cluster that handles <code>metadata</code>, <code>leader election</code>, and <code>cluster state</code>. Tiering is one of its many responsibilities.
+It keeps a list of which tables need to be tiered, when each was tiered last, and which one should go next.
+It does not move any data itself; it decides what runs and tracks what's in flight.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-flink-tiering-job">The Flink Tiering Job<a href="#the-flink-tiering-job" class="hash-link" aria-label="Direct link to The Flink Tiering Job" title="Direct link to The Flink Tiering Job" translate="no"></a></h3>
+<p>This is a stateless Flink streaming job that you deploy. It runs forever. Every so often, it calls the coordinator and asks <strong>"what should I work on next?"</strong>.
+When the coordinator hands it a table, the Flink job reads that table's data from the Fluss tablet servers, writes it out as Parquet files in the lake, and commits a lake snapshot.
+Then it reports back, <strong>"done, you can mark this table as tiered"</strong> and asks for the next one.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-fluss-tablet-servers">The Fluss Tablet Servers<a href="#the-fluss-tablet-servers" class="hash-link" aria-label="Direct link to The Fluss Tablet Servers" title="Direct link to The Fluss Tablet Servers" translate="no"></a></h3>
+<p>These are the Fluss processes that actually hold your data.
+The tiering job reads from them but never writes to them. They mostly don't know they're being tiered, they just serve reads.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-data-lakehouse">The Data Lakehouse<a href="#the-data-lakehouse" class="hash-link" aria-label="Direct link to The Data Lakehouse" title="Direct link to The Data Lakehouse" translate="no"></a></h3>
+<p>S3, GCS, or whatever object store you're using. The open table format (Paimon, Iceberg, Hudi or Lance) defines how files and metadata are laid out so that query engines can read them.
+The tiering job writes here. Nobody else touches it during tiering.</p>
+<blockquote>
+<p><strong>Why Split It This Way?</strong>
+Separating the <strong>"who decides"</strong> from the <strong>"who moves"</strong> is a deliberate design choice. The coordinator already manages cluster state. Making it also responsible for scheduling tiering is a small addition. Putting the actual data movement in Flink means you get all of Flink's benefits for free, parallelism, checkpointing, restart-from-failure, without having to build any of it from scratch.</p>
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-heartbeat">The Heartbeat<a href="#the-heartbeat" class="hash-link" aria-label="Direct link to The Heartbeat" title="Direct link to The Heartbeat" translate="no"></a></h2>
+<p>The coordinator and the Flink tiering job are different processes on different machines.
+They need a way to talk. They have exactly one channel: <strong>a single RPC called the heartbeat</strong>, sent by the Flink job to the coordinator on a configured interval (<code>tiering.poll.table.interval, default 30 seconds</code>).
+Every piece of communication between them happens inside this one call.</p>
+<p>That makes the heartbeat a four-purpose message:
+<img decoding="async" loading="lazy" src="/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png" width="1185" height="575" class="img_ev3q"></p>
+<p>The Flink job's heartbeat carries:</p>
+<ol>
+<li class=""><strong>What it's currently working on:</strong> the list of tables it's tiering right now</li>
+<li class=""><strong>What it just finished:</strong> tables whose Lakehouse commits succeeded since the last heartbeat</li>
+<li class=""><strong>What failed:</strong> tables whose tiering blew up for some reason, and</li>
+<li class=""><strong>"Give me another":</strong> a boolean flag asking for the next table from the queue. The coordinator's response carries either a new table assignment or a <strong>"nothing for you right now"</strong> message.</li>
+</ol>
+<p>Two things from this design that are worth remembering.</p>
+<p><strong>First, the coordinator only learns about in-progress work at heartbeat boundaries</strong>. The heartbeat cadence is for polling, <strong>"anything new for me?</strong>"
+Completion is different: when a table finishes (or fails), the enumerator triggers an immediate heartbeat rather than waiting for the next tick.
+So the worst-case lag of <strong>"up to 30 seconds"</strong> applies to mid-round status, not to commit announcements.</p>
+<p><strong>Second, every message has an "epoch" number stamped on it</strong>. Each time a table starts a new tiering attempt, its epoch goes up by one.
+If a Flink job tries to report success with a stale epoch (because the coordinator already gave up on that attempt and handed the work to someone else), the coordinator just ignores the message.
+This is how the system stays consistent even when things go sideways and we'll come back to it in <strong>Part 3</strong>, in the failure-modes section.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-life-of-a-table-four-states-walked-through">The Life Of A Table: Four States, Walked Through<a href="#the-life-of-a-table-four-states-walked-through" class="hash-link" aria-label="Direct link to The Life Of A Table: Four States, Walked Through" title="Direct link to The Life Of A Table: Four States, Walked Through" translate="no"></a></h2>
+<p>Every table that's enabled for lake tiering goes through the same lifecycle.
+The coordinator tracks each table's current state. For our purposes, four states are enough to keep in your head:</p>
+<p><img decoding="async" loading="lazy" src="/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png" width="1201" height="456" class="img_ev3q"></p>
+<blockquote>
+<p><strong>Note:</strong> The actual source code uses seven state names: <code>NEW</code>, <code>INITIALIZED</code>, <code>SCHEDULED</code>, <code>PENDING</code>, <code>TIERING</code>, <code>TIERED</code>, <code>FAILED</code>. Here we collapse them into four pedagogical states to keep the mental model small.</p>
+</blockquote>
+<p><strong>NEW</strong> is only used for the very first time a lake-enabled table is created, and <code>INITIALIZED</code> is only used for tables the coordinator rediscovers after a restart. Both transition into <code>SCHEDULED</code> immediately, so we ignore them here. <code>FAILED</code> is the unhappy-path state we'll come back to in <strong>Part 3</strong>.</p>
+<p><strong>WAITING.</strong> The table has been tiered recently and the freshness timer is counting down. Nothing to do.</p>
+<p><strong>READY.</strong> The timer has fired. The table is now in the coordinator's pending queue, waiting for a Flink job to pick it up on the next heartbeat. It might wait a few seconds, or several minutes if there are many other tables ahead of it.</p>
+<p><strong>TIERING.</strong> A Flink job has picked the table up and is reading its data, writing Parquet files to the Lakehouse, and aiming for a commit. The coordinator has started a clock; if this takes too long, it'll time out.</p>
+<p><strong>DONE.</strong> The Lakehouse commit landed. The coordinator records <strong>"this table was last tiered at time T"</strong> and immediately schedules the next round. The table goes back into <code>WAITING</code>.</p>
+<p>The happy path is just <code>WAITING → READY → TIERING → DONE → WAITING →</code> ... forever. The unhappy path, which we'll cover in <strong>Part 3</strong>, in the failure-modes section, is when TIERING ends in failure (timeout, reader crash, anything) and the table cycles back to <code>READY</code> without ever reaching <code>DONE</code>.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="a-complete-tiering-round-step-by-step">A Complete Tiering Round, Step By Step<a href="#a-complete-tiering-round-step-by-step" class="hash-link" aria-label="Direct link to A Complete Tiering Round, Step By Step" title="Direct link to A Complete Tiering Round, Step By Step" translate="no"></a></h2>
+<p>Three concepts are important to understand when you're reading this:</p>
+<ul>
+<li class=""><strong>Bucket:</strong> A horizontal partition of a Fluss table. If a table has 16 buckets, every record is hashed into one of the 16 by some key. Buckets are the unit of parallelism for both writes (different writers can land in different buckets) and reads.</li>
+<li class=""><strong>Split:</strong> A unit of work for the Flink tiering job. Each split says <strong>"read offsets X to Y of bucket B"</strong>. During a tiering round, the planner generates one split per bucket of the table being tiered.</li>
+<li class=""><strong>Reader:</strong> A Flink subtask that processes splits. If you set the Flink job's parallelism to 16, you have 16 readers. Each reader processes one split at a time and asks for another when it's done.</li>
+</ul>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="lets-walk-through-a-single-tiering-round-with-a-concrete-example">Let's walk through a single tiering round with a concrete example.<a href="#lets-walk-through-a-single-tiering-round-with-a-concrete-example" class="hash-link" aria-label="Direct link to Let's walk through a single tiering round with a concrete example." title="Direct link to Let's walk through a single tiering round with a concrete example." translate="no [...]
+<p>We have one table, called <code>orders</code>, with four buckets. It's a log table (we'll talk about what that means in Part 2, when we cover table kinds. For now, just think <strong>"an append-only stream of records"</strong>). Freshness is configured to five minutes. The Flink tiering job is up and running.</p>
+<p>Here's what happens:.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-timer-fires">T+0s the timer fires.<a href="#t0s-the-timer-fires" class="hash-link" aria-label="Direct link to T+0s the timer fires." title="Direct link to T+0s the timer fires." translate="no"></a></h4>
+<p>Five minutes have passed since the last tiering round for <code>orders</code>. The coordinator transitions the table from WAITING to READY and pushes it onto the back of the pending queue. The act of entering the pending queue is also what increments the table's tiering epoch · to (say) 7 · so every fresh attempt is stamped at enqueue time, before any job has picked it up. Right now the queue contains just <code>orders</code>.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-sends-its-heartbeat">T+0s the Flink job sends its heartbeat.<a href="#t0s-the-flink-job-sends-its-heartbeat" class="hash-link" aria-label="Direct link to T+0s the Flink job sends its heartbeat." title="Direct link to T+0s the Flink job sends its heartbeat." translate="no"></a></h4>
+<p>The job is idle, there is no work in progress, so its heartbeat says <strong>"give me something"</strong>. The coordinator pops <code>orders</code> off the queue, transitions it to <code>TIERING</code>, and replies <strong>"your next table is <code>orders</code>, epoch 7"</strong>. The epoch was already set when the table entered the queue. <code>requestTable()</code> just reads it and hands it back, it doesn't bump it again.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-plans-the-work">T+0s the Flink job plans the work.<a href="#t0s-the-flink-job-plans-the-work" class="hash-link" aria-label="Direct link to T+0s the Flink job plans the work." title="Direct link to T+0s the Flink job plans the work." translate="no"></a></h4>
+<p>The job's enumerator (the part of a Flink source that decides what each parallel reader will do) asks the Fluss tablet servers: <strong>"what's the latest offset for each bucket of <code>orders</code> right now?"</strong> Let's say the answers come back as <code>[bucket-0: 1,000; bucket-1: 1,200; bucket-2: 950; bucket-3: 1,100]</code>. The enumerator also looks up where the last tiering round left off; the <strong>"last committed lake offset"</strong [...]
+The difference is the work for this round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-splits-are-created">T+0s splits are created.<a href="#t0s-splits-are-created" class="hash-link" aria-label="Direct link to T+0s splits are created." title="Direct link to T+0s splits are created." translate="no"></a></h4>
+<p>The enumerator builds four splits, one per bucket. Each split says <strong>"read from offset X to offset Y of bucket B"</strong>. It shuffles them randomly (so no reader always gets the heaviest bucket) and assigns one split to each of the four Flink readers running in parallel.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-to-t60s-the-readers-work">T+0s to T+60s the readers work.<a href="#t0s-to-t60s-the-readers-work" class="hash-link" aria-label="Direct link to T+0s to T+60s the readers work." title="Direct link to T+0s to T+60s the readers work." translate="no"></a></h4>
+<p>Each reader streams its assigned offset range from a Fluss tablet server and writes the records as Parquet files into a staging area in the lake. The buckets process independently and at different speeds. When a reader finishes its split, it emits a small message saying <strong>"bucket B is done, here are the files I wrote, the last offset I read was Y"</strong>.</p>
+<p><img decoding="async" loading="lazy" src="/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png" width="1184" height="715" class="img_ev3q"></p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-collects-all-four-results">T+60s the commit operator collects all four results.<a href="#t60s-the-commit-operator-collects-all-four-results" class="hash-link" aria-label="Direct link to T+60s the commit operator collects all four results." title="Direct link to T+60s the commit operator collects all four results." translate="no"></a></h4>
+<p>A dedicated Flink operator called the commit operator sits at the end of the job. In the normal path it waits for results from all four buckets, then commits them together as <strong>a single atomic lake snapshot</strong>. This gives you a clean, all-or-nothing update to the lake table. Once it has all four, it calls into the open table format and writes a snapshot that includes all the new Parquet files plus the updated per-bucket offsets. (Force-finish, which we'll meet in Part [...]
+<blockquote>
+<p><strong>One detail that's easy to miss:</strong> the lake snapshot is durable at <code>T+60s</code>, but the coordinator hasn't transitioned the table to <code>DONE</code> yet. That happens on the next heartbeat from the enumerator.</p>
+</blockquote>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss">T+60s the commit operator records the lake snapshot back to Fluss.<a href="#t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss" class="hash-link" aria-label="Direct link to T+60s the commit operator records the lake snapshot back to Fluss." title="Direct link to T+60s the commit operator records the lake snapshot back to Fluss." translate="no"></a></h4>
+<p>Now that the lake snapshot is durable, the commit operator (<code>TieringCommitOperator</code>) records the new snapshot offsets into Fluss metadata through the coordinator. It delegates this to a helper, <code>FlussTableLakeSnapshotCommitter</code>, which implements a two-phase commit (prepare + commit) against the coordinator gateway rather than RPC'ing tablet servers directly. This lets the cluster know that data up to those offsets is safely in the lake and can be aged out of [...]
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-notifies-the-enumerator">T+60s the commit operator notifies the enumerator.<a href="#t60s-the-commit-operator-notifies-the-enumerator" class="hash-link" aria-label="Direct link to T+60s the commit operator notifies the enumerator." title="Direct link to T+60s the commit operator notifies the enumerator." translate="no"></a></h4>
+<p>Immediately after the commit, the commit operator sends a <code>FinishedTieringEvent</code> back to the source enumerator. As we said earlier, the enumerator doesn't wait for the next 30-second poll tick. It fires an out-of-band heartbeat right away, carrying <code>orders</code> in the <code>finished_tables</code> list.
+The coordinator validates the epoch (still 7, all good), records the completion time, transitions <code>orders</code> to <code>DONE</code>, and immediately schedules the next round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="scheduling-the-next-round">Scheduling the next round.<a href="#scheduling-the-next-round" class="hash-link" aria-label="Direct link to Scheduling the next round." title="Direct link to Scheduling the next round." translate="no"></a></h4>
+<p>The freshness timer is computed from when the round <strong>completed</strong>, not from when it started. The coordinator does <code>delay = freshness − (now − lastTieredTime)</code>, and <code>lastTieredTime</code> is set to the moment the completion heartbeat is processed. So with a five-minute freshness, the next round fires roughly five minutes after the commit, i.e. at about T+360s. This is the (intentional) reason the lake always lags by at least one full freshness interval plus [...]
+<p>That's it. Round complete. The lake now contains <code>orders</code> data up to the offsets that were current at T+0s. In another ~five minutes, the whole process repeats.</p>
+<blockquote>
+<p><strong>The most subtle point in this section: The "stopping offset" is decided at planning time, not at reading time.</strong> When the enumerator asks the tablet servers "what's your latest offset?" at T+0s, those answers freeze. Any records written to Fluss after T+0s but before the readers actually start working are not part of this round · they'll be picked up in the next one. This is correct behavior, but it means the lake always lags by at least on [...]
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="next-up">Next Up<a href="#next-up" class="hash-link" aria-label="Direct link to Next Up" title="Direct link to Next Up" translate="no"></a></h2>
+<p>You've now got the mental model, the processes, the heartbeat conversation, the lifecycle, and what happens during one full round.
+The next part takes that round and shows what changes when you start tuning the dials, and then what changes again when you stop thinking about one table at a time.</p></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Blog post page navigation"><a class="pagination-nav__link pagination-nav__link--next" href="/blog/fluss-storage-hierarchy/"><div class="pagination-nav__sublabel">Older post</div><div class="pagination-nav__label">The Storage Hierarchy: Hot, Remote, an [...]
+ <p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
+ <p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div></div>
+</body>
+</html>
\ No newline at end of file
diff --git a/blog/fluss_fraud_detection/index.html b/blog/fluss_fraud_detection/index.html
index 70843478e..69382cfcb 100644
--- a/blog/fluss_fraud_detection/index.html
+++ b/blog/fluss_fraud_detection/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Fraud detection is a mission-critical capability for businesses operating in financial services, e-commerce, and digital payments. Detecting suspicious transactions in real time can prevent significant losses and protect customers. This blog demonstrates how to build a streamhouse that processes bank transactions in real time, detects fraud, and serves data seamlessly across hot (sub‑second latency) and cold (minutes‑latency) layers.
Real-time detection and historical analytics are combined, enabling businesses to act quickly while maintaining a complete audit trail.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="streamhouse-architecture">Streamhouse Architecture<a href="#streamhouse-architecture" class="hash-link" aria-label="Direct link to Streamhouse Architecture" title="Direct link to Streamhouse Architecture" translate="no"></a></h2>
diff --git a/blog/fluss_rust_client_release/index.html b/blog/fluss_rust_client_release/index.html
index c8eff6b4b..a0cb77af3 100644
--- a/blog/fluss_rust_client_release/index.html
+++ b/blog/fluss_rust_client_release/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>We are excited to announce the release of <a href="https://github.com/apache/fluss-rust" target="_blank" rel="noopener noreferrer" class="">fluss-rust clients</a> 0.1.0, the first official release of the <a href="https://clients.fluss.apache.org/user-guide/rust/installation" target="_blank" rel="noopener noreferrer" class="">Rust</a>, <a href="https://clients.fluss.apache.org/user-guide/python/installation" target="_blank" rel="noopener noreferrer" class="">Python</a>, and <a href="ht [...]
<p>Under the hood, all three clients share a single Rust core that handles protocol negotiation, batching, retries, and <a href="https://arrow.apache.org/" target="_blank" rel="noopener noreferrer" class="">Apache Arrow</a>-based data exchange, with thin language-specific bindings on top. This was a deliberate community decision to deliver native performance and feature parity across every language from day one.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="highlights">Highlights<a href="#highlights" class="hash-link" aria-label="Direct link to Highlights" title="Direct link to Highlights" translate="no"></a></h2>
diff --git a/blog/hands-on-fluss-lakehouse/index.html b/blog/hands-on-fluss-lakehouse/index.html
index ddd8a850b..6d7347a25 100644
--- a/blog/hands-on-fluss-lakehouse/index.html
+++ b/blog/hands-on-fluss-lakehouse/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><img decoding="async" loading="lazy" src="/assets/images/streamhouse-7b7f1260fc996ca89b50dbb9454584ab.png" width="3057" height="1237" class="img_ev3q"></p>
<p>In this hands-on tutorial, we'll walk you through setting up a local Fluss lakehouse environment, running some practical data operations, and getting first-hand experience with the complete Fluss lakehouse architecture. By the end, you'll have a working environment for experimenting with Fluss's powerful data processing capabilities.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="integrate-with-paimon-minio-lakehouse">Integrate with Paimon Minio Lakehouse<a href="#integrate-with-paimon-minio-lakehouse" class="hash-link" aria-label="Direct link to Integrate with Paimon Minio Lakehouse" title="Direct link to Integrate with Paimon Minio Lakehouse" translate="no"></a></h2>
@@ -168,7 +168,7 @@
<p>Open the Minio WebUI, and you'll see the Paimon files in your bucket:</p>
<p><img decoding="async" loading="lazy" src="/assets/images/fluss-bucket-data-47a0df43a938f44f5671f184588fd5ef.png" width="1508" height="530" class="img_ev3q"></p>
<p>You can also check the Parquet files and manifest in your local filesystem under <code>/tmp/minio-data</code>:</p>
-<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#0A0F1C;--prism-background-color:#F8FAFC"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#0A0F1C;background-color:#F8FAFC"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#0A0F1C"><span class="token plain">/tmp/minio-data ❯ tree .</span><br></div><div class="token-line" style="color:#0A0F1C"><span [...]
+<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#0A0F1C;--prism-background-color:#F8FAFC"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#0A0F1C;background-color:#F8FAFC"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#0A0F1C"><span class="token plain">/tmp/minio-data ❯ tree .</span><br></div><div class="token-line" style="color:#0A0F1C"><span [...]
</li>
<li class="">
<p>View Snapshots</p>
diff --git a/blog/index.html b/blog/index.html
index 4e4f81268..e787d09d8 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.10.1">
-<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
+<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Fluss™ (Incubating) Atom Feed">
@@ -24,14 +24,24 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<p>If you're new to Fluss, the lake-tiering story is one of those topics where every explanation seems to assume you already know how it works.
+This three-part walkthrough aims to bring some clarity to the confusing parts of the system, and to help you understand how it works in practice.</p>
+<p><strong>Part 1</strong> builds the mental model from scratch and by the end of it you'll be able to describe, step by step, what happens between the moment a tiering timer fires and the moment a lake snapshot is committed.</p>
+<p><strong>Parts 2 and 3</strong> take that mental model and add the dials (parallelism, table kinds, freshness, multi-table behavior, scale-out) and then put it into a real production deployment (failures, pitfalls, monitoring).</p>
+<p><strong>Tiering Service Deep Dive, 3-parts:</strong></p>
+<ul>
+<li class=""><strong>Part 1 - The Mental Model:</strong> how one tiering round actually works, from timer fire to lake commit.</li>
+<li class=""><strong>Part 2 - Tuning:</strong> per-table dials, multi-table dynamics, and scaling out.</li>
+<li class=""><strong>Part 3 - In Production</strong> failure modes, design pitfalls, and monitoring.</li>
+</ul></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about Tiering Service Deep Dive Part 1: The Mental Model" href="/blog/fluss-tiering-service-deep-dive-part1/"><b>Read more</b></a></div></footer></article><article class="margin-bottom--xl"><header><h2 class="title_f1Hy"><a href="/blog/fluss-storage-hierarchy/">The Storage Hierarchy: Hot, Remote, and Lake</a></h2><div class="container_mt6G margin-vert--md"><time datetime="2026-06-02T00:0 [...]
<p><strong>Apache Fluss stores data in three places:</strong> local disk on the tablet server, remote object storage like S3, and the lakehouse. Which place holds which data at any given moment, and what is responsible for moving it between them, is the foundation everything else rests on. Your capacity plan depends on it. Your latency targets depend on it. Your disaster-recovery story depends on it. So does your ability to predict, in advance, that a particular configuration change is g [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
@@ -95,10 +105,7 @@ through batch-oriented systems or log-only pipelines.</p>
<li class=""><strong>First-class Azure support</strong>, allowing Fluss to tier and operate seamlessly on Azure Blob Storage and ADLS Gen2</li>
</ul></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" title="Content related release announcement." class="tag_zVej tagRegular_sFm0" href="/blog/tags/releases/">releases</a></li></ul></div><div class="col text--right col--3"><a aria-label="Read more about Apache Fluss (Incubating) 0.9 Release Announcement" href="/blog/releases/0.9/"><b>Read more</b></a></div></footer></arti [...]
<p>Fraud detection is a mission-critical capability for businesses operating in financial services, e-commerce, and digital payments. Detecting suspicious transactions in real time can prevent significant losses and protect customers. This blog demonstrates how to build a streamhouse that processes bank transactions in real time, detects fraud, and serves data seamlessly across hot (sub‑second latency) and cold (minutes‑latency) layers.
-Real-time detection and historical analytics are combined, enabling businesses to act quickly while maintaining a complete audit trail.</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about A fraud detection pipeline with Streamhouse" href="/blog/fluss_fraud_detection/"><b>Read more</b></a></div></footer></article><article class="margin-bottom--xl"><header><h2 class="title_f1Hy"><a href="/blog/2025/12/02/fluss-x-iceberg-why-your-lakehou [...]
-<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
-<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
-<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
+Real-time detection and historical analytics are combined, enabling businesses to act quickly while maintaining a complete audit trail.</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about A fraud detection pipeline with Streamhouse" href="/blog/fluss_fraud_detection/"><b>Read more</b></a></div></footer></article><nav class="pagination-nav" aria-label="Blog list page navigation"><a class="pagination-nav__link pagination-nav__link--next [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div>
</body>
diff --git a/blog/page/2/index.html b/blog/page/2/index.html
index 2b96546f7..e13ce5fd9 100644
--- a/blog/page/2/index.html
+++ b/blog/page/2/index.html
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.10.1">
-<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
+<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Fluss™ (Incubating) Atom Feed">
@@ -24,14 +24,17 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
+<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
+<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
<p>🌊 We are excited to announce the official release of <strong>Apache Fluss (Incubating) 0.8</strong>!</p>
<p>This is our first release under the incubator of the Apache Software Foundation, marking a significant milestone in our journey to provide a robust streaming storage platform for real-time analytics.</p>
<p>Over the past four months, the community has made tremendous progress, delivering nearly 400 commits that push the boundaries of the Streaming Lakehouse ecosystem. This release includes multiple stability optimizations and introduces deeper integrations, performance breakthroughs, and next-generation stream processing capabilities. Highlights:</p>
@@ -77,11 +80,7 @@ policy-driven data pipeline that seamlessly bridges your real-time Fluss cluster
For example, imagine you’re building a real-time recommendation engine for an e-commerce platform.
To serve highly personalized recommendations, your system needs a complete 360° view of each user, including:
<em>user preferences</em>, <em>past purchases</em>, <em>clickstream behavior</em>, <em>cart activity</em>, <em>product reviews</em>, <em>support tickets</em>, <em>ad impressions</em>, and <em>loyalty status</em>.</p>
-<p>That’s at least <strong>8 different data sources</strong>, each producing updates independently.</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about Understanding Partial Updates" href="/blog/partial-updates/"><b>Read more</b></a></div></footer></article><article class="margin-bottom--xl"><header><h2 class="title_f1Hy"><a href="/blog/unveil-fluss-logo/">The Story of Fluss Logo</a></h2><div class="container_mt6G margin-vert--md"><ti [...]
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introducing-the-little-otter">Introducing the Little Otter<a href="#introducing-the-little-otter" class="hash-link" aria-label="Direct link to Introducing the Little Otter" title="Direct link to Introducing the Little Otter" translate="no"></a></h2>
-<p>Today is <a href="https://www.otter.org/world-otter-day" target="_blank" rel="noopener noreferrer" class="">World Otter Day</a>, and we are thrilled to introduce the little otter to the Fluss community! 🎉</p>
-<p>Since open-sourced half a year ago, many community members and friends have asked us:
-"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about The Story of Fluss Logo" href="/blog/unveil-fluss-logo/"><b>Read more</b></a></div></footer></article><nav class="pagination-nav" aria-label="Blog list page navigation"><a class="pagination-nav__li [...]
+<p>That’s at least <strong>8 different data sources</strong>, each producing updates independently.</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about Understanding Partial Updates" href="/blog/partial-updates/"><b>Read more</b></a></div></footer></article><nav class="pagination-nav" aria-label="Blog list page navigation"><a class="pagination-nav__link pagination-nav__link--prev" href="/blog/"><div class="pagination-nav__label">Newer [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div>
</body>
diff --git a/blog/page/3/index.html b/blog/page/3/index.html
index a4f30f706..85bf99024 100644
--- a/blog/page/3/index.html
+++ b/blog/page/3/index.html
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.10.1">
-<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
+<title data-rh="true">Blog | Apache Fluss™ (Incubating)</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" name="twitter:image" content="https://fluss.apache.org/img/logo/png/colored_logo.png"><meta data-rh="true" property="og:url" content="https://fluss.a [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml" title="Apache Fluss™ (Incubating) Atom Feed">
@@ -24,14 +24,18 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introducing-the-little-otter">Introducing the Little Otter<a href="#introducing-the-little-otter" class="hash-link" aria-label="Direct link to Introducing the Little Otter" title="Direct link to Introducing the Little Otter" translate="no"></a></h2>
+<p>Today is <a href="https://www.otter.org/world-otter-day" target="_blank" rel="noopener noreferrer" class="">World Otter Day</a>, and we are thrilled to introduce the little otter to the Fluss community! 🎉</p>
+<p>Since open-sourced half a year ago, many community members and friends have asked us:
+"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p></div><footer class="row docusaurus-mt-lg"><div class="col text--right"><a aria-label="Read more about The Story of Fluss Logo" href="/blog/unveil-fluss-logo/"><b>Read more</b></a></div></footer></article><article class="margin-bottom--xl"><header><h2 class="title_f1Hy"><a href="/blog/releases/0.6/" [...]
three months of intensive development, bringing together the expertise and efforts of 45 contributors worldwide,
with more than 200 code commits completed. Our heartfelt thanks go out to every contributor for their invaluable support!</p>
<p><img decoding="async" loading="lazy" alt="Release Announcement" src="/assets/images/announce-9ab924e071ec69fe7af8765954f9e966.png" width="1224" height="440" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" title="Content related release announcement." class="tag_zVej tagRegular_sFm0" href="/blog/tags/releases/">releases</a></li></ul></div><div class= [...]
diff --git a/blog/partial-updates/index.html b/blog/partial-updates/index.html
index 0a75adb73..218961a6f 100644
--- a/blog/partial-updates/index.html
+++ b/blog/partial-updates/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Traditional streaming data pipelines often need to join many tables or streams on a primary key to create a wide view.
For example, imagine you’re building a real-time recommendation engine for an e-commerce platform.
To serve highly personalized recommendations, your system needs a complete 360° view of each user, including:
diff --git a/blog/pk-key-tables-log-cache-streaming/index.html b/blog/pk-key-tables-log-cache-streaming/index.html
index f01b36182..03fe23917 100644
--- a/blog/pk-key-tables-log-cache-streaming/index.html
+++ b/blog/pk-key-tables-log-cache-streaming/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
Common architectures include combinations such as Kafka with Redis, or Debezium feeding changes into a key-value store.
While these patterns underpin a significant portion of production infrastructure, they also introduce <strong>complexity</strong>, <strong>fragility</strong>, and <strong>operational overhead</strong>.</p>
<p>Apache Fluss (Incubating) addresses this challenge with an elegant solution: <strong>Primary Key Tables (PK Tables)</strong>.
diff --git a/blog/releases/0.6/index.html b/blog/releases/0.6/index.html
index 62de27d7b..ed332db6c 100644
--- a/blog/releases/0.6/index.html
+++ b/blog/releases/0.6/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
three months of intensive development, bringing together the expertise and efforts of 45 contributors worldwide,
with more than 200 code commits completed. Our heartfelt thanks go out to every contributor for their invaluable support!</p>
<p><img decoding="async" loading="lazy" alt="Release Announcement" src="/assets/images/announce-9ab924e071ec69fe7af8765954f9e966.png" width="1224" height="440" class="img_ev3q"></p>
diff --git a/blog/releases/0.7/index.html b/blog/releases/0.7/index.html
index 9dff3350c..3886162bd 100644
--- a/blog/releases/0.7/index.html
+++ b/blog/releases/0.7/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>🌊 We are excited to announce the official release of <strong>Fluss 0.7</strong>!</p>
<p>This version has undergone extensive improvements in <strong>stability</strong>, <strong>architecture</strong>, <strong>performance optimization</strong>, and <strong>security</strong>, further enhancing its readiness for <strong>production environments</strong>. Over the past three months, we have completed more than <strong>250 commits</strong>, making this release a significant milestone toward becoming a mature, production-grade streaming storage platform.</p>
<p><img decoding="async" loading="lazy" alt="Improvements Diagram" src="/assets/images/overview-255047ec7648f12c63660b40d1147c86.png" width="1248" height="778" class="img_ev3q"></p>
diff --git a/blog/releases/0.8/index.html b/blog/releases/0.8/index.html
index 2d0d0ab2c..ae9a68b32 100644
--- a/blog/releases/0.8/index.html
+++ b/blog/releases/0.8/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>🌊 We are excited to announce the official release of <strong>Apache Fluss (Incubating) 0.8</strong>!</p>
<p>This is our first release under the incubator of the Apache Software Foundation, marking a significant milestone in our journey to provide a robust streaming storage platform for real-time analytics.</p>
<p>Over the past four months, the community has made tremendous progress, delivering nearly 400 commits that push the boundaries of the Streaming Lakehouse ecosystem. This release includes multiple stability optimizations and introduces deeper integrations, performance breakthroughs, and next-generation stream processing capabilities. Highlights:</p>
diff --git a/blog/releases/0.9/index.html b/blog/releases/0.9/index.html
index 7d4efc5eb..23edd664b 100644
--- a/blog/releases/0.9/index.html
+++ b/blog/releases/0.9/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>🌊 We are excited to announce the official release of <strong>Apache Fluss (Incubating) 0.9</strong>!</p>
<p>This release marks a major milestone for the project. Fluss 0.9 significantly expands Fluss’s capabilities as a <strong>streaming storage system for real-time analytics, AI, and state-heavy streaming workloads</strong>, with a strong focus on:</p>
<ul>
diff --git a/blog/roaringbitmap-uv-deduplication/index.html b/blog/roaringbitmap-uv-deduplication/index.html
index 2cd0690d0..63072dd88 100644
--- a/blog/roaringbitmap-uv-deduplication/index.html
+++ b/blog/roaringbitmap-uv-deduplication/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>UV (Unique Visitors)</strong> measures the count of distinct users who visited a page or triggered an event within a given time window — unlike <strong>PV (Page Views)</strong>, which counts every request regardless of who made it. For any product or platform, accurate real-time UV statistics across dimensions like channel, city, date, and hour are a core analytical requirement.
The full combination of four dimensions means <strong>16 grouping methods</strong>; when the dimension count increases to seven, the number of possible groupings reaches <strong>128</strong>.</p>
<p>How can multi-dimensional deduplication be both accurate and flexible while maintaining real-time performance? Behind this challenge lie two very different computing paradigms: direct deduplication of raw data, or set operations based on bitmaps.</p>
diff --git a/blog/rss.xml b/blog/rss.xml
index 5d3444cfa..0a5d2fc39 100644
--- a/blog/rss.xml
+++ b/blog/rss.xml
@@ -4,10 +4,141 @@
<title>Apache Fluss™ (Incubating) Blog</title>
<link>https://fluss.apache.org/blog/</link>
<description>Apache Fluss™ (Incubating) Blog</description>
- <lastBuildDate>Tue, 02 Jun 2026 00:00:00 GMT</lastBuildDate>
+ <lastBuildDate>Thu, 04 Jun 2026 00:00:00 GMT</lastBuildDate>
<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
<generator>https://github.com/jpmonette/feed</generator>
<language>en</language>
+ <item>
+ <title><![CDATA[Tiering Service Deep Dive Part 1: The Mental Model]]></title>
+ <link>https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/</link>
+ <guid>https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/</guid>
+ <pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate>
+ <description><![CDATA[Banner]]></description>
+ <content:encoded><![CDATA[<p><img decoding="async" loading="lazy" alt="Banner" src="https://fluss.apache.org/assets/images/banner-98666bf14fe08041b4b05bd8eb130e11.png" width="1636" height="512" class="img_ev3q"></p>
+<p>If you're new to Fluss, the lake-tiering story is one of those topics where every explanation seems to assume you already know how it works.
+This three-part walkthrough aims to bring some clarity to the confusing parts of the system, and to help you understand how it works in practice.</p>
+<p><strong>Part 1</strong> builds the mental model from scratch and by the end of it you'll be able to describe, step by step, what happens between the moment a tiering timer fires and the moment a lake snapshot is committed.</p>
+<p><strong>Parts 2 and 3</strong> take that mental model and add the dials (parallelism, table kinds, freshness, multi-table behavior, scale-out) and then put it into a real production deployment (failures, pitfalls, monitoring).</p>
+<p><strong>Tiering Service Deep Dive, 3-parts:</strong></p>
+<ul>
+<li class=""><strong>Part 1 - The Mental Model:</strong> how one tiering round actually works, from timer fire to lake commit.</li>
+<li class=""><strong>Part 2 - Tuning:</strong> per-table dials, multi-table dynamics, and scaling out.</li>
+<li class=""><strong>Part 3 - In Production</strong> failure modes, design pitfalls, and monitoring.</li>
+</ul>
+<p>Fluss is bounded in capacity by design and that's the entire reason the tiering service exists.
+Its speed comes from keeping data on local disks attached to a small number of machines. Local disk is finite, costs money to keep spinning, and is sized for the working set, not for a year of history.
+Fluss isn't your archive, it's the freshest layer of your platform.
+So old data has to leave, on a schedule, into storage designed for the long haul. <strong>That's the job of the tiering service</strong>.</p>
+<p>Meanwhile, you have analysts and batch jobs and ML/AI pipelines <strong>who don't need millisecond freshness</strong>, but they need to query a year of orders, run a join over a quarter of clicks, train a model on six months of sessions.
+That's the job of the data Lakehouse. Parquet files on S3, organized as open table formats (Iceberg, Paimon, Hudi, Lance), queryable by <code>Spark</code>, <code>StarRocks</code>, <code>DuckDB</code>, <code>Trino</code>, <code>Flink-batch</code> or even just <code>Python</code>.</p>
+<p><strong>So you have two storage layers:</strong> the hot one (Fluss) and the cold one (the Lakehouse), <strong>exposed as one single table abstraction with different freshness layers</strong>, and you need something that moves data from one to the other on a regular schedule, in a way that's correct, atomic, and survives failures.
+That something is the tiering service.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig1-3f37d3905d612d6fe9aeaa4ea1aa2aad.png" width="1185" height="710" class="img_ev3q"></p>
+<p>The tiering service does three things at once.</p>
+<ol>
+<li class=""><strong>It keeps the Lakehouse fresh:</strong> within some configurable target like <strong>"never more than two minutes behind"</strong>.</li>
+<li class=""><strong>It lets Fluss reclaim space:</strong> once data is safely in the Lakehouse, Fluss can delete its own copy.</li>
+<li class=""><strong>And it does both atomically:</strong> the Lakehouse either sees a complete update or no update at all, never a half-written mess.</li>
+</ol>
+<p>The tiering service is just a stateless Flink <strong>(Spark support is also WIP)</strong> streaming job that runs continuously. It reads from Fluss, writes Parquet files to S3, and tells the Fluss coordinator <strong>"I committed this offset range, you can release it now."</strong></p>
+<p>Everything else in this article is about the details, but if you remember <strong>"it's a stateless Flink job that copies data, on a schedule, in atomic batches,"</strong> you've got the shape of it.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-three-processes-and-what-each-one-does">The Three Processes And What Each One Does<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-three-processes-and-what-each-one-does" class="hash-link" aria-label="Direct link to The Three Processes And What Each One Does" title="Direct link to The Three Processes And What Each One Does" translate="no"></a></h2>
+<p>Three processes are involved in tiering. They live in different places, they have different responsibilities, and they almost never overlap.
+Knowing which is which is half the battle of debugging anything.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig2-83362ecdf4c606f1417c0dbd214c94dd.png" width="1189" height="588" class="img_ev3q"></p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-coordinator">The Coordinator<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-coordinator" class="hash-link" aria-label="Direct link to The Coordinator" title="Direct link to The Coordinator" translate="no"></a></h3>
+<p>The Fluss coordinator is the brain of the cluster that handles <code>metadata</code>, <code>leader election</code>, and <code>cluster state</code>. Tiering is one of its many responsibilities.
+It keeps a list of which tables need to be tiered, when each was tiered last, and which one should go next.
+It does not move any data itself; it decides what runs and tracks what's in flight.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-flink-tiering-job">The Flink Tiering Job<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-flink-tiering-job" class="hash-link" aria-label="Direct link to The Flink Tiering Job" title="Direct link to The Flink Tiering Job" translate="no"></a></h3>
+<p>This is a stateless Flink streaming job that you deploy. It runs forever. Every so often, it calls the coordinator and asks <strong>"what should I work on next?"</strong>.
+When the coordinator hands it a table, the Flink job reads that table's data from the Fluss tablet servers, writes it out as Parquet files in the lake, and commits a lake snapshot.
+Then it reports back, <strong>"done, you can mark this table as tiered"</strong> and asks for the next one.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-fluss-tablet-servers">The Fluss Tablet Servers<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-fluss-tablet-servers" class="hash-link" aria-label="Direct link to The Fluss Tablet Servers" title="Direct link to The Fluss Tablet Servers" translate="no"></a></h3>
+<p>These are the Fluss processes that actually hold your data.
+The tiering job reads from them but never writes to them. They mostly don't know they're being tiered, they just serve reads.</p>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-data-lakehouse">The Data Lakehouse<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-data-lakehouse" class="hash-link" aria-label="Direct link to The Data Lakehouse" title="Direct link to The Data Lakehouse" translate="no"></a></h3>
+<p>S3, GCS, or whatever object store you're using. The open table format (Paimon, Iceberg, Hudi or Lance) defines how files and metadata are laid out so that query engines can read them.
+The tiering job writes here. Nobody else touches it during tiering.</p>
+<blockquote>
+<p><strong>Why Split It This Way?</strong>
+Separating the <strong>"who decides"</strong> from the <strong>"who moves"</strong> is a deliberate design choice. The coordinator already manages cluster state. Making it also responsible for scheduling tiering is a small addition. Putting the actual data movement in Flink means you get all of Flink's benefits for free, parallelism, checkpointing, restart-from-failure, without having to build any of it from scratch.</p>
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-heartbeat">The Heartbeat<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-heartbeat" class="hash-link" aria-label="Direct link to The Heartbeat" title="Direct link to The Heartbeat" translate="no"></a></h2>
+<p>The coordinator and the Flink tiering job are different processes on different machines.
+They need a way to talk. They have exactly one channel: <strong>a single RPC called the heartbeat</strong>, sent by the Flink job to the coordinator on a configured interval (<code>tiering.poll.table.interval, default 30 seconds</code>).
+Every piece of communication between them happens inside this one call.</p>
+<p>That makes the heartbeat a four-purpose message:
+<img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig3-b2b5ea80cb3b2060ab0c911e3e48a76c.png" width="1185" height="575" class="img_ev3q"></p>
+<p>The Flink job's heartbeat carries:</p>
+<ol>
+<li class=""><strong>What it's currently working on:</strong> the list of tables it's tiering right now</li>
+<li class=""><strong>What it just finished:</strong> tables whose Lakehouse commits succeeded since the last heartbeat</li>
+<li class=""><strong>What failed:</strong> tables whose tiering blew up for some reason, and</li>
+<li class=""><strong>"Give me another":</strong> a boolean flag asking for the next table from the queue. The coordinator's response carries either a new table assignment or a <strong>"nothing for you right now"</strong> message.</li>
+</ol>
+<p>Two things from this design that are worth remembering.</p>
+<p><strong>First, the coordinator only learns about in-progress work at heartbeat boundaries</strong>. The heartbeat cadence is for polling, <strong>"anything new for me?</strong>"
+Completion is different: when a table finishes (or fails), the enumerator triggers an immediate heartbeat rather than waiting for the next tick.
+So the worst-case lag of <strong>"up to 30 seconds"</strong> applies to mid-round status, not to commit announcements.</p>
+<p><strong>Second, every message has an "epoch" number stamped on it</strong>. Each time a table starts a new tiering attempt, its epoch goes up by one.
+If a Flink job tries to report success with a stale epoch (because the coordinator already gave up on that attempt and handed the work to someone else), the coordinator just ignores the message.
+This is how the system stays consistent even when things go sideways and we'll come back to it in <strong>Part 3</strong>, in the failure-modes section.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-life-of-a-table-four-states-walked-through">The Life Of A Table: Four States, Walked Through<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#the-life-of-a-table-four-states-walked-through" class="hash-link" aria-label="Direct link to The Life Of A Table: Four States, Walked Through" title="Direct link to The Life Of A Table: Four States, Walked Through" translate="no"></a></h2>
+<p>Every table that's enabled for lake tiering goes through the same lifecycle.
+The coordinator tracks each table's current state. For our purposes, four states are enough to keep in your head:</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig4-08d80fb474cb83b4601a82bb67c86236.png" width="1201" height="456" class="img_ev3q"></p>
+<blockquote>
+<p><strong>Note:</strong> The actual source code uses seven state names: <code>NEW</code>, <code>INITIALIZED</code>, <code>SCHEDULED</code>, <code>PENDING</code>, <code>TIERING</code>, <code>TIERED</code>, <code>FAILED</code>. Here we collapse them into four pedagogical states to keep the mental model small.</p>
+</blockquote>
+<p><strong>NEW</strong> is only used for the very first time a lake-enabled table is created, and <code>INITIALIZED</code> is only used for tables the coordinator rediscovers after a restart. Both transition into <code>SCHEDULED</code> immediately, so we ignore them here. <code>FAILED</code> is the unhappy-path state we'll come back to in <strong>Part 3</strong>.</p>
+<p><strong>WAITING.</strong> The table has been tiered recently and the freshness timer is counting down. Nothing to do.</p>
+<p><strong>READY.</strong> The timer has fired. The table is now in the coordinator's pending queue, waiting for a Flink job to pick it up on the next heartbeat. It might wait a few seconds, or several minutes if there are many other tables ahead of it.</p>
+<p><strong>TIERING.</strong> A Flink job has picked the table up and is reading its data, writing Parquet files to the Lakehouse, and aiming for a commit. The coordinator has started a clock; if this takes too long, it'll time out.</p>
+<p><strong>DONE.</strong> The Lakehouse commit landed. The coordinator records <strong>"this table was last tiered at time T"</strong> and immediately schedules the next round. The table goes back into <code>WAITING</code>.</p>
+<p>The happy path is just <code>WAITING → READY → TIERING → DONE → WAITING →</code> ... forever. The unhappy path, which we'll cover in <strong>Part 3</strong>, in the failure-modes section, is when TIERING ends in failure (timeout, reader crash, anything) and the table cycles back to <code>READY</code> without ever reaching <code>DONE</code>.</p>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="a-complete-tiering-round-step-by-step">A Complete Tiering Round, Step By Step<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#a-complete-tiering-round-step-by-step" class="hash-link" aria-label="Direct link to A Complete Tiering Round, Step By Step" title="Direct link to A Complete Tiering Round, Step By Step" translate="no"></a></h2>
+<p>Three concepts are important to understand when you're reading this:</p>
+<ul>
+<li class=""><strong>Bucket:</strong> A horizontal partition of a Fluss table. If a table has 16 buckets, every record is hashed into one of the 16 by some key. Buckets are the unit of parallelism for both writes (different writers can land in different buckets) and reads.</li>
+<li class=""><strong>Split:</strong> A unit of work for the Flink tiering job. Each split says <strong>"read offsets X to Y of bucket B"</strong>. During a tiering round, the planner generates one split per bucket of the table being tiered.</li>
+<li class=""><strong>Reader:</strong> A Flink subtask that processes splits. If you set the Flink job's parallelism to 16, you have 16 readers. Each reader processes one split at a time and asks for another when it's done.</li>
+</ul>
+<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="lets-walk-through-a-single-tiering-round-with-a-concrete-example">Let's walk through a single tiering round with a concrete example.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#lets-walk-through-a-single-tiering-round-with-a-concrete-example" class="hash-link" aria-label="Direct link to Let's walk through a single tiering round with a concrete example." title="Direct link to Let's walk through a single [...]
+<p>We have one table, called <code>orders</code>, with four buckets. It's a log table (we'll talk about what that means in Part 2, when we cover table kinds. For now, just think <strong>"an append-only stream of records"</strong>). Freshness is configured to five minutes. The Flink tiering job is up and running.</p>
+<p>Here's what happens:.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-timer-fires">T+0s the timer fires.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-timer-fires" class="hash-link" aria-label="Direct link to T+0s the timer fires." title="Direct link to T+0s the timer fires." translate="no"></a></h4>
+<p>Five minutes have passed since the last tiering round for <code>orders</code>. The coordinator transitions the table from WAITING to READY and pushes it onto the back of the pending queue. The act of entering the pending queue is also what increments the table's tiering epoch · to (say) 7 · so every fresh attempt is stamped at enqueue time, before any job has picked it up. Right now the queue contains just <code>orders</code>.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-sends-its-heartbeat">T+0s the Flink job sends its heartbeat.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-flink-job-sends-its-heartbeat" class="hash-link" aria-label="Direct link to T+0s the Flink job sends its heartbeat." title="Direct link to T+0s the Flink job sends its heartbeat." translate="no"></a></h4>
+<p>The job is idle, there is no work in progress, so its heartbeat says <strong>"give me something"</strong>. The coordinator pops <code>orders</code> off the queue, transitions it to <code>TIERING</code>, and replies <strong>"your next table is <code>orders</code>, epoch 7"</strong>. The epoch was already set when the table entered the queue. <code>requestTable()</code> just reads it and hands it back, it doesn't bump it again.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-the-flink-job-plans-the-work">T+0s the Flink job plans the work.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-the-flink-job-plans-the-work" class="hash-link" aria-label="Direct link to T+0s the Flink job plans the work." title="Direct link to T+0s the Flink job plans the work." translate="no"></a></h4>
+<p>The job's enumerator (the part of a Flink source that decides what each parallel reader will do) asks the Fluss tablet servers: <strong>"what's the latest offset for each bucket of <code>orders</code> right now?"</strong> Let's say the answers come back as <code>[bucket-0: 1,000; bucket-1: 1,200; bucket-2: 950; bucket-3: 1,100]</code>. The enumerator also looks up where the last tiering round left off; the <strong>"last committed lake offset"</strong>, let's say <code>[bucket-0: 990; [...]
+The difference is the work for this round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-splits-are-created">T+0s splits are created.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-splits-are-created" class="hash-link" aria-label="Direct link to T+0s splits are created." title="Direct link to T+0s splits are created." translate="no"></a></h4>
+<p>The enumerator builds four splits, one per bucket. Each split says <strong>"read from offset X to offset Y of bucket B"</strong>. It shuffles them randomly (so no reader always gets the heaviest bucket) and assigns one split to each of the four Flink readers running in parallel.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t0s-to-t60s-the-readers-work">T+0s to T+60s the readers work.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t0s-to-t60s-the-readers-work" class="hash-link" aria-label="Direct link to T+0s to T+60s the readers work." title="Direct link to T+0s to T+60s the readers work." translate="no"></a></h4>
+<p>Each reader streams its assigned offset range from a Fluss tablet server and writes the records as Parquet files into a staging area in the lake. The buckets process independently and at different speeds. When a reader finishes its split, it emits a small message saying <strong>"bucket B is done, here are the files I wrote, the last offset I read was Y"</strong>.</p>
+<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/fig5-52cf53687f29879728f45ad5d03f9d85.png" width="1184" height="715" class="img_ev3q"></p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-collects-all-four-results">T+60s the commit operator collects all four results.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-collects-all-four-results" class="hash-link" aria-label="Direct link to T+60s the commit operator collects all four results." title="Direct link to T+60s the commit operator collects all four results." translate="no"></a></h4>
+<p>A dedicated Flink operator called the commit operator sits at the end of the job. In the normal path it waits for results from all four buckets, then commits them together as <strong>a single atomic lake snapshot</strong>. This gives you a clean, all-or-nothing update to the lake table. Once it has all four, it calls into the open table format and writes a snapshot that includes all the new Parquet files plus the updated per-bucket offsets. (Force-finish, which we'll meet in Part 2, i [...]
+<blockquote>
+<p><strong>One detail that's easy to miss:</strong> the lake snapshot is durable at <code>T+60s</code>, but the coordinator hasn't transitioned the table to <code>DONE</code> yet. That happens on the next heartbeat from the enumerator.</p>
+</blockquote>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss">T+60s the commit operator records the lake snapshot back to Fluss.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-records-the-lake-snapshot-back-to-fluss" class="hash-link" aria-label="Direct link to T+60s the commit operator records the lake snapshot back to Fluss." title="Direct link to T+60s the commit operator re [...]
+<p>Now that the lake snapshot is durable, the commit operator (<code>TieringCommitOperator</code>) records the new snapshot offsets into Fluss metadata through the coordinator. It delegates this to a helper, <code>FlussTableLakeSnapshotCommitter</code>, which implements a two-phase commit (prepare + commit) against the coordinator gateway rather than RPC'ing tablet servers directly. This lets the cluster know that data up to those offsets is safely in the lake and can be aged out of Flus [...]
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="t60s-the-commit-operator-notifies-the-enumerator">T+60s the commit operator notifies the enumerator.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#t60s-the-commit-operator-notifies-the-enumerator" class="hash-link" aria-label="Direct link to T+60s the commit operator notifies the enumerator." title="Direct link to T+60s the commit operator notifies the enumerator." translate="no"></a></h4>
+<p>Immediately after the commit, the commit operator sends a <code>FinishedTieringEvent</code> back to the source enumerator. As we said earlier, the enumerator doesn't wait for the next 30-second poll tick. It fires an out-of-band heartbeat right away, carrying <code>orders</code> in the <code>finished_tables</code> list.
+The coordinator validates the epoch (still 7, all good), records the completion time, transitions <code>orders</code> to <code>DONE</code>, and immediately schedules the next round.</p>
+<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="scheduling-the-next-round">Scheduling the next round.<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#scheduling-the-next-round" class="hash-link" aria-label="Direct link to Scheduling the next round." title="Direct link to Scheduling the next round." translate="no"></a></h4>
+<p>The freshness timer is computed from when the round <strong>completed</strong>, not from when it started. The coordinator does <code>delay = freshness − (now − lastTieredTime)</code>, and <code>lastTieredTime</code> is set to the moment the completion heartbeat is processed. So with a five-minute freshness, the next round fires roughly five minutes after the commit, i.e. at about T+360s. This is the (intentional) reason the lake always lags by at least one full freshness interval plus [...]
+<p>That's it. Round complete. The lake now contains <code>orders</code> data up to the offsets that were current at T+0s. In another ~five minutes, the whole process repeats.</p>
+<blockquote>
+<p><strong>The most subtle point in this section: The "stopping offset" is decided at planning time, not at reading time.</strong> When the enumerator asks the tablet servers "what's your latest offset?" at T+0s, those answers freeze. Any records written to Fluss after T+0s but before the readers actually start working are not part of this round · they'll be picked up in the next one. This is correct behavior, but it means the lake always lags by at least one round, even if your freshnes [...]
+</blockquote>
+<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="next-up">Next Up<a href="https://fluss.apache.org/blog/fluss-tiering-service-deep-dive-part1/#next-up" class="hash-link" aria-label="Direct link to Next Up" title="Direct link to Next Up" translate="no"></a></h2>
+<p>You've now got the mental model, the processes, the heartbeat conversation, the lifecycle, and what happens during one full round.
+The next part takes that round and shows what changes when you start tuning the dials, and then what changes again when you stop thinking about one table at a time.</p>]]></content:encoded>
+ </item>
<item>
<title><![CDATA[The Storage Hierarchy: Hot, Remote, and Lake]]></title>
<link>https://fluss.apache.org/blog/fluss-storage-hierarchy/</link>
@@ -2812,49 +2943,5 @@ Engineers can spend less time wrestling with Flink’s state, checkpoints and jo
With Fluss handling the merge logic, achieving a single, up-to-date view from multiple disparate streams becomes way more elegant. 😁</p>
<p>And before you go 😊 don’t forget to give Fluss 🌊 some ❤️ via ⭐ on <a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">GitHub</a></p>]]></content:encoded>
</item>
- <item>
- <title><![CDATA[The Story of Fluss Logo]]></title>
- <link>https://fluss.apache.org/blog/unveil-fluss-logo/</link>
- <guid>https://fluss.apache.org/blog/unveil-fluss-logo/</guid>
- <pubDate>Wed, 28 May 2025 00:00:00 GMT</pubDate>
- <description><![CDATA[Introducing the Little Otter]]></description>
- <content:encoded><![CDATA[<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/colored_logo-570a85568f48c50f3ce9cdcfc57c8670.png" width="1614" height="686" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introducing-the-little-otter">Introducing the Little Otter<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#introducing-the-little-otter" class="hash-link" aria-label="Direct link to Introducing the Little Otter" title="Direct link to Introducing the Little Otter" translate="no"></a></h2>
-<p>Today is <a href="https://www.otter.org/world-otter-day" target="_blank" rel="noopener noreferrer" class="">World Otter Day</a>, and we are thrilled to introduce the little otter to the Fluss community! 🎉</p>
-<p>Since open-sourced half a year ago, many community members and friends have asked us:
-"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p>
-<p>I don't want to interpret the symbolic meaning behind the Logo in a rigid way. Instead, I’d like to share the story behind its design — how we defined the direction and iterated step by step toward the final version. This process involved numerous subjective decisions made by the team. You might prefer one of the discarded versions, or disagree with some of the design choices. However, we want to share the journey with our community, and we hope it can also serve as a reference or ins [...]
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="logo-symbolism-what-do-we-want-to-convey">Logo symbolism: what do we want to convey?<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#logo-symbolism-what-do-we-want-to-convey" class="hash-link" aria-label="Direct link to Logo symbolism: what do we want to convey?" title="Direct link to Logo symbolism: what do we want to convey?" translate="no"></a></h2>
-<p><a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">Fluss</a> is an open-source streaming storage system designed for analytical workloads, with the goal of serving as a real-time data layer for Lakehouse architectures. Therefore, <em><strong>fluidity</strong></em> is the first key message we want to convey.</p>
-<p>Secondly, Fluss’s vision is to <strong>"Bring better analytics to data streams, and bring better freshness to data Lakehouses"</strong>. This requires the ability to adapt to multiple data lake formats and support a variety of query engines and compute engines. So, <em><strong>adaptability</strong></em> is the second core idea we want to convey.</p>
-<p>Additionally, as an open-source project planning to be donated to the Apache Software Foundation, building an open, diverse, and collaborative community has always been one of our core goals. In line with this value, we wanted the brand to express <em><strong>friendliness</strong></em>, which ultimately led us to choose animal as the logo design direction.</p>
-<p>We have also considered using abstract graphics for logo design. However, we noticed that many open-source projects that start with abstract logos, eventually introduce animal mascots to convey the friendliness of the community. These mascots not only play an important role in community outreach but also often replace the main logo in many contexts, becoming more representative visual symbols — such as Go’s gopher, Rust’s crab, and Airbyte’s octopus. Animal images are easier to get cl [...]
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image1-6acb85f09ad799d93582a37896aabf30.png" width="2768" height="1604" class="img_ev3q"></p>
-<p>Therefore, we made clear the direction in the early stage of Fluss Logo design: use an Animal image to convey our concept of <strong>fluidity</strong>, <strong>adaptability</strong>, and <strong>friendliness</strong>. The project name "Fluss" comes from the German word for "river" (Fluss), and we also hope that this animal has a close relationship with the river. Combined with these characteristics, the first animal that comes to our mind is the <strong>otter</strong>. The otter is an [...]
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image2-b9a57e1c35eb09c32fa4fcd07406ceeb.png" width="2310" height="1242" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="design-iterations-for-more-than-30-versions">Design iterations for more than 30 versions<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#design-iterations-for-more-than-30-versions" class="hash-link" aria-label="Direct link to Design iterations for more than 30 versions" title="Direct link to Design iterations for more than 30 versions" translate="no"></a></h2>
-<p>After clarifying the design direction and core values of Fluss Logo, we began to communicate with the design team in depth and launched multiple rounds of iteration. However, in the early versions of the design, we still couldn’t find the right feel — something was missing: the fluidity.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image3-37c9a30c044c5afbc6e35fa21c1793bc.png" width="1930" height="1014" class="img_ev3q"></p>
-<p>Therefore, we used ChatGPT to find inspiration, and tried a variety of prompt words, and this picture with a surfing wave quickly caught our eyes: dynamic, energy, speed, and flow, which is what we want! Although this otter looks like a Jerry rat... our design team quickly got our idea.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image4-c4082ae4730f49472a0414543ab5075a.png" width="298" height="294" class="img_ev3q"></p>
-<p>Based on the core elements of “otter” + “surfing”, we started a new round of design, and we iterated more than 20 versions based on this and finally evolved to the version you see today.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image5-7b6a1c8656ea141b803b8787e89d75df.png" width="2626" height="1204" class="img_ev3q"></p>
-<p>Subsequently, we also made many variations of the logo to adapt to different environments and background colors.</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image6-ec1c384b777aef0f617d3fcb08a5e39e.png" width="1900" height="1048" class="img_ev3q"></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="get-feedback-from-community-users">Get feedback from community users<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#get-feedback-from-community-users" class="hash-link" aria-label="Direct link to Get feedback from community users" title="Direct link to Get feedback from community users" translate="no"></a></h2>
-<p>Designing a logo is a highly subjective process. But for an open-source project, the goal isn't to please the founding team — it's to resonate with the community. That’s why we've always valued community feedback and used it to guide our iterations.</p>
-<p>Some of the community feedback I loved very much:</p>
-<ul>
-<li class="">"The Fluss otter seems to be a sibling to Flink's squirrel."</li>
-<li class="">"I see Paimon in it!"</li>
-<li class="">"It's soooo cute!"</li>
-</ul>
-<p>Give it some ❤️ via ⭐ on GitHub if you like it as well!
-<a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">https://github.com/apache/fluss</a></p>
-<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="community-egg">Community Egg<a href="https://fluss.apache.org/blog/unveil-fluss-logo/#community-egg" class="hash-link" aria-label="Direct link to Community Egg" title="Direct link to Community Egg" translate="no"></a></h2>
-<p>At the time of the Fluss logo release, we also submitted an <a href="https://lists.apache.org/thread/osg23opm9x95xm318160808r984k0wk9" target="_blank" rel="noopener noreferrer" class="">incubation proposal</a> to the Apache Software Foundation, thanks to the strong support from our incubation mentors Yu Li, tison, Jingsong Lee, Becket Qin, and Jean-Baptiste. We're confident that Fluss will soon become one of the Apache projects.</p>
-<p>In parallel, we’ve designed and launched a series of Fluss community gifts, including stickers, t-shirts, and coffee cups. These items will be available at upcoming community events — stay tuned and pick your swags!</p>
-<p><img decoding="async" loading="lazy" src="https://fluss.apache.org/assets/images/image7-246c5eae97745ed3ae9872e84a86b134.png" width="1130" height="633" class="img_ev3q"></p>]]></content:encoded>
- </item>
</channel>
</rss>
\ No newline at end of file
diff --git a/blog/tags/apache-fluss/index.html b/blog/tags/apache-fluss/index.html
index 2a673c4ac..9af5e9f82 100644
--- a/blog/tags/apache-fluss/index.html
+++ b/blog/tags/apache-fluss/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
diff --git a/blog/tags/apache-iceberg/index.html b/blog/tags/apache-iceberg/index.html
index 6cd1ca7e6..7bd9da2e9 100644
--- a/blog/tags/apache-iceberg/index.html
+++ b/blog/tags/apache-iceberg/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
diff --git a/blog/tags/arrow/index.html b/blog/tags/arrow/index.html
index b6c3ebfe2..959dae475 100644
--- a/blog/tags/arrow/index.html
+++ b/blog/tags/arrow/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/tags/column-pruning/index.html b/blog/tags/column-pruning/index.html
index 52de14c5d..111c86352 100644
--- a/blog/tags/column-pruning/index.html
+++ b/blog/tags/column-pruning/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/tags/fluss-cpp/index.html b/blog/tags/fluss-cpp/index.html
index 5077215c7..40ed4aa11 100644
--- a/blog/tags/fluss-cpp/index.html
+++ b/blog/tags/fluss-cpp/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>If you maintain a data system that only speaks Java, you will eventually hear from someone who doesn't. A Python team building a feature store. A C++ service that needs sub-millisecond writes. An AI agent that wants to call your system through a tool binding. They all need the same capabilities (writes, reads, lookups) and none of them want to spin up a JVM to get them.</p>
<p>Apache Fluss, streaming storage for real-time analytics and AI, hit this exact inflection point. The <a class="" href="/blog/fluss-java-client/">Java client</a> works well for Flink-based compute, where the JVM is already the world you live in. But outside that world, asking consumers to run a JVM sidecar just to write a record or look up a key creates friction that compounds across every service, every pipeline, every agent in the stack.</p>
<p>We could have written a separate client for each language. Maintain five copies of the wire protocol, five implementations of the batching logic, five sets of retry semantics and idempotence tracking. That path scales linearly with languages and ends predictably: the Java client gets features first, the Python client gets them six months later with slightly different edge-case behavior, and the C++ client is perpetually "almost done."</p>
diff --git a/blog/tags/fluss-rs/index.html b/blog/tags/fluss-rs/index.html
index afec4eb72..fe1009f5a 100644
--- a/blog/tags/fluss-rs/index.html
+++ b/blog/tags/fluss-rs/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>If you maintain a data system that only speaks Java, you will eventually hear from someone who doesn't. A Python team building a feature store. A C++ service that needs sub-millisecond writes. An AI agent that wants to call your system through a tool binding. They all need the same capabilities (writes, reads, lookups) and none of them want to spin up a JVM to get them.</p>
<p>Apache Fluss, streaming storage for real-time analytics and AI, hit this exact inflection point. The <a class="" href="/blog/fluss-java-client/">Java client</a> works well for Flink-based compute, where the JVM is already the world you live in. But outside that world, asking consumers to run a JVM sidecar just to write a record or look up a key creates friction that compounds across every service, every pipeline, every agent in the stack.</p>
<p>We could have written a separate client for each language. Maintain five copies of the wire protocol, five implementations of the batching logic, five sets of retry semantics and idempotence tracking. That path scales linearly with languages and ends predictably: the Java client gets features first, the Python client gets them six months later with slightly different edge-case behavior, and the C++ client is perpetually "almost done."</p>
diff --git a/blog/tags/fluss-rust/index.html b/blog/tags/fluss-rust/index.html
index 08f57bbc7..e8716a5bc 100644
--- a/blog/tags/fluss-rust/index.html
+++ b/blog/tags/fluss-rust/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>If you maintain a data system that only speaks Java, you will eventually hear from someone who doesn't. A Python team building a feature store. A C++ service that needs sub-millisecond writes. An AI agent that wants to call your system through a tool binding. They all need the same capabilities (writes, reads, lookups) and none of them want to spin up a JVM to get them.</p>
<p>Apache Fluss, streaming storage for real-time analytics and AI, hit this exact inflection point. The <a class="" href="/blog/fluss-java-client/">Java client</a> works well for Flink-based compute, where the JVM is already the world you live in. But outside that world, asking consumers to run a JVM sidecar just to write a record or look up a key creates friction that compounds across every service, every pipeline, every agent in the stack.</p>
<p>We could have written a separate client for each language. Maintain five copies of the wire protocol, five implementations of the batching logic, five sets of retry semantics and idempotence tracking. That path scales linearly with languages and ends predictably: the Java client gets features first, the Python client gets them six months later with slightly different edge-case behavior, and the C++ client is perpetually "almost done."</p>
diff --git a/blog/tags/fluss/index.html b/blog/tags/fluss/index.html
index fc1a4d783..dfc37196c 100644
--- a/blog/tags/fluss/index.html
+++ b/blog/tags/fluss/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/tags/index.html b/blog/tags/index.html
index 50d49d9b0..2f3effcbb 100644
--- a/blog/tags/index.html
+++ b/blog/tags/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Copyright © 2026 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.</p>
<p>Apache, the names of Apache projects, and the feather logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p></div></div></div></footer></div>
</body>
diff --git a/blog/tags/kafka/index.html b/blog/tags/kafka/index.html
index d8429c950..926867b05 100644
--- a/blog/tags/kafka/index.html
+++ b/blog/tags/kafka/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/tags/performance/index.html b/blog/tags/performance/index.html
index 4a1ba2cd7..63c7e49c2 100644
--- a/blog/tags/performance/index.html
+++ b/blog/tags/performance/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/tags/pyfluss/index.html b/blog/tags/pyfluss/index.html
index 18f100a31..af1e8715e 100644
--- a/blog/tags/pyfluss/index.html
+++ b/blog/tags/pyfluss/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>If you maintain a data system that only speaks Java, you will eventually hear from someone who doesn't. A Python team building a feature store. A C++ service that needs sub-millisecond writes. An AI agent that wants to call your system through a tool binding. They all need the same capabilities (writes, reads, lookups) and none of them want to spin up a JVM to get them.</p>
<p>Apache Fluss, streaming storage for real-time analytics and AI, hit this exact inflection point. The <a class="" href="/blog/fluss-java-client/">Java client</a> works well for Flink-based compute, where the JVM is already the world you live in. But outside that world, asking consumers to run a JVM sidecar just to write a record or look up a key creates friction that compounds across every service, every pipeline, every agent in the stack.</p>
<p>We could have written a separate client for each language. Maintain five copies of the wire protocol, five implementations of the batching logic, five sets of retry semantics and idempotence tracking. That path scales linearly with languages and ends predictably: the Java client gets features first, the Python client gets them six months later with slightly different edge-case behavior, and the C++ client is perpetually "almost done."</p>
diff --git a/blog/tags/real-time-analytics/index.html b/blog/tags/real-time-analytics/index.html
index f182c3e0a..3d4ec9040 100644
--- a/blog/tags/real-time-analytics/index.html
+++ b/blog/tags/real-time-analytics/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
diff --git a/blog/tags/releases/index.html b/blog/tags/releases/index.html
index b337c2755..bf0b230b8 100644
--- a/blog/tags/releases/index.html
+++ b/blog/tags/releases/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>We are excited to announce the release of <a href="https://github.com/apache/fluss-rust" target="_blank" rel="noopener noreferrer" class="">fluss-rust clients</a> 0.1.0, the first official release of the <a href="https://clients.fluss.apache.org/user-guide/rust/installation" target="_blank" rel="noopener noreferrer" class="">Rust</a>, <a href="https://clients.fluss.apache.org/user-guide/python/installation" target="_blank" rel="noopener noreferrer" class="">Python</a>, and <a href="ht [...]
<p>Under the hood, all three clients share a single Rust core that handles protocol negotiation, batching, retries, and <a href="https://arrow.apache.org/" target="_blank" rel="noopener noreferrer" class="">Apache Arrow</a>-based data exchange, with thin language-specific bindings on top. This was a deliberate community decision to deliver native performance and feature parity across every language from day one.</p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tag [...]
<p>🌊 We are excited to announce the official release of <strong>Apache Fluss (Incubating) 0.9</strong>!</p>
diff --git a/blog/tags/streaming-lakehouse/index.html b/blog/tags/streaming-lakehouse/index.html
index 6c5e06cd0..f6b231174 100644
--- a/blog/tags/streaming-lakehouse/index.html
+++ b/blog/tags/streaming-lakehouse/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Apache Fluss represents a new architectural approach: the <strong>Streamhouse</strong> for real-time lakehouses. Instead of stitching together separate streaming and batch systems, the Streamhouse unifies them under a single architecture. In this model, Apache Iceberg continues to serve exactly the role it was designed for: a highly efficient, scalable cold storage layer for analytics, while Fluss fills the missing piece: a hot streaming storage layer with sub-second latency, columnar [...]
<p>After working on Fluss–Iceberg lakehouse integration and deploying this architecture at a massive scale, including Alibaba's 3 PB production deployment processing 40 GB/s, we're ready to share the architectural lessons learned. Specifically, why existing systems fall short, how Fluss and Iceberg naturally complement each other, and what this means for finally building true real-time lakehouses.</p>
<p><img decoding="async" loading="lazy" alt="Banner" src="/assets/images/fluss-lakehouse-streaming_comp-62d4129ae29a5e1b5453892ae27cc212.png" width="768" height="336" class="img_ev3q"></p></div><footer class="row docusaurus-mt-lg"><div class="col col--9"><b>Tags:</b><ul class="tags_jXut padding--none margin-left--sm"><li class="tag_QGVx"><a rel="tag" class="tag_zVej tagRegular_sFm0" href="/blog/tags/streaming-lakehouse/">Streaming Lakehouse</a></li><li class="tag_QGVx"><a rel="tag" class [...]
diff --git a/blog/tags/streaming/index.html b/blog/tags/streaming/index.html
index 583629d03..7738fb98a 100644
--- a/blog/tags/streaming/index.html
+++ b/blog/tags/streaming/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><strong>TL;DR:</strong></p>
<blockquote>
<p>Apache Kafka's "column pruning" is actually pseudo-pruning. All fields still cross the network, and clients discard unwanted ones after the fact.
diff --git a/blog/taobao-instant-commerce-real-time-decision/index.html b/blog/taobao-instant-commerce-real-time-decision/index.html
index 1034c69e2..7cb095cc9 100644
--- a/blog/taobao-instant-commerce-real-time-decision/index.html
+++ b/blog/taobao-instant-commerce-real-time-decision/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Every autumn in China, social media floods with posts about "The First Cup of Milk Tea in Autumn." With a tap on their phone, consumers expect their order delivered within 30 minutes. That effortless experience is no accident: it is the result of Taobao Instant Commerce making thousands of data-driven decisions every second.</p>
<p>Taobao Instant Commerce has scaled from a single-category food delivery service into a high-frequency platform spanning fresh produce, consumer electronics (3C), and beauty products. It operates under two very different modes: steady high-frequency daily transactions, and explosive traffic surges during promotional events where order volumes can multiply within minutes. Both demand the same thing: real-time responsiveness across hundreds of millions of SKUs.</p>
<p><strong>Real-time</strong> is not a nice-to-have here; it is the lifeline for three critical functions:</p>
diff --git a/blog/taobao-practice/index.html b/blog/taobao-practice/index.html
index e38485778..b723a58f3 100644
--- a/blog/taobao-practice/index.html
+++ b/blog/taobao-practice/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="introduction">Introduction<a href="#introduction" class="hash-link" aria-label="Direct link to Introduction" title="Direct link to Introduction" translate="no"></a></h3>
<p>The Data Development Team of Taobao has built a new <strong>generation of real-time data warehouse</strong> based on Apache Fluss.
Fluss solves the problems of redundant data transfer, difficulties in data profiling, and challenges in large scale stateful workload operations and maintenance.
diff --git a/blog/tiering-service/index.html b/blog/tiering-service/index.html
index 4d4d845a3..8af9e993f 100644
--- a/blog/tiering-service/index.html
+++ b/blog/tiering-service/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p><img decoding="async" loading="lazy" src="/assets/images/background-8a1ebc79c438a3deabba060edf8eaa0b.png" width="2036" height="924" class="img_ev3q"></p>
<p>At the core of Fluss’s Lakehouse architecture sits the <strong>Tiering Service:</strong> a smart,
policy-driven data pipeline that seamlessly bridges your real-time Fluss cluster and your cost-efficient lakehouse storage. It continuously ingests fresh events from the fluss cluster, automatically migrating older or less-frequently accessed data into colder storage tiers without interrupting ongoing queries. By balancing hot, warm, and cold storage according to configurable rules, the Tiering Service ensures that recent data remains instantly queryable while historical records are arch [...]
diff --git a/blog/unified-streaming-lakehouse/index.html b/blog/unified-streaming-lakehouse/index.html
index 90252da95..d6d695edc 100644
--- a/blog/unified-streaming-lakehouse/index.html
+++ b/blog/unified-streaming-lakehouse/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>Fluss is designed to address the demands of real-time analytics with the following key capabilities:</p>
<ul>
<li class=""><strong>Real-Time Stream Reading and Writing:</strong> Supports millisecond-level end-to-end latency.</li>
diff --git a/blog/unveil-fluss-logo/index.html b/blog/unveil-fluss-logo/index.html
index 19747b6ab..4e6749846 100644
--- a/blog/unveil-fluss-logo/index.html
+++ b/blog/unveil-fluss-logo/index.html
@@ -24,18 +24,18 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="introducing-the-little-otter">Introducing the Little Otter<a href="#introducing-the-little-otter" class="hash-link" aria-label="Direct link to Introducing the Little Otter" title="Direct link to Introducing the Little Otter" translate="no"></a></h2>
<p>Today is <a href="https://www.otter.org/world-otter-day" target="_blank" rel="noopener noreferrer" class="">World Otter Day</a>, and we are thrilled to introduce the little otter to the Fluss community! 🎉</p>
<p>Since open-sourced half a year ago, many community members and friends have asked us:
-"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p>
+"When will Fluss get a logo?" After more than a month of careful design work and over 30 iterations, we’re excited to finally unveil the official Fluss logo — a surfing otter! 🦦🌊</p>
<p>I don't want to interpret the symbolic meaning behind the Logo in a rigid way. Instead, I’d like to share the story behind its design — how we defined the direction and iterated step by step toward the final version. This process involved numerous subjective decisions made by the team. You might prefer one of the discarded versions, or disagree with some of the design choices. However, we want to share the journey with our community, and we hope it can also serve as a reference o [...]
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="logo-symbolism-what-do-we-want-to-convey">Logo symbolism: what do we want to convey?<a href="#logo-symbolism-what-do-we-want-to-convey" class="hash-link" aria-label="Direct link to Logo symbolism: what do we want to convey?" title="Direct link to Logo symbolism: what do we want to convey?" translate="no"></a></h2>
<p><a href="https://github.com/apache/fluss" target="_blank" rel="noopener noreferrer" class="">Fluss</a> is an open-source streaming storage system designed for analytical workloads, with the goal of serving as a real-time data layer for Lakehouse architectures. Therefore, <em><strong>fluidity</strong></em> is the first key message we want to convey.</p>
diff --git a/blog/why-fluss-chose-rust-for-multi-language-sdk/index.html b/blog/why-fluss-chose-rust-for-multi-language-sdk/index.html
index 1f1fa2afd..5f2cbe8fa 100644
--- a/blog/why-fluss-chose-rust-for-multi-language-sdk/index.html
+++ b/blog/why-fluss-chose-rust-for-multi-language-sdk/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
<p>If you maintain a data system that only speaks Java, you will eventually hear from someone who doesn't. A Python team building a feature store. A C++ service that needs sub-millisecond writes. An AI agent that wants to call your system through a tool binding. They all need the same capabilities (writes, reads, lookups) and none of them want to spin up a JVM to get them.</p>
<p>Apache Fluss, streaming storage for real-time analytics and AI, hit this exact inflection point. The <a class="" href="/blog/fluss-java-client/">Java client</a> works well for Flink-based compute, where the JVM is already the world you live in. But outside that world, asking consumers to run a JVM sidecar just to write a record or look up a key creates friction that compounds across every service, every pipeline, every agent in the stack.</p>
<p>We could have written a separate client for each language. Maintain five copies of the wire protocol, five implementations of the batching logic, five sets of retry semantics and idempotence tracking. That path scales linearly with languages and ends predictably: the Java client gets features first, the Python client gets them six months later with slightly different edge-case behavior, and the C++ client is perpetually "almost done."</p>
diff --git a/blog/why-fluss/index.html b/blog/why-fluss/index.html
index a2b6b6a6d..d524c66cd 100644
--- a/blog/why-fluss/index.html
+++ b/blog/why-fluss/index.html
@@ -24,14 +24,14 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
-<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
+<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||"light"),document.documentElement.setAttribute("data-theme-choice",t||"light")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docu [...]
This transition is revolutionizing various sectors, including the E-commerce, automotive networking, finance, and beyond,
where real-time data applications are becoming integral to operations. This evolution enables organizations to unlock greater
value by leveraging real-time insights to drive business impact and enhance decision-making.</p>
diff --git a/community/become-a-committer/index.html b/community/become-a-committer/index.html
index d9fa59795..973a5a786 100644
--- a/community/become-a-committer/index.html
+++ b/community/become-a-committer/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/dev/building/index.html b/community/dev/building/index.html
index 8ed70f5c5..8c0c75de7 100644
--- a/community/dev/building/index.html
+++ b/community/dev/building/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/dev/ide-setup/index.html b/community/dev/ide-setup/index.html
index 523bfb0dd..2d7a4eb2d 100644
--- a/community/dev/ide-setup/index.html
+++ b/community/dev/ide-setup/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/fluss-logos/index.html b/community/fluss-logos/index.html
index fd691a91c..56790a54d 100644
--- a/community/fluss-logos/index.html
+++ b/community/fluss-logos/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/fluss-team/index.html b/community/fluss-team/index.html
index ef9418572..60ce92233 100644
--- a/community/fluss-team/index.html
+++ b/community/fluss-team/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/bug-reports-feature-requests/index.html b/community/how-to-contribute/bug-reports-feature-requests/index.html
index 094799825..986b43f5b 100644
--- a/community/how-to-contribute/bug-reports-feature-requests/index.html
+++ b/community/how-to-contribute/bug-reports-feature-requests/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/contribute-blog-posts/index.html b/community/how-to-contribute/contribute-blog-posts/index.html
index 76d6ef4ac..43c8ad6ff 100644
--- a/community/how-to-contribute/contribute-blog-posts/index.html
+++ b/community/how-to-contribute/contribute-blog-posts/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/contribute-code/index.html b/community/how-to-contribute/contribute-code/index.html
index d6b8657b1..efc2a0aaf 100644
--- a/community/how-to-contribute/contribute-code/index.html
+++ b/community/how-to-contribute/contribute-code/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/contribute-docs/index.html b/community/how-to-contribute/contribute-docs/index.html
index f97fa4df5..9e83b7e0a 100644
--- a/community/how-to-contribute/contribute-docs/index.html
+++ b/community/how-to-contribute/contribute-docs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/hosting-community-calls/index.html b/community/how-to-contribute/hosting-community-calls/index.html
index 10c42c845..8b199980b 100644
--- a/community/how-to-contribute/hosting-community-calls/index.html
+++ b/community/how-to-contribute/hosting-community-calls/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/overview/index.html b/community/how-to-contribute/overview/index.html
index 0805a0129..5c2aad4eb 100644
--- a/community/how-to-contribute/overview/index.html
+++ b/community/how-to-contribute/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-contribute/review-pull-requests/index.html b/community/how-to-contribute/review-pull-requests/index.html
index 3ef68fc48..56fa567ea 100644
--- a/community/how-to-contribute/review-pull-requests/index.html
+++ b/community/how-to-contribute/review-pull-requests/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-release/creating-a-fluss-release/index.html b/community/how-to-release/creating-a-fluss-release/index.html
index e5aed2be0..9c485cbf8 100644
--- a/community/how-to-release/creating-a-fluss-release/index.html
+++ b/community/how-to-release/creating-a-fluss-release/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-release/creating-a-fluss-shaded-release/index.html b/community/how-to-release/creating-a-fluss-shaded-release/index.html
index f3891b85b..43d762542 100644
--- a/community/how-to-release/creating-a-fluss-shaded-release/index.html
+++ b/community/how-to-release/creating-a-fluss-shaded-release/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-release/release-manager-preparation/index.html b/community/how-to-release/release-manager-preparation/index.html
index 8703ffc35..7ecb53abc 100644
--- a/community/how-to-release/release-manager-preparation/index.html
+++ b/community/how-to-release/release-manager-preparation/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-release/verifying-a-fluss-release/index.html b/community/how-to-release/verifying-a-fluss-release/index.html
index 423eba71b..a46b59c5f 100644
--- a/community/how-to-release/verifying-a-fluss-release/index.html
+++ b/community/how-to-release/verifying-a-fluss-release/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/how-to-release/verifying-a-fluss-shaded-release/index.html b/community/how-to-release/verifying-a-fluss-shaded-release/index.html
index acd0b99d7..90000a854 100644
--- a/community/how-to-release/verifying-a-fluss-shaded-release/index.html
+++ b/community/how-to-release/verifying-a-fluss-shaded-release/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/security/index.html b/community/security/index.html
index a96380a6f..de63c943d 100644
--- a/community/security/index.html
+++ b/community/security/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/community/welcome/index.html b/community/welcome/index.html
index 9f2a29818..476110662 100644
--- a/community/welcome/index.html
+++ b/community/welcome/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/compare/kafka/index.html b/compare/kafka/index.html
index 91bbe36c1..efd11dc11 100644
--- a/compare/kafka/index.html
+++ b/compare/kafka/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/concepts/architecture/index.html b/docs/0.5/concepts/architecture/index.html
index af2ec32a4..3ca70ebf1 100644
--- a/docs/0.5/concepts/architecture/index.html
+++ b/docs/0.5/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/dev/building/index.html b/docs/0.5/dev/building/index.html
index 5e0b96db7..f3fcc08e3 100644
--- a/docs/0.5/dev/building/index.html
+++ b/docs/0.5/dev/building/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/dev/ide-setup/index.html b/docs/0.5/dev/ide-setup/index.html
index ba6406f01..7515bfbf8 100644
--- a/docs/0.5/dev/ide-setup/index.html
+++ b/docs/0.5/dev/ide-setup/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/engine-flink/ddl/index.html b/docs/0.5/engine-flink/ddl/index.html
index bbacd98ec..ff632097f 100644
--- a/docs/0.5/engine-flink/ddl/index.html
+++ b/docs/0.5/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/engine-flink/getting-started/index.html b/docs/0.5/engine-flink/getting-started/index.html
index 4d543ec97..4931b578b 100644
--- a/docs/0.5/engine-flink/getting-started/index.html
+++ b/docs/0.5/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/engine-flink/lookups/index.html b/docs/0.5/engine-flink/lookups/index.html
index 4480fc2ae..9d6a97a56 100644
--- a/docs/0.5/engine-flink/lookups/index.html
+++ b/docs/0.5/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/engine-flink/reads/index.html b/docs/0.5/engine-flink/reads/index.html
index 89e9b9597..a129d84dd 100644
--- a/docs/0.5/engine-flink/reads/index.html
+++ b/docs/0.5/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/engine-flink/writes/index.html b/docs/0.5/engine-flink/writes/index.html
index 1d5e77166..847dcb00a 100644
--- a/docs/0.5/engine-flink/writes/index.html
+++ b/docs/0.5/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/index.html b/docs/0.5/index.html
index 2621fd562..970b67157 100644
--- a/docs/0.5/index.html
+++ b/docs/0.5/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/install-deploy/deploying-distributed-cluster/index.html b/docs/0.5/install-deploy/deploying-distributed-cluster/index.html
index 5ab18042a..54a61bc43 100644
--- a/docs/0.5/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/0.5/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/install-deploy/deploying-local-cluster/index.html b/docs/0.5/install-deploy/deploying-local-cluster/index.html
index 2c4e2bd66..18ea38ed9 100644
--- a/docs/0.5/install-deploy/deploying-local-cluster/index.html
+++ b/docs/0.5/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/install-deploy/deploying-with-docker/index.html b/docs/0.5/install-deploy/deploying-with-docker/index.html
index e8a3465f8..fb1336fa6 100644
--- a/docs/0.5/install-deploy/deploying-with-docker/index.html
+++ b/docs/0.5/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/install-deploy/overview/index.html b/docs/0.5/install-deploy/overview/index.html
index 16b7fe5d3..7d389b29e 100644
--- a/docs/0.5/install-deploy/overview/index.html
+++ b/docs/0.5/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/configuration/index.html b/docs/0.5/maintenance/configuration/index.html
index 1e22e9240..348696f48 100644
--- a/docs/0.5/maintenance/configuration/index.html
+++ b/docs/0.5/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/filesystems/hdfs/index.html b/docs/0.5/maintenance/filesystems/hdfs/index.html
index 2c5cd3d1e..6df477be9 100644
--- a/docs/0.5/maintenance/filesystems/hdfs/index.html
+++ b/docs/0.5/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/filesystems/oss/index.html b/docs/0.5/maintenance/filesystems/oss/index.html
index 0492e476c..b8ba5762e 100644
--- a/docs/0.5/maintenance/filesystems/oss/index.html
+++ b/docs/0.5/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/filesystems/overview/index.html b/docs/0.5/maintenance/filesystems/overview/index.html
index 948e3d41b..1e5c0eb08 100644
--- a/docs/0.5/maintenance/filesystems/overview/index.html
+++ b/docs/0.5/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/filesystems/s3/index.html b/docs/0.5/maintenance/filesystems/s3/index.html
index 1289d7641..28eb9a8ea 100644
--- a/docs/0.5/maintenance/filesystems/s3/index.html
+++ b/docs/0.5/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/logging/index.html b/docs/0.5/maintenance/logging/index.html
index 0cf026f7d..c04e4590c 100644
--- a/docs/0.5/maintenance/logging/index.html
+++ b/docs/0.5/maintenance/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/metric-reporters/index.html b/docs/0.5/maintenance/metric-reporters/index.html
index 74d30bb3c..e2c7c82c4 100644
--- a/docs/0.5/maintenance/metric-reporters/index.html
+++ b/docs/0.5/maintenance/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/monitor-metrics/index.html b/docs/0.5/maintenance/monitor-metrics/index.html
index bbc8e90c3..98170ce2c 100644
--- a/docs/0.5/maintenance/monitor-metrics/index.html
+++ b/docs/0.5/maintenance/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/0.5/maintenance/tiered-storage/lakehouse-storage/index.html
index 730ba71fa..96aa0dbed 100644
--- a/docs/0.5/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/0.5/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/tiered-storage/overview/index.html b/docs/0.5/maintenance/tiered-storage/overview/index.html
index 9f1a8adb3..a56a18afc 100644
--- a/docs/0.5/maintenance/tiered-storage/overview/index.html
+++ b/docs/0.5/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/maintenance/tiered-storage/remote-storage/index.html b/docs/0.5/maintenance/tiered-storage/remote-storage/index.html
index 912a7dbae..d7f8714cf 100644
--- a/docs/0.5/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/0.5/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/quickstart/flink/index.html b/docs/0.5/quickstart/flink/index.html
index c34924cd8..aff81219e 100644
--- a/docs/0.5/quickstart/flink/index.html
+++ b/docs/0.5/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/streaming-lakehouse/integrate-data-lakes/paimon/index.html b/docs/0.5/streaming-lakehouse/integrate-data-lakes/paimon/index.html
index 14bb0500a..3af587aff 100644
--- a/docs/0.5/streaming-lakehouse/integrate-data-lakes/paimon/index.html
+++ b/docs/0.5/streaming-lakehouse/integrate-data-lakes/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/streaming-lakehouse/overview/index.html b/docs/0.5/streaming-lakehouse/overview/index.html
index 37ca63b1b..d69088468 100644
--- a/docs/0.5/streaming-lakehouse/overview/index.html
+++ b/docs/0.5/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/data-distribution/bucketing/index.html b/docs/0.5/table-design/data-distribution/bucketing/index.html
index 82c0ecc14..f15359976 100644
--- a/docs/0.5/table-design/data-distribution/bucketing/index.html
+++ b/docs/0.5/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/data-distribution/partitioning/index.html b/docs/0.5/table-design/data-distribution/partitioning/index.html
index c9e25f78c..f4f0dc6f7 100644
--- a/docs/0.5/table-design/data-distribution/partitioning/index.html
+++ b/docs/0.5/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/data-distribution/ttl/index.html b/docs/0.5/table-design/data-distribution/ttl/index.html
index 745db35ef..2533e8aa5 100644
--- a/docs/0.5/table-design/data-distribution/ttl/index.html
+++ b/docs/0.5/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/data-types/index.html b/docs/0.5/table-design/data-types/index.html
index 60fdae5a2..f84f67d82 100644
--- a/docs/0.5/table-design/data-types/index.html
+++ b/docs/0.5/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/overview/index.html b/docs/0.5/table-design/overview/index.html
index b704c2869..cfd462c91 100644
--- a/docs/0.5/table-design/overview/index.html
+++ b/docs/0.5/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/table-types/log-table/index.html b/docs/0.5/table-design/table-types/log-table/index.html
index 4e581fe67..e9f79c7f7 100644
--- a/docs/0.5/table-design/table-types/log-table/index.html
+++ b/docs/0.5/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.5/table-design/table-types/pk-table/index.html b/docs/0.5/table-design/table-types/pk-table/index.html
index 45e52a3ff..2a34bea4d 100644
--- a/docs/0.5/table-design/table-types/pk-table/index.html
+++ b/docs/0.5/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/concepts/architecture/index.html b/docs/0.6/concepts/architecture/index.html
index 8ebafc149..2f34857b9 100644
--- a/docs/0.6/concepts/architecture/index.html
+++ b/docs/0.6/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/ddl/index.html b/docs/0.6/engine-flink/ddl/index.html
index 2d3c51da8..868f9e66e 100644
--- a/docs/0.6/engine-flink/ddl/index.html
+++ b/docs/0.6/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/getting-started/index.html b/docs/0.6/engine-flink/getting-started/index.html
index 6b61d0078..b606f783d 100644
--- a/docs/0.6/engine-flink/getting-started/index.html
+++ b/docs/0.6/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/lookups/index.html b/docs/0.6/engine-flink/lookups/index.html
index 213b4acea..49842777a 100644
--- a/docs/0.6/engine-flink/lookups/index.html
+++ b/docs/0.6/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/options/index.html b/docs/0.6/engine-flink/options/index.html
index 6dfbb37da..eb18cc83f 100644
--- a/docs/0.6/engine-flink/options/index.html
+++ b/docs/0.6/engine-flink/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/reads/index.html b/docs/0.6/engine-flink/reads/index.html
index 23ead9229..b8cf0bacb 100644
--- a/docs/0.6/engine-flink/reads/index.html
+++ b/docs/0.6/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/engine-flink/writes/index.html b/docs/0.6/engine-flink/writes/index.html
index 1f960ddeb..eaa6ed383 100644
--- a/docs/0.6/engine-flink/writes/index.html
+++ b/docs/0.6/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/index.html b/docs/0.6/index.html
index 559a8c3e3..f3a98cb72 100644
--- a/docs/0.6/index.html
+++ b/docs/0.6/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/install-deploy/deploying-distributed-cluster/index.html b/docs/0.6/install-deploy/deploying-distributed-cluster/index.html
index 34babdb11..665d3337f 100644
--- a/docs/0.6/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/0.6/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/install-deploy/deploying-local-cluster/index.html b/docs/0.6/install-deploy/deploying-local-cluster/index.html
index ebc6f04ce..492ba3c7d 100644
--- a/docs/0.6/install-deploy/deploying-local-cluster/index.html
+++ b/docs/0.6/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/install-deploy/deploying-with-docker/index.html b/docs/0.6/install-deploy/deploying-with-docker/index.html
index b6233476f..8341eb4a8 100644
--- a/docs/0.6/install-deploy/deploying-with-docker/index.html
+++ b/docs/0.6/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/install-deploy/overview/index.html b/docs/0.6/install-deploy/overview/index.html
index 64f1e1766..c768ecada 100644
--- a/docs/0.6/install-deploy/overview/index.html
+++ b/docs/0.6/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/configuration/index.html b/docs/0.6/maintenance/configuration/index.html
index ab18a43cb..fe915f603 100644
--- a/docs/0.6/maintenance/configuration/index.html
+++ b/docs/0.6/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/filesystems/hdfs/index.html b/docs/0.6/maintenance/filesystems/hdfs/index.html
index b2ef75615..ee345979d 100644
--- a/docs/0.6/maintenance/filesystems/hdfs/index.html
+++ b/docs/0.6/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/filesystems/oss/index.html b/docs/0.6/maintenance/filesystems/oss/index.html
index 7bd194cca..b7c19886a 100644
--- a/docs/0.6/maintenance/filesystems/oss/index.html
+++ b/docs/0.6/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/filesystems/overview/index.html b/docs/0.6/maintenance/filesystems/overview/index.html
index ea3ddd978..c8195b582 100644
--- a/docs/0.6/maintenance/filesystems/overview/index.html
+++ b/docs/0.6/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/filesystems/s3/index.html b/docs/0.6/maintenance/filesystems/s3/index.html
index e19d0018d..40bfaf49d 100644
--- a/docs/0.6/maintenance/filesystems/s3/index.html
+++ b/docs/0.6/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/observability/logging/index.html b/docs/0.6/maintenance/observability/logging/index.html
index cd1842a89..0dc0d6b17 100644
--- a/docs/0.6/maintenance/observability/logging/index.html
+++ b/docs/0.6/maintenance/observability/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/observability/metric-reporters/index.html b/docs/0.6/maintenance/observability/metric-reporters/index.html
index 380331906..7c51eb68f 100644
--- a/docs/0.6/maintenance/observability/metric-reporters/index.html
+++ b/docs/0.6/maintenance/observability/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/observability/monitor-metrics/index.html b/docs/0.6/maintenance/observability/monitor-metrics/index.html
index 645418d30..3c0445057 100644
--- a/docs/0.6/maintenance/observability/monitor-metrics/index.html
+++ b/docs/0.6/maintenance/observability/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/observability/quickstart/index.html b/docs/0.6/maintenance/observability/quickstart/index.html
index 5d1e7ef74..41d2b6c77 100644
--- a/docs/0.6/maintenance/observability/quickstart/index.html
+++ b/docs/0.6/maintenance/observability/quickstart/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/0.6/maintenance/tiered-storage/lakehouse-storage/index.html
index 7b2ae8a69..c7b80b624 100644
--- a/docs/0.6/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/0.6/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/tiered-storage/overview/index.html b/docs/0.6/maintenance/tiered-storage/overview/index.html
index ef4b030cc..eba3407d1 100644
--- a/docs/0.6/maintenance/tiered-storage/overview/index.html
+++ b/docs/0.6/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/maintenance/tiered-storage/remote-storage/index.html b/docs/0.6/maintenance/tiered-storage/remote-storage/index.html
index 66b23b789..8d764854b 100644
--- a/docs/0.6/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/0.6/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/quickstart/flink/index.html b/docs/0.6/quickstart/flink/index.html
index a5fb2c7f0..acc573e47 100644
--- a/docs/0.6/quickstart/flink/index.html
+++ b/docs/0.6/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/streaming-lakehouse/integrate-data-lakes/paimon/index.html b/docs/0.6/streaming-lakehouse/integrate-data-lakes/paimon/index.html
index c167effcb..3b9b740c4 100644
--- a/docs/0.6/streaming-lakehouse/integrate-data-lakes/paimon/index.html
+++ b/docs/0.6/streaming-lakehouse/integrate-data-lakes/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/streaming-lakehouse/overview/index.html b/docs/0.6/streaming-lakehouse/overview/index.html
index d5df19e4b..99cd330b7 100644
--- a/docs/0.6/streaming-lakehouse/overview/index.html
+++ b/docs/0.6/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/data-distribution/bucketing/index.html b/docs/0.6/table-design/data-distribution/bucketing/index.html
index 3b90b1ccc..d1cfd9234 100644
--- a/docs/0.6/table-design/data-distribution/bucketing/index.html
+++ b/docs/0.6/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/data-distribution/partitioning/index.html b/docs/0.6/table-design/data-distribution/partitioning/index.html
index b3db5f202..0c7b9bbee 100644
--- a/docs/0.6/table-design/data-distribution/partitioning/index.html
+++ b/docs/0.6/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/data-distribution/ttl/index.html b/docs/0.6/table-design/data-distribution/ttl/index.html
index c507e1e04..1401c8cf4 100644
--- a/docs/0.6/table-design/data-distribution/ttl/index.html
+++ b/docs/0.6/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/data-types/index.html b/docs/0.6/table-design/data-types/index.html
index d3fff271b..c088e5331 100644
--- a/docs/0.6/table-design/data-types/index.html
+++ b/docs/0.6/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/overview/index.html b/docs/0.6/table-design/overview/index.html
index e09111328..62ab8e377 100644
--- a/docs/0.6/table-design/overview/index.html
+++ b/docs/0.6/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/table-types/log-table/index.html b/docs/0.6/table-design/table-types/log-table/index.html
index 9fe77f74a..00c84043c 100644
--- a/docs/0.6/table-design/table-types/log-table/index.html
+++ b/docs/0.6/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/table-types/pk-table/index.html b/docs/0.6/table-design/table-types/pk-table/index.html
index 95b9dfbbd..b14b54790 100644
--- a/docs/0.6/table-design/table-types/pk-table/index.html
+++ b/docs/0.6/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/table-types/pk-table/merge-engines/first-row/index.html b/docs/0.6/table-design/table-types/pk-table/merge-engines/first-row/index.html
index 56a1d5842..ed993c4c7 100644
--- a/docs/0.6/table-design/table-types/pk-table/merge-engines/first-row/index.html
+++ b/docs/0.6/table-design/table-types/pk-table/merge-engines/first-row/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/table-types/pk-table/merge-engines/index.html b/docs/0.6/table-design/table-types/pk-table/merge-engines/index.html
index 8e985de7a..9beb14898 100644
--- a/docs/0.6/table-design/table-types/pk-table/merge-engines/index.html
+++ b/docs/0.6/table-design/table-types/pk-table/merge-engines/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.6/table-design/table-types/pk-table/merge-engines/versioned/index.html b/docs/0.6/table-design/table-types/pk-table/merge-engines/versioned/index.html
index 9aedf56be..1c94ed486 100644
--- a/docs/0.6/table-design/table-types/pk-table/merge-engines/versioned/index.html
+++ b/docs/0.6/table-design/table-types/pk-table/merge-engines/versioned/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/apis/java-client/index.html b/docs/0.7/apis/java-client/index.html
index 40b346a70..9020ebf26 100644
--- a/docs/0.7/apis/java-client/index.html
+++ b/docs/0.7/apis/java-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/concepts/architecture/index.html b/docs/0.7/concepts/architecture/index.html
index 4999f2d1d..5c96c11d4 100644
--- a/docs/0.7/concepts/architecture/index.html
+++ b/docs/0.7/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/datastream/index.html b/docs/0.7/engine-flink/datastream/index.html
index 070127ca3..3b4a948ef 100644
--- a/docs/0.7/engine-flink/datastream/index.html
+++ b/docs/0.7/engine-flink/datastream/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/ddl/index.html b/docs/0.7/engine-flink/ddl/index.html
index 288cbd9ee..8a3e9e248 100644
--- a/docs/0.7/engine-flink/ddl/index.html
+++ b/docs/0.7/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/getting-started/index.html b/docs/0.7/engine-flink/getting-started/index.html
index 0fd08e8ab..bffe83da3 100644
--- a/docs/0.7/engine-flink/getting-started/index.html
+++ b/docs/0.7/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/lookups/index.html b/docs/0.7/engine-flink/lookups/index.html
index ba888d98f..b752bcf62 100644
--- a/docs/0.7/engine-flink/lookups/index.html
+++ b/docs/0.7/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/options/index.html b/docs/0.7/engine-flink/options/index.html
index b76b99ca0..18743028f 100644
--- a/docs/0.7/engine-flink/options/index.html
+++ b/docs/0.7/engine-flink/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/reads/index.html b/docs/0.7/engine-flink/reads/index.html
index 603847656..6f93e1a01 100644
--- a/docs/0.7/engine-flink/reads/index.html
+++ b/docs/0.7/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/engine-flink/writes/index.html b/docs/0.7/engine-flink/writes/index.html
index 5ede5a275..936818f12 100644
--- a/docs/0.7/engine-flink/writes/index.html
+++ b/docs/0.7/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/index.html b/docs/0.7/index.html
index 7d26ab0bb..293f1efcc 100644
--- a/docs/0.7/index.html
+++ b/docs/0.7/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/install-deploy/deploying-distributed-cluster/index.html b/docs/0.7/install-deploy/deploying-distributed-cluster/index.html
index 205239ec7..f71d97466 100644
--- a/docs/0.7/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/0.7/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/install-deploy/deploying-local-cluster/index.html b/docs/0.7/install-deploy/deploying-local-cluster/index.html
index 119f9bf50..fd359aa33 100644
--- a/docs/0.7/install-deploy/deploying-local-cluster/index.html
+++ b/docs/0.7/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/install-deploy/deploying-with-docker/index.html b/docs/0.7/install-deploy/deploying-with-docker/index.html
index 52001c42f..cacc001e2 100644
--- a/docs/0.7/install-deploy/deploying-with-docker/index.html
+++ b/docs/0.7/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/install-deploy/overview/index.html b/docs/0.7/install-deploy/overview/index.html
index 3e1bca1d6..cdd14d87c 100644
--- a/docs/0.7/install-deploy/overview/index.html
+++ b/docs/0.7/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/configuration/index.html b/docs/0.7/maintenance/configuration/index.html
index 6d3f7d076..3014978ca 100644
--- a/docs/0.7/maintenance/configuration/index.html
+++ b/docs/0.7/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/filesystems/hdfs/index.html b/docs/0.7/maintenance/filesystems/hdfs/index.html
index 48471df02..3a9197a64 100644
--- a/docs/0.7/maintenance/filesystems/hdfs/index.html
+++ b/docs/0.7/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/filesystems/oss/index.html b/docs/0.7/maintenance/filesystems/oss/index.html
index 85cc13f6f..04430169b 100644
--- a/docs/0.7/maintenance/filesystems/oss/index.html
+++ b/docs/0.7/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/filesystems/overview/index.html b/docs/0.7/maintenance/filesystems/overview/index.html
index c1018ac91..193d388cd 100644
--- a/docs/0.7/maintenance/filesystems/overview/index.html
+++ b/docs/0.7/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/filesystems/s3/index.html b/docs/0.7/maintenance/filesystems/s3/index.html
index e5820d212..5b3b0761c 100644
--- a/docs/0.7/maintenance/filesystems/s3/index.html
+++ b/docs/0.7/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/observability/logging/index.html b/docs/0.7/maintenance/observability/logging/index.html
index 4c1139272..dee248903 100644
--- a/docs/0.7/maintenance/observability/logging/index.html
+++ b/docs/0.7/maintenance/observability/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/observability/metric-reporters/index.html b/docs/0.7/maintenance/observability/metric-reporters/index.html
index 4b3c4651a..c1aeab5f4 100644
--- a/docs/0.7/maintenance/observability/metric-reporters/index.html
+++ b/docs/0.7/maintenance/observability/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/observability/monitor-metrics/index.html b/docs/0.7/maintenance/observability/monitor-metrics/index.html
index 481cd7169..c1151b164 100644
--- a/docs/0.7/maintenance/observability/monitor-metrics/index.html
+++ b/docs/0.7/maintenance/observability/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/observability/quickstart/index.html b/docs/0.7/maintenance/observability/quickstart/index.html
index e39199fbe..05162b93b 100644
--- a/docs/0.7/maintenance/observability/quickstart/index.html
+++ b/docs/0.7/maintenance/observability/quickstart/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/operations/racks/index.html b/docs/0.7/maintenance/operations/racks/index.html
index a2a733573..7a4f2858b 100644
--- a/docs/0.7/maintenance/operations/racks/index.html
+++ b/docs/0.7/maintenance/operations/racks/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/operations/upgrading/index.html b/docs/0.7/maintenance/operations/upgrading/index.html
index ded3e58dd..0402fe738 100644
--- a/docs/0.7/maintenance/operations/upgrading/index.html
+++ b/docs/0.7/maintenance/operations/upgrading/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/0.7/maintenance/tiered-storage/lakehouse-storage/index.html
index 418747ae7..b5fb97fce 100644
--- a/docs/0.7/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/0.7/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/tiered-storage/overview/index.html b/docs/0.7/maintenance/tiered-storage/overview/index.html
index 05d37b284..f2064b4ab 100644
--- a/docs/0.7/maintenance/tiered-storage/overview/index.html
+++ b/docs/0.7/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/maintenance/tiered-storage/remote-storage/index.html b/docs/0.7/maintenance/tiered-storage/remote-storage/index.html
index 953f7c066..7b32ecc01 100644
--- a/docs/0.7/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/0.7/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/quickstart/flink/index.html b/docs/0.7/quickstart/flink/index.html
index 73739a928..4f87bab7c 100644
--- a/docs/0.7/quickstart/flink/index.html
+++ b/docs/0.7/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/quickstart/security/index.html b/docs/0.7/quickstart/security/index.html
index fe9d13b0d..745b9c3b8 100644
--- a/docs/0.7/quickstart/security/index.html
+++ b/docs/0.7/quickstart/security/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/security/authentication/index.html b/docs/0.7/security/authentication/index.html
index f4575b327..d12dc6729 100644
--- a/docs/0.7/security/authentication/index.html
+++ b/docs/0.7/security/authentication/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/security/authorization/index.html b/docs/0.7/security/authorization/index.html
index 4bc99eaaf..d0b66df5a 100644
--- a/docs/0.7/security/authorization/index.html
+++ b/docs/0.7/security/authorization/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/security/overview/index.html b/docs/0.7/security/overview/index.html
index 9363dae25..9655cf60f 100644
--- a/docs/0.7/security/overview/index.html
+++ b/docs/0.7/security/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/streaming-lakehouse/integrate-data-lakes/paimon/index.html b/docs/0.7/streaming-lakehouse/integrate-data-lakes/paimon/index.html
index 5a099d232..56e317a5a 100644
--- a/docs/0.7/streaming-lakehouse/integrate-data-lakes/paimon/index.html
+++ b/docs/0.7/streaming-lakehouse/integrate-data-lakes/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/streaming-lakehouse/overview/index.html b/docs/0.7/streaming-lakehouse/overview/index.html
index 395ca8c35..a09c85518 100644
--- a/docs/0.7/streaming-lakehouse/overview/index.html
+++ b/docs/0.7/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/data-distribution/bucketing/index.html b/docs/0.7/table-design/data-distribution/bucketing/index.html
index 4b46485c5..7cef858f7 100644
--- a/docs/0.7/table-design/data-distribution/bucketing/index.html
+++ b/docs/0.7/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/data-distribution/partitioning/index.html b/docs/0.7/table-design/data-distribution/partitioning/index.html
index 45db854c1..61a1eaeb4 100644
--- a/docs/0.7/table-design/data-distribution/partitioning/index.html
+++ b/docs/0.7/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/data-distribution/ttl/index.html b/docs/0.7/table-design/data-distribution/ttl/index.html
index 9b1dab8a8..c01ca08b4 100644
--- a/docs/0.7/table-design/data-distribution/ttl/index.html
+++ b/docs/0.7/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/data-types/index.html b/docs/0.7/table-design/data-types/index.html
index 65764ce62..df7b14636 100644
--- a/docs/0.7/table-design/data-types/index.html
+++ b/docs/0.7/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/overview/index.html b/docs/0.7/table-design/overview/index.html
index dc7da694f..5e255259b 100644
--- a/docs/0.7/table-design/overview/index.html
+++ b/docs/0.7/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/log-table/index.html b/docs/0.7/table-design/table-types/log-table/index.html
index be7cbb6b0..80cf86ffb 100644
--- a/docs/0.7/table-design/table-types/log-table/index.html
+++ b/docs/0.7/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/pk-table/index.html b/docs/0.7/table-design/table-types/pk-table/index.html
index 9490aa377..81dfd2bfe 100644
--- a/docs/0.7/table-design/table-types/pk-table/index.html
+++ b/docs/0.7/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/pk-table/merge-engines/default/index.html b/docs/0.7/table-design/table-types/pk-table/merge-engines/default/index.html
index d9eb0c1c8..a8e1919a5 100644
--- a/docs/0.7/table-design/table-types/pk-table/merge-engines/default/index.html
+++ b/docs/0.7/table-design/table-types/pk-table/merge-engines/default/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/pk-table/merge-engines/first-row/index.html b/docs/0.7/table-design/table-types/pk-table/merge-engines/first-row/index.html
index 0e938bcef..50395032d 100644
--- a/docs/0.7/table-design/table-types/pk-table/merge-engines/first-row/index.html
+++ b/docs/0.7/table-design/table-types/pk-table/merge-engines/first-row/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/pk-table/merge-engines/index.html b/docs/0.7/table-design/table-types/pk-table/merge-engines/index.html
index 26418f23e..22829317a 100644
--- a/docs/0.7/table-design/table-types/pk-table/merge-engines/index.html
+++ b/docs/0.7/table-design/table-types/pk-table/merge-engines/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.7/table-design/table-types/pk-table/merge-engines/versioned/index.html b/docs/0.7/table-design/table-types/pk-table/merge-engines/versioned/index.html
index 1b01c07a6..4cf123c0c 100644
--- a/docs/0.7/table-design/table-types/pk-table/merge-engines/versioned/index.html
+++ b/docs/0.7/table-design/table-types/pk-table/merge-engines/versioned/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/apis/java-client/index.html b/docs/0.8/apis/java-client/index.html
index a60e7348d..736cdbc10 100644
--- a/docs/0.8/apis/java-client/index.html
+++ b/docs/0.8/apis/java-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/concepts/architecture/index.html b/docs/0.8/concepts/architecture/index.html
index e59a9f7b0..0ba56ce78 100644
--- a/docs/0.8/concepts/architecture/index.html
+++ b/docs/0.8/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/datastream/index.html b/docs/0.8/engine-flink/datastream/index.html
index ef37087d8..18533860f 100644
--- a/docs/0.8/engine-flink/datastream/index.html
+++ b/docs/0.8/engine-flink/datastream/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/ddl/index.html b/docs/0.8/engine-flink/ddl/index.html
index bf2a4a6de..4b18b5570 100644
--- a/docs/0.8/engine-flink/ddl/index.html
+++ b/docs/0.8/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/delta-joins/index.html b/docs/0.8/engine-flink/delta-joins/index.html
index afdc59366..ebb065cc0 100644
--- a/docs/0.8/engine-flink/delta-joins/index.html
+++ b/docs/0.8/engine-flink/delta-joins/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/getting-started/index.html b/docs/0.8/engine-flink/getting-started/index.html
index e43c707d4..c35096df0 100644
--- a/docs/0.8/engine-flink/getting-started/index.html
+++ b/docs/0.8/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/lookups/index.html b/docs/0.8/engine-flink/lookups/index.html
index 02f0b7c18..05ffde536 100644
--- a/docs/0.8/engine-flink/lookups/index.html
+++ b/docs/0.8/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/options/index.html b/docs/0.8/engine-flink/options/index.html
index 2b4a896ed..0f3046836 100644
--- a/docs/0.8/engine-flink/options/index.html
+++ b/docs/0.8/engine-flink/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/reads/index.html b/docs/0.8/engine-flink/reads/index.html
index ac22773fb..c6fba21f6 100644
--- a/docs/0.8/engine-flink/reads/index.html
+++ b/docs/0.8/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/engine-flink/writes/index.html b/docs/0.8/engine-flink/writes/index.html
index 12a79a51f..13bcfafde 100644
--- a/docs/0.8/engine-flink/writes/index.html
+++ b/docs/0.8/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/index.html b/docs/0.8/index.html
index c4c9e0adf..7afc7bedc 100644
--- a/docs/0.8/index.html
+++ b/docs/0.8/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/install-deploy/deploying-distributed-cluster/index.html b/docs/0.8/install-deploy/deploying-distributed-cluster/index.html
index 519e08e17..088f42b7c 100644
--- a/docs/0.8/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/0.8/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/install-deploy/deploying-local-cluster/index.html b/docs/0.8/install-deploy/deploying-local-cluster/index.html
index 5323f77be..4b55608c1 100644
--- a/docs/0.8/install-deploy/deploying-local-cluster/index.html
+++ b/docs/0.8/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/install-deploy/deploying-with-docker/index.html b/docs/0.8/install-deploy/deploying-with-docker/index.html
index 2841294bf..a1a04941f 100644
--- a/docs/0.8/install-deploy/deploying-with-docker/index.html
+++ b/docs/0.8/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/install-deploy/deploying-with-helm/index.html b/docs/0.8/install-deploy/deploying-with-helm/index.html
index 3e8607d22..9dd88edab 100644
--- a/docs/0.8/install-deploy/deploying-with-helm/index.html
+++ b/docs/0.8/install-deploy/deploying-with-helm/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/install-deploy/overview/index.html b/docs/0.8/install-deploy/overview/index.html
index 5bf589767..281b85e8d 100644
--- a/docs/0.8/install-deploy/overview/index.html
+++ b/docs/0.8/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/configuration/index.html b/docs/0.8/maintenance/configuration/index.html
index cce97ee64..b21334499 100644
--- a/docs/0.8/maintenance/configuration/index.html
+++ b/docs/0.8/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/filesystems/hdfs/index.html b/docs/0.8/maintenance/filesystems/hdfs/index.html
index 0857c50a1..53148fbf6 100644
--- a/docs/0.8/maintenance/filesystems/hdfs/index.html
+++ b/docs/0.8/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/filesystems/obs/index.html b/docs/0.8/maintenance/filesystems/obs/index.html
index 97cf416fa..20e5b9636 100644
--- a/docs/0.8/maintenance/filesystems/obs/index.html
+++ b/docs/0.8/maintenance/filesystems/obs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/filesystems/oss/index.html b/docs/0.8/maintenance/filesystems/oss/index.html
index b709bcee3..d90480316 100644
--- a/docs/0.8/maintenance/filesystems/oss/index.html
+++ b/docs/0.8/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/filesystems/overview/index.html b/docs/0.8/maintenance/filesystems/overview/index.html
index 35face519..e98090f55 100644
--- a/docs/0.8/maintenance/filesystems/overview/index.html
+++ b/docs/0.8/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/filesystems/s3/index.html b/docs/0.8/maintenance/filesystems/s3/index.html
index b28fbd427..f30d3fee6 100644
--- a/docs/0.8/maintenance/filesystems/s3/index.html
+++ b/docs/0.8/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/observability/logging/index.html b/docs/0.8/maintenance/observability/logging/index.html
index b6d3e45a3..e881bd253 100644
--- a/docs/0.8/maintenance/observability/logging/index.html
+++ b/docs/0.8/maintenance/observability/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/observability/metric-reporters/index.html b/docs/0.8/maintenance/observability/metric-reporters/index.html
index ed64605f2..782708b2b 100644
--- a/docs/0.8/maintenance/observability/metric-reporters/index.html
+++ b/docs/0.8/maintenance/observability/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/observability/monitor-metrics/index.html b/docs/0.8/maintenance/observability/monitor-metrics/index.html
index b36d06683..526e0846d 100644
--- a/docs/0.8/maintenance/observability/monitor-metrics/index.html
+++ b/docs/0.8/maintenance/observability/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/observability/quickstart/index.html b/docs/0.8/maintenance/observability/quickstart/index.html
index 65d14beff..897a8af24 100644
--- a/docs/0.8/maintenance/observability/quickstart/index.html
+++ b/docs/0.8/maintenance/observability/quickstart/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/graceful-shutdown/index.html b/docs/0.8/maintenance/operations/graceful-shutdown/index.html
index a8fedfaa6..0e1523019 100644
--- a/docs/0.8/maintenance/operations/graceful-shutdown/index.html
+++ b/docs/0.8/maintenance/operations/graceful-shutdown/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/racks/index.html b/docs/0.8/maintenance/operations/racks/index.html
index 5edd97ff2..1e6e35888 100644
--- a/docs/0.8/maintenance/operations/racks/index.html
+++ b/docs/0.8/maintenance/operations/racks/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/updating-configs/index.html b/docs/0.8/maintenance/operations/updating-configs/index.html
index 341cc80c6..484c5f73f 100644
--- a/docs/0.8/maintenance/operations/updating-configs/index.html
+++ b/docs/0.8/maintenance/operations/updating-configs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/upgrade-notes-0.8/index.html b/docs/0.8/maintenance/operations/upgrade-notes-0.8/index.html
index 81b494867..6c62bd731 100644
--- a/docs/0.8/maintenance/operations/upgrade-notes-0.8/index.html
+++ b/docs/0.8/maintenance/operations/upgrade-notes-0.8/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/upgrade-notes-0.9/index.html b/docs/0.8/maintenance/operations/upgrade-notes-0.9/index.html
index 576c24e4f..b6f608945 100644
--- a/docs/0.8/maintenance/operations/upgrade-notes-0.9/index.html
+++ b/docs/0.8/maintenance/operations/upgrade-notes-0.9/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/operations/upgrading/index.html b/docs/0.8/maintenance/operations/upgrading/index.html
index 5e4c03c9c..0903992f0 100644
--- a/docs/0.8/maintenance/operations/upgrading/index.html
+++ b/docs/0.8/maintenance/operations/upgrading/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/0.8/maintenance/tiered-storage/lakehouse-storage/index.html
index ad90f099e..96ba0ccf4 100644
--- a/docs/0.8/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/0.8/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/tiered-storage/overview/index.html b/docs/0.8/maintenance/tiered-storage/overview/index.html
index 84a8d7315..fa8adf1b0 100644
--- a/docs/0.8/maintenance/tiered-storage/overview/index.html
+++ b/docs/0.8/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/maintenance/tiered-storage/remote-storage/index.html b/docs/0.8/maintenance/tiered-storage/remote-storage/index.html
index 05a4585a1..776ba76e7 100644
--- a/docs/0.8/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/0.8/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/quickstart/flink/index.html b/docs/0.8/quickstart/flink/index.html
index 4588e4573..0fc2fa693 100644
--- a/docs/0.8/quickstart/flink/index.html
+++ b/docs/0.8/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/quickstart/lakehouse/index.html b/docs/0.8/quickstart/lakehouse/index.html
index ffb0ca60c..bc4f92ca6 100644
--- a/docs/0.8/quickstart/lakehouse/index.html
+++ b/docs/0.8/quickstart/lakehouse/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/quickstart/security/index.html b/docs/0.8/quickstart/security/index.html
index 1561cdc6f..96bc4632e 100644
--- a/docs/0.8/quickstart/security/index.html
+++ b/docs/0.8/quickstart/security/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/security/authentication/index.html b/docs/0.8/security/authentication/index.html
index ae7bf1c75..d850d39df 100644
--- a/docs/0.8/security/authentication/index.html
+++ b/docs/0.8/security/authentication/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/security/authorization/index.html b/docs/0.8/security/authorization/index.html
index 885fdc12a..456bb8811 100644
--- a/docs/0.8/security/authorization/index.html
+++ b/docs/0.8/security/authorization/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/security/overview/index.html b/docs/0.8/security/overview/index.html
index d18fbf50b..7f7e12de2 100644
--- a/docs/0.8/security/overview/index.html
+++ b/docs/0.8/security/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/streaming-lakehouse/integrate-data-lakes/iceberg/index.html b/docs/0.8/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
index 138ad4a61..c93a940be 100644
--- a/docs/0.8/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
+++ b/docs/0.8/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/streaming-lakehouse/integrate-data-lakes/lance/index.html b/docs/0.8/streaming-lakehouse/integrate-data-lakes/lance/index.html
index 709cb3bef..c9455e554 100644
--- a/docs/0.8/streaming-lakehouse/integrate-data-lakes/lance/index.html
+++ b/docs/0.8/streaming-lakehouse/integrate-data-lakes/lance/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/streaming-lakehouse/integrate-data-lakes/paimon/index.html b/docs/0.8/streaming-lakehouse/integrate-data-lakes/paimon/index.html
index 34578960f..085f3072f 100644
--- a/docs/0.8/streaming-lakehouse/integrate-data-lakes/paimon/index.html
+++ b/docs/0.8/streaming-lakehouse/integrate-data-lakes/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/streaming-lakehouse/overview/index.html b/docs/0.8/streaming-lakehouse/overview/index.html
index b5ca9eddd..18898f815 100644
--- a/docs/0.8/streaming-lakehouse/overview/index.html
+++ b/docs/0.8/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/data-distribution/bucketing/index.html b/docs/0.8/table-design/data-distribution/bucketing/index.html
index d7cb43c75..ba7253a1a 100644
--- a/docs/0.8/table-design/data-distribution/bucketing/index.html
+++ b/docs/0.8/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/data-distribution/partitioning/index.html b/docs/0.8/table-design/data-distribution/partitioning/index.html
index 180643b5c..d295ba7d4 100644
--- a/docs/0.8/table-design/data-distribution/partitioning/index.html
+++ b/docs/0.8/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/data-distribution/ttl/index.html b/docs/0.8/table-design/data-distribution/ttl/index.html
index 4230cf422..77059e72d 100644
--- a/docs/0.8/table-design/data-distribution/ttl/index.html
+++ b/docs/0.8/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/data-types/index.html b/docs/0.8/table-design/data-types/index.html
index 358ee7a29..43cfcb0f5 100644
--- a/docs/0.8/table-design/data-types/index.html
+++ b/docs/0.8/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/overview/index.html b/docs/0.8/table-design/overview/index.html
index edce7b927..7641c4455 100644
--- a/docs/0.8/table-design/overview/index.html
+++ b/docs/0.8/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/log-table/index.html b/docs/0.8/table-design/table-types/log-table/index.html
index f3d0cef56..9aaea8ef7 100644
--- a/docs/0.8/table-design/table-types/log-table/index.html
+++ b/docs/0.8/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/pk-table/index.html b/docs/0.8/table-design/table-types/pk-table/index.html
index 644e61996..7019f6616 100644
--- a/docs/0.8/table-design/table-types/pk-table/index.html
+++ b/docs/0.8/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/pk-table/merge-engines/default/index.html b/docs/0.8/table-design/table-types/pk-table/merge-engines/default/index.html
index 7703b83ef..25753d976 100644
--- a/docs/0.8/table-design/table-types/pk-table/merge-engines/default/index.html
+++ b/docs/0.8/table-design/table-types/pk-table/merge-engines/default/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/pk-table/merge-engines/first-row/index.html b/docs/0.8/table-design/table-types/pk-table/merge-engines/first-row/index.html
index a8cc3a20e..ba5d7c9cb 100644
--- a/docs/0.8/table-design/table-types/pk-table/merge-engines/first-row/index.html
+++ b/docs/0.8/table-design/table-types/pk-table/merge-engines/first-row/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/pk-table/merge-engines/index.html b/docs/0.8/table-design/table-types/pk-table/merge-engines/index.html
index a884bc9b2..441d112e1 100644
--- a/docs/0.8/table-design/table-types/pk-table/merge-engines/index.html
+++ b/docs/0.8/table-design/table-types/pk-table/merge-engines/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/0.8/table-design/table-types/pk-table/merge-engines/versioned/index.html b/docs/0.8/table-design/table-types/pk-table/merge-engines/versioned/index.html
index a21d4f52b..636949d03 100644
--- a/docs/0.8/table-design/table-types/pk-table/merge-engines/versioned/index.html
+++ b/docs/0.8/table-design/table-types/pk-table/merge-engines/versioned/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/apis/client-support-matrix/index.html b/docs/apis/client-support-matrix/index.html
index c0549347f..838d81a64 100644
--- a/docs/apis/client-support-matrix/index.html
+++ b/docs/apis/client-support-matrix/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/apis/java-client/index.html b/docs/apis/java-client/index.html
index 2cb79c62d..6b2c5a990 100644
--- a/docs/apis/java-client/index.html
+++ b/docs/apis/java-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/concepts/architecture/index.html b/docs/concepts/architecture/index.html
index a8bf80405..a4f80dd78 100644
--- a/docs/concepts/architecture/index.html
+++ b/docs/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/datastream/index.html b/docs/engine-flink/datastream/index.html
index 60d6578a7..a23414d83 100644
--- a/docs/engine-flink/datastream/index.html
+++ b/docs/engine-flink/datastream/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/ddl/index.html b/docs/engine-flink/ddl/index.html
index 9e8c46e08..9b5b420c6 100644
--- a/docs/engine-flink/ddl/index.html
+++ b/docs/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/delta-joins/index.html b/docs/engine-flink/delta-joins/index.html
index 22707dbb4..b58bfefe9 100644
--- a/docs/engine-flink/delta-joins/index.html
+++ b/docs/engine-flink/delta-joins/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/getting-started/index.html b/docs/engine-flink/getting-started/index.html
index ccf06ff6f..ed115e95f 100644
--- a/docs/engine-flink/getting-started/index.html
+++ b/docs/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/lookups/index.html b/docs/engine-flink/lookups/index.html
index f7ed53f98..c4821a1d3 100644
--- a/docs/engine-flink/lookups/index.html
+++ b/docs/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/options/index.html b/docs/engine-flink/options/index.html
index bb178afa2..f88c641a6 100644
--- a/docs/engine-flink/options/index.html
+++ b/docs/engine-flink/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/procedures/index.html b/docs/engine-flink/procedures/index.html
index ddf9b2cfd..7028890a0 100644
--- a/docs/engine-flink/procedures/index.html
+++ b/docs/engine-flink/procedures/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/reads/index.html b/docs/engine-flink/reads/index.html
index ac1466579..cc36345a4 100644
--- a/docs/engine-flink/reads/index.html
+++ b/docs/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-flink/writes/index.html b/docs/engine-flink/writes/index.html
index 2f43ec102..b62ae2b77 100644
--- a/docs/engine-flink/writes/index.html
+++ b/docs/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/ddl/index.html b/docs/engine-spark/ddl/index.html
index c43879644..de383abbd 100644
--- a/docs/engine-spark/ddl/index.html
+++ b/docs/engine-spark/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/getting-started/index.html b/docs/engine-spark/getting-started/index.html
index 21987e6a3..7c28a87d8 100644
--- a/docs/engine-spark/getting-started/index.html
+++ b/docs/engine-spark/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/options/index.html b/docs/engine-spark/options/index.html
index c89ccdf71..8da0da4a5 100644
--- a/docs/engine-spark/options/index.html
+++ b/docs/engine-spark/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/procedures/index.html b/docs/engine-spark/procedures/index.html
index ec78780f2..33d048757 100644
--- a/docs/engine-spark/procedures/index.html
+++ b/docs/engine-spark/procedures/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/reads/index.html b/docs/engine-spark/reads/index.html
index 0368c8065..938dc9524 100644
--- a/docs/engine-spark/reads/index.html
+++ b/docs/engine-spark/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/structured-streaming/index.html b/docs/engine-spark/structured-streaming/index.html
index bdb284e2c..17696d22c 100644
--- a/docs/engine-spark/structured-streaming/index.html
+++ b/docs/engine-spark/structured-streaming/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/engine-spark/writes/index.html b/docs/engine-spark/writes/index.html
index dd5388c7f..75c766a96 100644
--- a/docs/engine-spark/writes/index.html
+++ b/docs/engine-spark/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/index.html b/docs/index.html
index 9cd177ef8..6f4312ea4 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/install-deploy/deploying-distributed-cluster/index.html b/docs/install-deploy/deploying-distributed-cluster/index.html
index 9a40e0142..23b1715f6 100644
--- a/docs/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/install-deploy/deploying-local-cluster/index.html b/docs/install-deploy/deploying-local-cluster/index.html
index 48ff63f81..703a2c81f 100644
--- a/docs/install-deploy/deploying-local-cluster/index.html
+++ b/docs/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/install-deploy/deploying-with-docker/index.html b/docs/install-deploy/deploying-with-docker/index.html
index 88e668ffd..3c442aa73 100644
--- a/docs/install-deploy/deploying-with-docker/index.html
+++ b/docs/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/install-deploy/deploying-with-helm/index.html b/docs/install-deploy/deploying-with-helm/index.html
index e3637d98c..11e4af17e 100644
--- a/docs/install-deploy/deploying-with-helm/index.html
+++ b/docs/install-deploy/deploying-with-helm/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/install-deploy/overview/index.html b/docs/install-deploy/overview/index.html
index b87b0eeee..5055d5875 100644
--- a/docs/install-deploy/overview/index.html
+++ b/docs/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/configuration/index.html b/docs/maintenance/configuration/index.html
index 39d966fac..c8e21a5f2 100644
--- a/docs/maintenance/configuration/index.html
+++ b/docs/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/azure/index.html b/docs/maintenance/filesystems/azure/index.html
index cb0a302fa..21e47a5bc 100644
--- a/docs/maintenance/filesystems/azure/index.html
+++ b/docs/maintenance/filesystems/azure/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/gs/index.html b/docs/maintenance/filesystems/gs/index.html
index e3526d75e..b356b54ad 100644
--- a/docs/maintenance/filesystems/gs/index.html
+++ b/docs/maintenance/filesystems/gs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/hdfs/index.html b/docs/maintenance/filesystems/hdfs/index.html
index 5849eb698..ddf38e99c 100644
--- a/docs/maintenance/filesystems/hdfs/index.html
+++ b/docs/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/obs/index.html b/docs/maintenance/filesystems/obs/index.html
index da0971716..8d7b59de4 100644
--- a/docs/maintenance/filesystems/obs/index.html
+++ b/docs/maintenance/filesystems/obs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/oss/index.html b/docs/maintenance/filesystems/oss/index.html
index 571875c57..fd20ca81b 100644
--- a/docs/maintenance/filesystems/oss/index.html
+++ b/docs/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/overview/index.html b/docs/maintenance/filesystems/overview/index.html
index 7a5f137c7..b57bb8b4f 100644
--- a/docs/maintenance/filesystems/overview/index.html
+++ b/docs/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/filesystems/s3/index.html b/docs/maintenance/filesystems/s3/index.html
index 1edfa3031..99ce53ae1 100644
--- a/docs/maintenance/filesystems/s3/index.html
+++ b/docs/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/observability/logging/index.html b/docs/maintenance/observability/logging/index.html
index 659946ae7..f255b045d 100644
--- a/docs/maintenance/observability/logging/index.html
+++ b/docs/maintenance/observability/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/observability/metric-reporters/index.html b/docs/maintenance/observability/metric-reporters/index.html
index 06c00d758..f6f7183c3 100644
--- a/docs/maintenance/observability/metric-reporters/index.html
+++ b/docs/maintenance/observability/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/observability/monitor-metrics/index.html b/docs/maintenance/observability/monitor-metrics/index.html
index a1d87c4e6..9672a6669 100644
--- a/docs/maintenance/observability/monitor-metrics/index.html
+++ b/docs/maintenance/observability/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/observability/quickstart/index.html b/docs/maintenance/observability/quickstart/index.html
index 556d6e712..4b75e6a69 100644
--- a/docs/maintenance/observability/quickstart/index.html
+++ b/docs/maintenance/observability/quickstart/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/graceful-shutdown/index.html b/docs/maintenance/operations/graceful-shutdown/index.html
index 38c878830..9c0118017 100644
--- a/docs/maintenance/operations/graceful-shutdown/index.html
+++ b/docs/maintenance/operations/graceful-shutdown/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/racks/index.html b/docs/maintenance/operations/racks/index.html
index 9871662c5..e69a0a00a 100644
--- a/docs/maintenance/operations/racks/index.html
+++ b/docs/maintenance/operations/racks/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/rebalance/index.html b/docs/maintenance/operations/rebalance/index.html
index 9f66d6af5..bcf634e8a 100644
--- a/docs/maintenance/operations/rebalance/index.html
+++ b/docs/maintenance/operations/rebalance/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/updating-configs/index.html b/docs/maintenance/operations/updating-configs/index.html
index 8df285584..2d0f5c0d4 100644
--- a/docs/maintenance/operations/updating-configs/index.html
+++ b/docs/maintenance/operations/updating-configs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/upgrade-notes-0.8/index.html b/docs/maintenance/operations/upgrade-notes-0.8/index.html
index 874212229..9985fe6c1 100644
--- a/docs/maintenance/operations/upgrade-notes-0.8/index.html
+++ b/docs/maintenance/operations/upgrade-notes-0.8/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/upgrade-notes-0.9/index.html b/docs/maintenance/operations/upgrade-notes-0.9/index.html
index 13b81872a..653f54f46 100644
--- a/docs/maintenance/operations/upgrade-notes-0.9/index.html
+++ b/docs/maintenance/operations/upgrade-notes-0.9/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/upgrade-notes-archive/index.html b/docs/maintenance/operations/upgrade-notes-archive/index.html
index 2294b4bfb..4251ca257 100644
--- a/docs/maintenance/operations/upgrade-notes-archive/index.html
+++ b/docs/maintenance/operations/upgrade-notes-archive/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/operations/upgrading/index.html b/docs/maintenance/operations/upgrading/index.html
index 07b97c966..b9a03e776 100644
--- a/docs/maintenance/operations/upgrading/index.html
+++ b/docs/maintenance/operations/upgrading/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/maintenance/tiered-storage/lakehouse-storage/index.html
index d985afdd0..e1468982b 100644
--- a/docs/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/tiered-storage/overview/index.html b/docs/maintenance/tiered-storage/overview/index.html
index 170d0caf4..fd1a430e3 100644
--- a/docs/maintenance/tiered-storage/overview/index.html
+++ b/docs/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/maintenance/tiered-storage/remote-storage/index.html b/docs/maintenance/tiered-storage/remote-storage/index.html
index e25ef1299..80bb6a2a3 100644
--- a/docs/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/apis/client-support-matrix/index.html b/docs/next/apis/client-support-matrix/index.html
index da8cb87ed..02d105c6c 100644
--- a/docs/next/apis/client-support-matrix/index.html
+++ b/docs/next/apis/client-support-matrix/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/apis/cpp-client/index.html b/docs/next/apis/cpp-client/index.html
index ac774607f..0da827782 100644
--- a/docs/next/apis/cpp-client/index.html
+++ b/docs/next/apis/cpp-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/apis/java-client/index.html b/docs/next/apis/java-client/index.html
index 5b615a9c4..11c9d6c46 100644
--- a/docs/next/apis/java-client/index.html
+++ b/docs/next/apis/java-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/apis/python-client/index.html b/docs/next/apis/python-client/index.html
index ac6bd9fda..df0f9856c 100644
--- a/docs/next/apis/python-client/index.html
+++ b/docs/next/apis/python-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/apis/rust-client/index.html b/docs/next/apis/rust-client/index.html
index 4298643c1..0bdb8b40b 100644
--- a/docs/next/apis/rust-client/index.html
+++ b/docs/next/apis/rust-client/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/concepts/architecture/index.html b/docs/next/concepts/architecture/index.html
index 8fb9b2b51..af2dc9ab9 100644
--- a/docs/next/concepts/architecture/index.html
+++ b/docs/next/concepts/architecture/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/datastream/index.html b/docs/next/engine-flink/datastream/index.html
index ebb50f64b..9d42c6df5 100644
--- a/docs/next/engine-flink/datastream/index.html
+++ b/docs/next/engine-flink/datastream/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/ddl/index.html b/docs/next/engine-flink/ddl/index.html
index df9b1431a..dfa27e223 100644
--- a/docs/next/engine-flink/ddl/index.html
+++ b/docs/next/engine-flink/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/delta-joins/index.html b/docs/next/engine-flink/delta-joins/index.html
index b514b8d55..113104e10 100644
--- a/docs/next/engine-flink/delta-joins/index.html
+++ b/docs/next/engine-flink/delta-joins/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/getting-started/index.html b/docs/next/engine-flink/getting-started/index.html
index 74fed6626..5b4849e1c 100644
--- a/docs/next/engine-flink/getting-started/index.html
+++ b/docs/next/engine-flink/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/lookups/index.html b/docs/next/engine-flink/lookups/index.html
index f111dab70..81d1071d0 100644
--- a/docs/next/engine-flink/lookups/index.html
+++ b/docs/next/engine-flink/lookups/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/options/index.html b/docs/next/engine-flink/options/index.html
index 3febadd50..b85419c63 100644
--- a/docs/next/engine-flink/options/index.html
+++ b/docs/next/engine-flink/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/procedures/index.html b/docs/next/engine-flink/procedures/index.html
index afa746daf..b6dfe5448 100644
--- a/docs/next/engine-flink/procedures/index.html
+++ b/docs/next/engine-flink/procedures/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/reads/index.html b/docs/next/engine-flink/reads/index.html
index e1e44dcbf..ec27b9b13 100644
--- a/docs/next/engine-flink/reads/index.html
+++ b/docs/next/engine-flink/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-flink/writes/index.html b/docs/next/engine-flink/writes/index.html
index 9a1172829..7d6422313 100644
--- a/docs/next/engine-flink/writes/index.html
+++ b/docs/next/engine-flink/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/ddl/index.html b/docs/next/engine-spark/ddl/index.html
index 13d9c8c4b..5efc012c8 100644
--- a/docs/next/engine-spark/ddl/index.html
+++ b/docs/next/engine-spark/ddl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/getting-started/index.html b/docs/next/engine-spark/getting-started/index.html
index d352ae27a..b46b20ecb 100644
--- a/docs/next/engine-spark/getting-started/index.html
+++ b/docs/next/engine-spark/getting-started/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/options/index.html b/docs/next/engine-spark/options/index.html
index 5ea20eb4e..3a632623a 100644
--- a/docs/next/engine-spark/options/index.html
+++ b/docs/next/engine-spark/options/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/procedures/index.html b/docs/next/engine-spark/procedures/index.html
index 7a059aac9..34c483c62 100644
--- a/docs/next/engine-spark/procedures/index.html
+++ b/docs/next/engine-spark/procedures/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/reads/index.html b/docs/next/engine-spark/reads/index.html
index 9936f7e1c..0320f49e6 100644
--- a/docs/next/engine-spark/reads/index.html
+++ b/docs/next/engine-spark/reads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/structured-streaming/index.html b/docs/next/engine-spark/structured-streaming/index.html
index 1ce44928e..0efbee7cd 100644
--- a/docs/next/engine-spark/structured-streaming/index.html
+++ b/docs/next/engine-spark/structured-streaming/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/engine-spark/writes/index.html b/docs/next/engine-spark/writes/index.html
index ab9710553..d89c7ec03 100644
--- a/docs/next/engine-spark/writes/index.html
+++ b/docs/next/engine-spark/writes/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/index.html b/docs/next/index.html
index 2bc8c6a36..9b574cc58 100644
--- a/docs/next/index.html
+++ b/docs/next/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/install-deploy/deploying-distributed-cluster/index.html b/docs/next/install-deploy/deploying-distributed-cluster/index.html
index 21a8c2d4a..e3f65e35b 100644
--- a/docs/next/install-deploy/deploying-distributed-cluster/index.html
+++ b/docs/next/install-deploy/deploying-distributed-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/install-deploy/deploying-local-cluster/index.html b/docs/next/install-deploy/deploying-local-cluster/index.html
index 529f36716..cf24da3f3 100644
--- a/docs/next/install-deploy/deploying-local-cluster/index.html
+++ b/docs/next/install-deploy/deploying-local-cluster/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/install-deploy/deploying-with-docker/index.html b/docs/next/install-deploy/deploying-with-docker/index.html
index 3309b05a3..800552ea4 100644
--- a/docs/next/install-deploy/deploying-with-docker/index.html
+++ b/docs/next/install-deploy/deploying-with-docker/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/install-deploy/deploying-with-helm/index.html b/docs/next/install-deploy/deploying-with-helm/index.html
index e8ba78834..870048d4e 100644
--- a/docs/next/install-deploy/deploying-with-helm/index.html
+++ b/docs/next/install-deploy/deploying-with-helm/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/install-deploy/overview/index.html b/docs/next/install-deploy/overview/index.html
index eb150d660..e4aa4d957 100644
--- a/docs/next/install-deploy/overview/index.html
+++ b/docs/next/install-deploy/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/configuration/index.html b/docs/next/maintenance/configuration/index.html
index 56cf7406c..93c9346e2 100644
--- a/docs/next/maintenance/configuration/index.html
+++ b/docs/next/maintenance/configuration/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/azure/index.html b/docs/next/maintenance/filesystems/azure/index.html
index 634f0e070..b6929fb39 100644
--- a/docs/next/maintenance/filesystems/azure/index.html
+++ b/docs/next/maintenance/filesystems/azure/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/cos/index.html b/docs/next/maintenance/filesystems/cos/index.html
index 2d1409d3f..4c2602c27 100644
--- a/docs/next/maintenance/filesystems/cos/index.html
+++ b/docs/next/maintenance/filesystems/cos/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/gs/index.html b/docs/next/maintenance/filesystems/gs/index.html
index 43d998c5f..0facdbc03 100644
--- a/docs/next/maintenance/filesystems/gs/index.html
+++ b/docs/next/maintenance/filesystems/gs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/hdfs/index.html b/docs/next/maintenance/filesystems/hdfs/index.html
index f9354ef6d..69d1bfa62 100644
--- a/docs/next/maintenance/filesystems/hdfs/index.html
+++ b/docs/next/maintenance/filesystems/hdfs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/obs/index.html b/docs/next/maintenance/filesystems/obs/index.html
index a7aed07e4..56391c7aa 100644
--- a/docs/next/maintenance/filesystems/obs/index.html
+++ b/docs/next/maintenance/filesystems/obs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/oss/index.html b/docs/next/maintenance/filesystems/oss/index.html
index 61b04f756..b7e880dea 100644
--- a/docs/next/maintenance/filesystems/oss/index.html
+++ b/docs/next/maintenance/filesystems/oss/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/overview/index.html b/docs/next/maintenance/filesystems/overview/index.html
index 4400297b3..6b365e916 100644
--- a/docs/next/maintenance/filesystems/overview/index.html
+++ b/docs/next/maintenance/filesystems/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/filesystems/s3/index.html b/docs/next/maintenance/filesystems/s3/index.html
index eb387bc16..eba7dc8da 100644
--- a/docs/next/maintenance/filesystems/s3/index.html
+++ b/docs/next/maintenance/filesystems/s3/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/observability/logging/index.html b/docs/next/maintenance/observability/logging/index.html
index 4bcfe5cd4..4be202b76 100644
--- a/docs/next/maintenance/observability/logging/index.html
+++ b/docs/next/maintenance/observability/logging/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/observability/metric-reporters/index.html b/docs/next/maintenance/observability/metric-reporters/index.html
index 5384c72d0..a723f27e6 100644
--- a/docs/next/maintenance/observability/metric-reporters/index.html
+++ b/docs/next/maintenance/observability/metric-reporters/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/observability/monitor-metrics/index.html b/docs/next/maintenance/observability/monitor-metrics/index.html
index 0adb13b66..a11462290 100644
--- a/docs/next/maintenance/observability/monitor-metrics/index.html
+++ b/docs/next/maintenance/observability/monitor-metrics/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/observability/quickstart/index.html b/docs/next/maintenance/observability/quickstart/index.html
index 4cfdd7d5b..46dd3e300 100644
--- a/docs/next/maintenance/observability/quickstart/index.html
+++ b/docs/next/maintenance/observability/quickstart/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/graceful-shutdown/index.html b/docs/next/maintenance/operations/graceful-shutdown/index.html
index 5d9a6be0f..a6c93d78a 100644
--- a/docs/next/maintenance/operations/graceful-shutdown/index.html
+++ b/docs/next/maintenance/operations/graceful-shutdown/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/racks/index.html b/docs/next/maintenance/operations/racks/index.html
index d97fc7fe5..0cc360452 100644
--- a/docs/next/maintenance/operations/racks/index.html
+++ b/docs/next/maintenance/operations/racks/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/rebalance/index.html b/docs/next/maintenance/operations/rebalance/index.html
index 488b3a6cd..ef4133972 100644
--- a/docs/next/maintenance/operations/rebalance/index.html
+++ b/docs/next/maintenance/operations/rebalance/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/updating-configs/index.html b/docs/next/maintenance/operations/updating-configs/index.html
index 5c8ad533e..ac674ad4c 100644
--- a/docs/next/maintenance/operations/updating-configs/index.html
+++ b/docs/next/maintenance/operations/updating-configs/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/upgrade-notes-0.8/index.html b/docs/next/maintenance/operations/upgrade-notes-0.8/index.html
index 4abaf3ddc..de4b4801f 100644
--- a/docs/next/maintenance/operations/upgrade-notes-0.8/index.html
+++ b/docs/next/maintenance/operations/upgrade-notes-0.8/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/upgrade-notes-0.9/index.html b/docs/next/maintenance/operations/upgrade-notes-0.9/index.html
index c9f40d48e..e3aa53bed 100644
--- a/docs/next/maintenance/operations/upgrade-notes-0.9/index.html
+++ b/docs/next/maintenance/operations/upgrade-notes-0.9/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/upgrade-notes-1.0/index.html b/docs/next/maintenance/operations/upgrade-notes-1.0/index.html
index c220f7640..db7e62cb9 100644
--- a/docs/next/maintenance/operations/upgrade-notes-1.0/index.html
+++ b/docs/next/maintenance/operations/upgrade-notes-1.0/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/upgrade-notes-archive/index.html b/docs/next/maintenance/operations/upgrade-notes-archive/index.html
index 9d2484180..8ba1d16bc 100644
--- a/docs/next/maintenance/operations/upgrade-notes-archive/index.html
+++ b/docs/next/maintenance/operations/upgrade-notes-archive/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/operations/upgrading/index.html b/docs/next/maintenance/operations/upgrading/index.html
index 40e6f06fd..7876435e4 100644
--- a/docs/next/maintenance/operations/upgrading/index.html
+++ b/docs/next/maintenance/operations/upgrading/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/tiered-storage/lakehouse-storage/index.html b/docs/next/maintenance/tiered-storage/lakehouse-storage/index.html
index 141bcbcca..ac38bade8 100644
--- a/docs/next/maintenance/tiered-storage/lakehouse-storage/index.html
+++ b/docs/next/maintenance/tiered-storage/lakehouse-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/tiered-storage/overview/index.html b/docs/next/maintenance/tiered-storage/overview/index.html
index 5c35ef97c..2043c5e42 100644
--- a/docs/next/maintenance/tiered-storage/overview/index.html
+++ b/docs/next/maintenance/tiered-storage/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/maintenance/tiered-storage/remote-storage/index.html b/docs/next/maintenance/tiered-storage/remote-storage/index.html
index 64a5a5090..bfa6b143b 100644
--- a/docs/next/maintenance/tiered-storage/remote-storage/index.html
+++ b/docs/next/maintenance/tiered-storage/remote-storage/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/quickstart/flink/index.html b/docs/next/quickstart/flink/index.html
index 7e9d1bbf7..d03fd0afc 100644
--- a/docs/next/quickstart/flink/index.html
+++ b/docs/next/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/quickstart/lakehouse/index.html b/docs/next/quickstart/lakehouse/index.html
index 4e512ac24..992ff5f4b 100644
--- a/docs/next/quickstart/lakehouse/index.html
+++ b/docs/next/quickstart/lakehouse/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/quickstart/security/index.html b/docs/next/quickstart/security/index.html
index 8a8993e6d..711bb8975 100644
--- a/docs/next/quickstart/security/index.html
+++ b/docs/next/quickstart/security/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/security/authentication/index.html b/docs/next/security/authentication/index.html
index d291e4529..7d49f1b7a 100644
--- a/docs/next/security/authentication/index.html
+++ b/docs/next/security/authentication/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/security/authorization/index.html b/docs/next/security/authorization/index.html
index 424540e61..467856c01 100644
--- a/docs/next/security/authorization/index.html
+++ b/docs/next/security/authorization/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/security/overview/index.html b/docs/next/security/overview/index.html
index 4c8a9eaf5..a1fa29dee 100644
--- a/docs/next/security/overview/index.html
+++ b/docs/next/security/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/streaming-lakehouse/integrate-data-lakes/catalogs/lakekeeper/index.html b/docs/next/streaming-lakehouse/integrate-data-lakes/catalogs/lakekeeper/index.html
index c30580fe1..124c16023 100644
--- a/docs/next/streaming-lakehouse/integrate-data-lakes/catalogs/lakekeeper/index.html
+++ b/docs/next/streaming-lakehouse/integrate-data-lakes/catalogs/lakekeeper/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/iceberg/index.html b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/iceberg/index.html
index bb5b71efb..84df74503 100644
--- a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/iceberg/index.html
+++ b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/iceberg/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/lance/index.html b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/lance/index.html
index 1791efbca..47c1bffc4 100644
--- a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/lance/index.html
+++ b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/lance/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/paimon/index.html b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/paimon/index.html
index ea751bf50..aec4a5307 100644
--- a/docs/next/streaming-lakehouse/integrate-data-lakes/formats/paimon/index.html
+++ b/docs/next/streaming-lakehouse/integrate-data-lakes/formats/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/streaming-lakehouse/overview/index.html b/docs/next/streaming-lakehouse/overview/index.html
index 6be30623f..b5e0af352 100644
--- a/docs/next/streaming-lakehouse/overview/index.html
+++ b/docs/next/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/data-distribution/bucketing/index.html b/docs/next/table-design/data-distribution/bucketing/index.html
index 43009b920..d86b66591 100644
--- a/docs/next/table-design/data-distribution/bucketing/index.html
+++ b/docs/next/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/data-distribution/partitioning/index.html b/docs/next/table-design/data-distribution/partitioning/index.html
index 5c9bf3447..6f807f99a 100644
--- a/docs/next/table-design/data-distribution/partitioning/index.html
+++ b/docs/next/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/data-distribution/ttl/index.html b/docs/next/table-design/data-distribution/ttl/index.html
index 768d0ff94..f3402b3f1 100644
--- a/docs/next/table-design/data-distribution/ttl/index.html
+++ b/docs/next/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/data-formats/index.html b/docs/next/table-design/data-formats/index.html
index 4aa0d4e1b..3cb3ba5db 100644
--- a/docs/next/table-design/data-formats/index.html
+++ b/docs/next/table-design/data-formats/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/data-types/index.html b/docs/next/table-design/data-types/index.html
index d5861be80..ca97018ea 100644
--- a/docs/next/table-design/data-types/index.html
+++ b/docs/next/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/merge-engines/aggregation/index.html b/docs/next/table-design/merge-engines/aggregation/index.html
index 39623287f..ff3bf8075 100644
--- a/docs/next/table-design/merge-engines/aggregation/index.html
+++ b/docs/next/table-design/merge-engines/aggregation/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/merge-engines/default/index.html b/docs/next/table-design/merge-engines/default/index.html
index 10baba596..a174a3d14 100644
--- a/docs/next/table-design/merge-engines/default/index.html
+++ b/docs/next/table-design/merge-engines/default/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/merge-engines/first-row/index.html b/docs/next/table-design/merge-engines/first-row/index.html
index 0d212974a..cebb13d65 100644
--- a/docs/next/table-design/merge-engines/first-row/index.html
+++ b/docs/next/table-design/merge-engines/first-row/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/merge-engines/index.html b/docs/next/table-design/merge-engines/index.html
index 68e730144..556d1c132 100644
--- a/docs/next/table-design/merge-engines/index.html
+++ b/docs/next/table-design/merge-engines/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/merge-engines/versioned/index.html b/docs/next/table-design/merge-engines/versioned/index.html
index 72d60c2f1..2b72ea665 100644
--- a/docs/next/table-design/merge-engines/versioned/index.html
+++ b/docs/next/table-design/merge-engines/versioned/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/overview/index.html b/docs/next/table-design/overview/index.html
index 7922ff717..8fc8e0f72 100644
--- a/docs/next/table-design/overview/index.html
+++ b/docs/next/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/table-types/log-table/index.html b/docs/next/table-design/table-types/log-table/index.html
index fcbe164b9..4ae9554f5 100644
--- a/docs/next/table-design/table-types/log-table/index.html
+++ b/docs/next/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/table-types/pk-table/index.html b/docs/next/table-design/table-types/pk-table/index.html
index 1e2547057..8ebcbaf20 100644
--- a/docs/next/table-design/table-types/pk-table/index.html
+++ b/docs/next/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/next/table-design/virtual-tables/index.html b/docs/next/table-design/virtual-tables/index.html
index 8c00d1692..36ef02a03 100644
--- a/docs/next/table-design/virtual-tables/index.html
+++ b/docs/next/table-design/virtual-tables/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/quickstart/flink/index.html b/docs/quickstart/flink/index.html
index 680134227..7ef1515e3 100644
--- a/docs/quickstart/flink/index.html
+++ b/docs/quickstart/flink/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/quickstart/lakehouse/index.html b/docs/quickstart/lakehouse/index.html
index a1a9bf2a3..f91508527 100644
--- a/docs/quickstart/lakehouse/index.html
+++ b/docs/quickstart/lakehouse/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/quickstart/security/index.html b/docs/quickstart/security/index.html
index f429deb31..bac91b244 100644
--- a/docs/quickstart/security/index.html
+++ b/docs/quickstart/security/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/security/authentication/index.html b/docs/security/authentication/index.html
index bc81114c2..018b65a0d 100644
--- a/docs/security/authentication/index.html
+++ b/docs/security/authentication/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/security/authorization/index.html b/docs/security/authorization/index.html
index a7d944270..2dfaa2208 100644
--- a/docs/security/authorization/index.html
+++ b/docs/security/authorization/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/security/overview/index.html b/docs/security/overview/index.html
index 4970038ca..7328652a3 100644
--- a/docs/security/overview/index.html
+++ b/docs/security/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/streaming-lakehouse/integrate-data-lakes/iceberg/index.html b/docs/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
index fc245434c..816f40731 100644
--- a/docs/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
+++ b/docs/streaming-lakehouse/integrate-data-lakes/iceberg/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/streaming-lakehouse/integrate-data-lakes/lance/index.html b/docs/streaming-lakehouse/integrate-data-lakes/lance/index.html
index e9643f6a0..0b44e978d 100644
--- a/docs/streaming-lakehouse/integrate-data-lakes/lance/index.html
+++ b/docs/streaming-lakehouse/integrate-data-lakes/lance/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/streaming-lakehouse/integrate-data-lakes/paimon/index.html b/docs/streaming-lakehouse/integrate-data-lakes/paimon/index.html
index 4635d3381..d862689ff 100644
--- a/docs/streaming-lakehouse/integrate-data-lakes/paimon/index.html
+++ b/docs/streaming-lakehouse/integrate-data-lakes/paimon/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/streaming-lakehouse/overview/index.html b/docs/streaming-lakehouse/overview/index.html
index 72b5e967e..c69335a98 100644
--- a/docs/streaming-lakehouse/overview/index.html
+++ b/docs/streaming-lakehouse/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/data-distribution/bucketing/index.html b/docs/table-design/data-distribution/bucketing/index.html
index 9eb088f68..03946e253 100644
--- a/docs/table-design/data-distribution/bucketing/index.html
+++ b/docs/table-design/data-distribution/bucketing/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/data-distribution/partitioning/index.html b/docs/table-design/data-distribution/partitioning/index.html
index 411fdd2b8..81b1de0d7 100644
--- a/docs/table-design/data-distribution/partitioning/index.html
+++ b/docs/table-design/data-distribution/partitioning/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/data-distribution/ttl/index.html b/docs/table-design/data-distribution/ttl/index.html
index 7047351c5..63e663a03 100644
--- a/docs/table-design/data-distribution/ttl/index.html
+++ b/docs/table-design/data-distribution/ttl/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/data-formats/index.html b/docs/table-design/data-formats/index.html
index b9a7b10de..f64a7373c 100644
--- a/docs/table-design/data-formats/index.html
+++ b/docs/table-design/data-formats/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/data-types/index.html b/docs/table-design/data-types/index.html
index 189f39484..b3da52bad 100644
--- a/docs/table-design/data-types/index.html
+++ b/docs/table-design/data-types/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/merge-engines/aggregation/index.html b/docs/table-design/merge-engines/aggregation/index.html
index e345194fe..0cee0709e 100644
--- a/docs/table-design/merge-engines/aggregation/index.html
+++ b/docs/table-design/merge-engines/aggregation/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/merge-engines/default/index.html b/docs/table-design/merge-engines/default/index.html
index ff0eb7c19..9d75aa3fa 100644
--- a/docs/table-design/merge-engines/default/index.html
+++ b/docs/table-design/merge-engines/default/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/merge-engines/first-row/index.html b/docs/table-design/merge-engines/first-row/index.html
index 94fac8e98..ff72d2579 100644
--- a/docs/table-design/merge-engines/first-row/index.html
+++ b/docs/table-design/merge-engines/first-row/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/merge-engines/index.html b/docs/table-design/merge-engines/index.html
index e0889ae2e..b42b5c030 100644
--- a/docs/table-design/merge-engines/index.html
+++ b/docs/table-design/merge-engines/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/merge-engines/versioned/index.html b/docs/table-design/merge-engines/versioned/index.html
index f1403b6af..61c946ac9 100644
--- a/docs/table-design/merge-engines/versioned/index.html
+++ b/docs/table-design/merge-engines/versioned/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/overview/index.html b/docs/table-design/overview/index.html
index c8fe9cec9..2683626fa 100644
--- a/docs/table-design/overview/index.html
+++ b/docs/table-design/overview/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/table-types/log-table/index.html b/docs/table-design/table-types/log-table/index.html
index db9ed5253..0f011cfff 100644
--- a/docs/table-design/table-types/log-table/index.html
+++ b/docs/table-design/table-types/log-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/table-types/pk-table/index.html b/docs/table-design/table-types/pk-table/index.html
index 0bfd772dc..ca8453dd6 100644
--- a/docs/table-design/table-types/pk-table/index.html
+++ b/docs/table-design/table-types/pk-table/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/docs/table-design/virtual-tables/index.html b/docs/table-design/virtual-tables/index.html
index 2c28779d2..67f8a1b30 100644
--- a/docs/table-design/virtual-tables/index.html
+++ b/docs/table-design/virtual-tables/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/downloads/index.html b/downloads/index.html
index 554c5354f..ec51481b5 100644
--- a/downloads/index.html
+++ b/downloads/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/index.html b/index.html
index b97d7d22b..a6ca3efc1 100644
--- a/index.html
+++ b/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/learn/talks/index.html b/learn/talks/index.html
index a365e7116..d79496f21 100644
--- a/learn/talks/index.html
+++ b/learn/talks/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/learn/videos/index.html b/learn/videos/index.html
index eac9cbd72..a695ab7d7 100644
--- a/learn/videos/index.html
+++ b/learn/videos/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/roadmap/index.html b/roadmap/index.html
index cb7d55f38..d287d8b63 100644
--- a/roadmap/index.html
+++ b/roadmap/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/search/index.html b/search/index.html
index f4537b040..9cdf6f4a8 100644
--- a/search/index.html
+++ b/search/index.html
@@ -24,8 +24,8 @@
<meta name="twitter:title" content="Apache Fluss · Streaming Storage for the Real-Time Lakehouse">
<meta name="twitter:description" content="Open-source columnar streaming storage with sub-second freshness, primary-key tables, Flink integration, and native tiering to Iceberg and Paimon.">
<meta name="theme-color" content="#102856"><link rel="stylesheet" href="/assets/css/styles.2382eb89.css">
-<script src="/assets/js/runtime~main.84321ecc.js" defer="defer"></script>
-<script src="/assets/js/main.094a27c3.js" defer="defer"></script>
+<script src="/assets/js/runtime~main.2d469763.js" defer="defer"></script>
+<script src="/assets/js/main.40c87326.js" defer="defer"></script>
</head>
<body>
<svg style="display: none;"><defs>
diff --git a/sitemap.xml b/sitemap.xml
index 26569af6b..1938dd45f 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://fluss.apache.org/blog/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://fluss.apache.org/blog/2025/12/02/fluss-x-i [...]
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://fluss.apache.org/blog/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://fluss.apache.org/blog/2025/12/02/fluss-x-i [...]
\ No newline at end of file
diff --git a/sw.js b/sw.js
index 8598a5b48..a0678a718 100644
--- a/sw.js
+++ b/sw.js
@@ -1 +1 @@
-(()=>{"use strict";var e={136(){try{self["workbox:core:7.4.0"]&&_()}catch(e){}},447(){try{self["workbox:precaching:7.4.0"]&&_()}catch(e){}},227(){try{self["workbox:routing:7.4.0"]&&_()}catch(e){}},390(){try{self["workbox:strategies:7.4.0"]&&_()}catch(e){}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,s),i.exports}s(136);const a=(e,...t)=>{let s=e;return t.length>0&&(s+=` :: ${JSON.stringify(t)}`),s};class n extends Error{co [...]
\ No newline at end of file
+(()=>{"use strict";var e={136(){try{self["workbox:core:7.4.0"]&&_()}catch(e){}},447(){try{self["workbox:precaching:7.4.0"]&&_()}catch(e){}},227(){try{self["workbox:routing:7.4.0"]&&_()}catch(e){}},390(){try{self["workbox:strategies:7.4.0"]&&_()}catch(e){}}},t={};function s(a){var n=t[a];if(void 0!==n)return n.exports;var i=t[a]={exports:{}};return e[a](i,i.exports,s),i.exports}s(136);const a=(e,...t)=>{let s=e;return t.length>0&&(s+=` :: ${JSON.stringify(t)}`),s};class n extends Error{co [...]
\ No newline at end of file