From ea2b2ba829919549d058ee99f42d6678332dd3d1 Mon Sep 17 00:00:00 2001 From: Abby <78209557+abby-cyber@users.noreply.github.com> Date: Fri, 6 Jan 2023 16:53:24 +0800 Subject: [PATCH 1/5] Historical-data-may-never-expire --- docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md index c82da48ef9..a6c8151b5e 100644 --- a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md +++ b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md @@ -49,9 +49,10 @@ nGQL 支持的 TTL 选项如下。 |`ttl_col`|指定要设置存活时间的属性。属性的数据类型必须是`int`或者`timestamp`。| |`ttl_duration`|指定时间戳差值,单位:秒。时间戳差值必须为 64 位非负整数。属性值和时间戳差值之和如果小于当前时间戳,属性就会过期。如果`ttl_duration`为`0`,属性永不过期。| -!!! Note +!!! Caution - 当给值为`NULL`的属性设置 TTL 时,TTL 功能不会生效。 + 当给值为`NULL`或者`now()`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 + ## 使用 TTL 选项 From f9b7f7821337c2969ead08ede99e33ad9842dc5e Mon Sep 17 00:00:00 2001 From: Abby <78209557+abby-cyber@users.noreply.github.com> Date: Fri, 6 Jan 2023 20:05:32 +0800 Subject: [PATCH 2/5] Update ttl-options.md --- .../8.clauses-and-options/ttl-options.md | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md index a6c8151b5e..8c305ebfeb 100644 --- a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md +++ b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md @@ -16,6 +16,15 @@ TTL(Time To Live)指定属性的存活时间,超时后,该属性就会 - 如果已有 TTL,可以再添加 INDEX。 +## TTL 选项 + +nGQL 支持的 TTL 选项如下。 + +|选项|说明| +|:---|:---| +|`ttl_col`|指定要设置存活时间的属性。属性的数据类型必须是`int`或者`timestamp`。| +|`ttl_duration`|指定时间戳差值,单位:秒。时间戳差值必须为 64 位非负整数。属性值和时间戳差值之和如果小于当前时间戳,属性就会过期。如果`ttl_duration`为`0`,属性永不过期。| + ## 属性过期 ### 点属性过期 @@ -26,6 +35,12 @@ TTL(Time To Live)指定属性的存活时间,超时后,该属性就会 - 如果一个点有多个 Tag,点上的一个属性过期,和该属性相同 Tag 的其他属性也会过期,但是点不会过期,点上其他 Tag 的属性保持不变。 +!!! Caution + + - 当给值为`NULL`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 + + - 如果为一个 Tag 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Tag 的历史数据不会过期,因为历史数据的该属性值为当前时间戳。 + ### 边属性过期 因为一条边仅有一个 Edge type,边上的一个属性过期,边也会过期。 @@ -40,20 +55,6 @@ NebulaGraph 自动删除过期数据后,会在下一次 [Compaction](../../8.s 如果[关闭 TTL 选项](#ttl_1),上一次 Compaction 之后的过期数据将可以被查询到。 -## TTL 选项 - -nGQL 支持的 TTL 选项如下。 - -|选项|说明| -|:---|:---| -|`ttl_col`|指定要设置存活时间的属性。属性的数据类型必须是`int`或者`timestamp`。| -|`ttl_duration`|指定时间戳差值,单位:秒。时间戳差值必须为 64 位非负整数。属性值和时间戳差值之和如果小于当前时间戳,属性就会过期。如果`ttl_duration`为`0`,属性永不过期。| - -!!! Caution - - 当给值为`NULL`或者`now()`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 - - ## 使用 TTL 选项 ### Tag 或 Edge type 已存在 From 468c1b29b9a4b574ed8473c22fd67f2ba680584c Mon Sep 17 00:00:00 2001 From: Abby <78209557+abby-cyber@users.noreply.github.com> Date: Fri, 6 Jan 2023 20:18:43 +0800 Subject: [PATCH 3/5] Update ttl-options.md --- docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md index 8c305ebfeb..a33b98b930 100644 --- a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md +++ b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md @@ -35,7 +35,7 @@ nGQL 支持的 TTL 选项如下。 - 如果一个点有多个 Tag,点上的一个属性过期,和该属性相同 Tag 的其他属性也会过期,但是点不会过期,点上其他 Tag 的属性保持不变。 -!!! Caution +!!! caution - 当给值为`NULL`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 @@ -45,6 +45,10 @@ nGQL 支持的 TTL 选项如下。 因为一条边仅有一个 Edge type,边上的一个属性过期,边也会过期。 +!!! caution + + 如果为一个 Edge type 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Edge type 的历史数据不会过期,因为历史数据的该属性值为当前时间戳。 + ## 过期处理 属性过期后,对应的过期数据仍然存储在硬盘上,但是查询时会过滤过期数据。 From a21b8044203ba7cf751304713472b7bcf7655d10 Mon Sep 17 00:00:00 2001 From: Abby <78209557+abby-cyber@users.noreply.github.com> Date: Fri, 6 Jan 2023 20:41:54 +0800 Subject: [PATCH 4/5] Update ttl-options.md --- .../8.clauses-and-options/ttl-options.md | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md index a33b98b930..6949718187 100644 --- a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md +++ b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md @@ -27,6 +27,12 @@ nGQL 支持的 TTL 选项如下。 ## 属性过期 +!!! caution + + - 当给值为`NULL`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 + + - 如果为一个 Tag 或 Edge type 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Tag 或 Edge type 相关的历史数据不会过期,因为历史数据的该属性值为当前时间戳。 + ### 点属性过期 点属性过期有如下影响: @@ -35,20 +41,10 @@ nGQL 支持的 TTL 选项如下。 - 如果一个点有多个 Tag,点上的一个属性过期,和该属性相同 Tag 的其他属性也会过期,但是点不会过期,点上其他 Tag 的属性保持不变。 -!!! caution - - - 当给值为`NULL`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 - - - 如果为一个 Tag 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Tag 的历史数据不会过期,因为历史数据的该属性值为当前时间戳。 - ### 边属性过期 因为一条边仅有一个 Edge type,边上的一个属性过期,边也会过期。 -!!! caution - - 如果为一个 Edge type 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Edge type 的历史数据不会过期,因为历史数据的该属性值为当前时间戳。 - ## 过期处理 属性过期后,对应的过期数据仍然存储在硬盘上,但是查询时会过滤过期数据。 From 6d284182ff8e7ed07402cc102aca77fa84ae0abd Mon Sep 17 00:00:00 2001 From: Abby <78209557+abby-cyber@users.noreply.github.com> Date: Fri, 6 Jan 2023 20:43:33 +0800 Subject: [PATCH 5/5] Update ttl-options.md --- docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md index 6949718187..b99a648c4d 100644 --- a/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md +++ b/docs-2.0/3.ngql-guide/8.clauses-and-options/ttl-options.md @@ -29,7 +29,7 @@ nGQL 支持的 TTL 选项如下。 !!! caution - - 当给值为`NULL`的属性名设置 TTL 时,TTL 功能不会生效,即该属性永不过期。 + - 当为一个 Tag 或 Edge type 的属性设置 TTL 并该属性的值为`NULL`时,TTL 功能不会生效,即该属性永不过期。 - 如果为一个 Tag 或 Edge type 新增默认值为`now()`的属性并且该属性设置了 TTL,该 Tag 或 Edge type 相关的历史数据不会过期,因为历史数据的该属性值为当前时间戳。