From 8b7d9ef14fee6872a7768d77dcf8650d13890e9d Mon Sep 17 00:00:00 2001 From: cooper-lzy <78672629+cooper-lzy@users.noreply.github.com> Date: Fri, 15 Oct 2021 13:36:38 +0800 Subject: [PATCH] add toss (#791) * add toss * Update 4.storage-service.md * Update 3.graph-config.md * Update 3.graph-config.md Co-authored-by: max.zhu@vesoft.com <86282370+izhuxiaoqing@users.noreply.github.com> --- .../3.nebula-graph-architecture/4.storage-service.md | 2 ++ .../1.configurations/3.graph-config.md | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/docs-2.0/1.introduction/3.nebula-graph-architecture/4.storage-service.md b/docs-2.0/1.introduction/3.nebula-graph-architecture/4.storage-service.md index 0bff7d5769a..89cea25c141 100644 --- a/docs-2.0/1.introduction/3.nebula-graph-architecture/4.storage-service.md +++ b/docs-2.0/1.introduction/3.nebula-graph-architecture/4.storage-service.md @@ -142,6 +142,8 @@ EdgeA_Out and EdgeA_In are stored in storage layer with opposite directions, con Like EdgeA_Out and EdgeA_In, Nebula Graph redundantly stores the information of each edge, which doubles the actual capacities needed for edge storage. The key corresponding to the edge occupies a small hard disk space, but the space occupied by Value is proportional to the length and amount of the property value. Therefore, it will occupy a relatively large hard disk space if the property value of the edge is large or there are many edge property values. +To ensure the final consistency of the two key-value pairs when operating on edges, enable the [TOSS function](../../5.configurations-and-logs/1.configurations/3.graph-config.md ). After that, the operation will be performed in Partition x first where the out-edge is located, and then in Partition y where the in-edge is located. Finally, the result is returned. + ### Partition algorithm Nebula Graph uses a **static Hash** strategy to shard data through a modulo operation on vertex ID. All the out-keys, in-keys, and tag data will be placed in the same partition. In this way, query efficiency is increased dramatically. diff --git a/docs-2.0/5.configurations-and-logs/1.configurations/3.graph-config.md b/docs-2.0/5.configurations-and-logs/1.configurations/3.graph-config.md index 358aa2a7a66..ba35fa8c545 100644 --- a/docs-2.0/5.configurations-and-logs/1.configurations/3.graph-config.md +++ b/docs-2.0/5.configurations-and-logs/1.configurations/3.graph-config.md @@ -93,3 +93,15 @@ For all parameters and their current values, see [Configurations](1.configuratio | ------------------- | ---------------- | ------------------------------------------ | |`enable_authorize` |`false` |When set to `false`, the system authentication is not enabled. For more information, see [Authentication](../../7.data-security/1.authentication/1.authentication.md).| |`auth_type` |`password` |Specifies the login method. Available values are `password`, `ldap`, and `cloud`.| + +## Experimental configurations + +| Name | Predefined value | Description | +| ------------------- | ------------------------ | ------------------------------------------ | +|`enable_experimental_feature`|`false`| Specifies the experimental feature. Optional values are `true` and `false`. For currently supported experimental features, see below.| + +### Experimental features + +| Name | Description | +| ------------------- | ------------------------------------------| +| TOSS | The TOSS (Transaction on Storage Side) function is used to ensure the final consistency of the `INSERT`, `UPDATE`, or `UPSERT` operations on edges (because one edge logically corresponds to two key-value pairs on the hard disk). The `DELETE` operation is not currently supported. After the TOSS function is enabled, the time delay of related operations will be increased by about one time. |