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

Reply via email to