This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 4d5e676e1 [doc] Introduce deletion vector documentation page (#3107)
4d5e676e1 is described below
commit 4d5e676e1e8037b923ae54628e3f24be88604657
Author: Zouxxyy <[email protected]>
AuthorDate: Thu Mar 28 13:51:18 2024 +0800
[doc] Introduce deletion vector documentation page (#3107)
---
.../concepts/primary-key-table/deletion-vectors.md | 51 +++++++++++++++++++++
docs/static/img/deletion-vectors-overview.png | Bin 0 -> 197804 bytes
2 files changed, 51 insertions(+)
diff --git a/docs/content/concepts/primary-key-table/deletion-vectors.md
b/docs/content/concepts/primary-key-table/deletion-vectors.md
new file mode 100644
index 000000000..a726b5f26
--- /dev/null
+++ b/docs/content/concepts/primary-key-table/deletion-vectors.md
@@ -0,0 +1,51 @@
+---
+title: "Deletion Vectors"
+weight: 6
+type: docs
+aliases:
+- /concepts/primary-key-table/deletion-vectors.html
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+# Deletion Vectors
+
+## Overview
+
+The Deletion Vectors mode is designed to takes into account both data reading
and writing efficiency.
+
+In this mode, additional overhead (looking up LSM Tree and generating the
corresponding Deletion File) will be introduced during writing,
+but during reading, data can be directly retrieved by employing data with
deletion vectors, avoiding additional merge costs between different files.
+
+Furthermore, data reading concurrency is no longer limited, and non-primary
key columns can also be used for filter push down.
+Generally speaking, in this mode, we can get a huge improvement in read
performance without losing too much write performance.
+
+{{< img src="/img/deletion-vectors-overview.png">}}
+
+## Usage
+
+By specifying `'deletion-vectors.enabled' = 'true'`, the Deletion Vectors mode
can be enabled.
+
+## Limitation
+
+- Only primary key table supports this feature.
+- `changelog-producer` needs to be `none` or `lookup`.
+- `changelog-producer.lookup-wait` can't be `false`.
+- `merge-engine` can't be `first-row`, because the read of first-row is
already no merging, deletion vectors are not needed.
+- This mode will filter the data in level-0, so when using time travel to read
`APPEND` snapshot, there will be data delay.
diff --git a/docs/static/img/deletion-vectors-overview.png
b/docs/static/img/deletion-vectors-overview.png
new file mode 100644
index 000000000..9b236bb7a
Binary files /dev/null and b/docs/static/img/deletion-vectors-overview.png
differ