From e77a7363b109382f9c0ea3a98d0cf6607cc83199 Mon Sep 17 00:00:00 2001 From: Rui Liang Date: Fri, 24 Apr 2026 18:02:25 +0800 Subject: [PATCH] commit-message: remove dict encoding --- .../db-object-mgmt/ts-db/table-mgmt-ts.md | 12 +----------- .../db-object-mgmt/ts-db/table-mgmt-ts.md | 10 +--------- en/sql-reference/ddl/ts-db/ts-table.md | 9 +-------- sql-reference/ddl/ts-db/ts-table.md | 11 +---------- static/sql-reference/create_table_ts.png | Bin 26125 -> 29658 bytes 5 files changed, 4 insertions(+), 38 deletions(-) diff --git a/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md b/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md index acd7695..d494698 100644 --- a/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md +++ b/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md @@ -20,7 +20,6 @@ CREATE TABLE () [TAGS|ATTRIBUTES] () PRIMARY [TAGS|ATTRIBUTES] () [RETENTIONS ] -[DICT ENCODING] [COMMENT [=] <'comment_text'>] [WITH HASH()]; ``` @@ -30,7 +29,7 @@ PRIMARY [TAGS|ATTRIBUTES] () :::warning 说明 - 目前,时序表名、列名和标签名称不支持中文字符。 -- 配置可选参数时,必须严格按照 `[RETENTIONS ] [DICT ENCODING] [COMMENT [=] <'comment_text'>] [WITH HASH()]` 的顺序,否则系统将会报错。 +- 配置可选参数时,必须严格按照 `[RETENTIONS ] [COMMENT [=] <'comment_text'>] [WITH HASH()]` 的顺序,否则系统将会报错。 - 3.0.0 版本中,表活跃时间和分区间隔的配置不会生效。 ::: @@ -41,7 +40,6 @@ PRIMARY [TAGS|ATTRIBUTES] () | `tag_list`| 标签列表,支持添加一个或多个标签定义,最多可指定 `128` 个标签。标签定义包含标签名、数据类型和注释信息。
- 标签名的最大长度为 128 字节,支持指定 NOT NULL,默认为空值。不支持 TIMESTAMP、TIMESTAMPTZ、NVARCHAR 和 GEOMETRY 数据类型。
- 支持在 nullable 条件之后添加标签列的注释信息。 | | `primary_tag_list`| 主标签列表,支持添加一个或多个主标签名称,最多可指定 `4` 个。主标签必须包含在标签列表内且指定为 NOT NULL,不支持浮点类型和除 VARCHAR 之外的变长数据类型。VARCHAR 类型长度默认 `64` 字节,最大长度为 `128` 字节。| | `keep_duration` | 可选参数,设置表的数据生命周期。数据超过此时长后将被系统自动清除。
默认值: `0s`(永久保留)
时间单位:
- 秒:`s` 或 `second`
- 分钟:`m` 或 `minute`
- 小时:`h` 或 `hour`
- 天:`d` 或 `day`
- 周:`w` 或 `week`
- 月:`mon` 或 `month`
- 年:`y` 或 `year`
取值范围:正整数,上限为 1000 年
**说明:**
- 表级设置优先于库级设置。
- 保留时长越长,存储空间占用越大,请根据业务需求合理配置。
- 如果待写入的数据已超过生命周期限制,系统会直接丢弃该数据,不予写入。| -| `DICT ENCODING`| 可选参数,启用字符串的字典编码功能,提升字符串数据的压缩能力。表中存储的字符串数据重复率越高,压缩优化效果越明显。该功能只适用于 CHAR 和 VARCHAR 长度小于等于 `1023` 的字符串,且只能在建表时开启。开启后不支持禁用。 | | `[COMMENT [=] <'comment_text'>` | 可选项,定义表的注释信息。 | | `hash_value`| 可选参数,用于定义分布式集群中 HASH 环的大小,决定最大 Range 分片数量。例如 HASH(100) 表示最多可产生 100 个不同的 Range 分片。

默认值为 2000,表示最多可产生 2000 个 Range 分片。支持设置范围为 [1,50000]。

性能影响:HASH 值过小时将导致多个设备的数据集中在少数 Range 中,形成写入热点,HASH 值过大时则会导致 Range 数量过多,增加管理开销。

推荐配置:建议根据预期设备数量选择合适的 HASH 值:
- 设备数 ≤ 1,000:HASH 值 < 20
- 设备数 ≤ 50,000:HASH 值 < 2,000
- 设备数 ≤ 1,000,000:HASH 值 < 10,000| @@ -102,14 +100,6 @@ PRIMARY [TAGS|ATTRIBUTES] () (1 row) ``` -- 创建时序表并开启字符串字典编码。 - - 以下示例创建一个名为 `water` 的时序表并开启字符串字典编码。 - - ```sql - CREATE TABLE water (ts TIMESTAMP NOT NULL, value FLOAT) TAGS (sensor_id INT NOT NULL) PRIMARY TAGS (sensor_id) DICT ENCODING; - ``` - - 创建时序表并为表及其数据列和标签列添加注释信息。 以下示例创建一个名为 `device_info` 的时序表并为表及其数据列和标签列添加注释信息。 diff --git a/en/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md b/en/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md index 2057042..287d4ae 100644 --- a/en/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md +++ b/en/db-administration/db-object-mgmt/ts-db/table-mgmt-ts.md @@ -22,7 +22,6 @@ CREATE TABLE () [TAGS|ATTRIBUTES] () PRIMARY [TAGS|ATTRIBUTES] () [RETENTIONS ] -[DICT ENCODING] [COMMENT [=] <'comment_text'>] [WITH HASH()]; ``` @@ -32,7 +31,7 @@ PRIMARY [TAGS|ATTRIBUTES] () :::warning Note - Currently, the table name, column name, and tag name do not support Chinese characters. -- The optional parameters must be configured in an order of `[RETENTIONS ] [DICT ENCODING] [COMMENT [=] <'comment_text'>] [WITH HASH()]`. Otherwise, the system returns an error. +- The optional parameters must be configured in an order of `[RETENTIONS ] [COMMENT [=] <'comment_text'>] [WITH HASH()]`. Otherwise, the system returns an error. - In version 3.0.0, the `activetime` and `partition interval` configurations are ignored. ::: @@ -44,7 +43,6 @@ PRIMARY [TAGS|ATTRIBUTES] () | `tag_list`| A comma-separated list of tags. You can specify one or more tags. Each table supports up to 128 tags. Each tag requires a name and data type. The tag name supports up to 128 bytes. You can set the data type to NOT NULL. By default, the data type is set to NULL. KWDB does not support setting TIMESTAMP, TIMESTAMPTZ, NVARCHAR or GEOMETRY data types for time-series tables.
Support adding comments to tag columns after the nullable condition. | | `primary_tag_list`| A comma-separated list of primary tags. You can specify one or more primary tags. Each table supports up to 4 primary tags. Primary tags must be included in the list of tags and set to NOT NULL. Currently, primary tags does not support floating-point and variable-length data types, except for the VARCHAR data type. By default, a VARCHAR-typed data length is `64` bytes. The maximum of a VARCHAR-typed data length is `128` bytes. | | `keep_duration`| Optional. Defines the data retention period for the database. Data older than this duration will be automatically purged.
Default: `0s` (retain indefinitely)
Time units:
- Seconds: `s` or `second`
- Minutes: `m` or `minute`
- Hours: `h` or `hour`
- Days: `d` or `day`
- Weeks: `w` or `week`
- Months: `mon` or `month`
- Years: `y` or `year`
Valid range: Positive integer up to 1000 years
Note:
- Table-level retention settings override database-level settings.
- Longer retention periods consume more storage. Configure based on your business needs.
- Data that already exceeds the retention period at write time will be rejected and not stored. | -| `DICT ENCODING`| Optional. Enable dictionary encoding to improve the compression capability of STRING-typed data. The higher the repetition rate of the STRING-typed data is, the better the data is compressed. This function is only applied to CHAR- and VARCHAR-typed data whose length is less than or equal to `1023`. You can only enable it when creating a table. Once enabled, you cannot disable it. | | `comment_text` | Optional. Specify the comment to be associated to the table.| | `hash_value`| Optional. Defines the HASH ring size in a distributed cluster, which determines the maximum number of data ranges. For example, `HASH(100)` allows up to 100 distinct ranges.

Default: 2000 (up to 2000 ranges)
Valid range: [1, 50000]

Performance considerations:
- Too small: Data from multiple devices concentrates in fewer ranges, causing write hotspots
- Too large: Excessive ranges increase management overhead

Recommended values based on device count:
- ≤ 1,000 devices: `hash_value` < 20
- ≤ 50,000 devices: `hash_value` < 2,000
- ≤ 1,000,000 devices: `hash_value` < 10,000| @@ -101,12 +99,6 @@ PRIMARY [TAGS|ATTRIBUTES] () (1 row) ``` -- Create a table and enable dictionary encoding. - - ```sql - CREATE TABLE water (ts TIMESTAMP NOT NULL, value FLOAT) TAGS (sensor_id INT NOT NULL) PRIMARY TAGS (sensor_id) DICT ENCODING; - ``` - - Create a table and associate comments to the data columns, the tag columns and the table. This example creates a table named `device_info` and associates comments to the data columns, the tag columns and the table. diff --git a/en/sql-reference/ddl/ts-db/ts-table.md b/en/sql-reference/ddl/ts-db/ts-table.md index 125d217..6d3c2bc 100644 --- a/en/sql-reference/ddl/ts-db/ts-table.md +++ b/en/sql-reference/ddl/ts-db/ts-table.md @@ -24,7 +24,7 @@ The user must be a member of the `admin` role or have been granted the `CREATE` :::warning Note - Currently, the table name, column name, and tag name do not support Chinese characters. -- The optional parameters must be configured in an order of `[RETENTIONS ] [DICT ENCODING] [COMMENT [=] <'comment_text'>]`. Otherwise, the system returns an error. +- The optional parameters must be configured in an order of `[RETENTIONS ] [COMMENT [=] <'comment_text'>]`. Otherwise, the system returns an error. - In version 3.0.0, the `activetime` and `partition interval` configurations are ignored. ::: @@ -36,7 +36,6 @@ The user must be a member of the `admin` role or have been granted the `CREATE` | `tag_list`| A comma-separated list of tags. You can specify one or more tags. Each table supports up to 128 tags. Each tag requires a name and data type. The tag name supports up to 128 bytes. You can set the data type to NOT NULL. By default, the data type is set to NULL. KWDB does not support setting TIMESTAMP, TIMESTAMPTZ, NVARCHAR or GEOMETRY data types for time-series tables.
Support adding comments to tag columns after the nullable condition. | | `primary_tag_list`| A comma-separated list of primary tags. You can specify one or more primary tags. Each table supports up to 4 primary tags. Primary tags must be included in the list of tags and set to NOT NULL. Currently, primary tags does not support floating-point and variable-length data types, except for the VARCHAR data type. By default, a VARCHAR-typed data length is `64` bytes. The maximum of a VARCHAR-typed data length is `128` bytes. | | `keep_duration`| Optional. Defines the data retention period for the database. Data older than this duration will be automatically purged.
Default: `0s` (retain indefinitely)
Time units:
- Seconds: `s` or `second`
- Minutes: `m` or `minute`
- Hours: `h` or `hour`
- Days: `d` or `day`
- Weeks: `w` or `week`
- Months: `mon` or `month`
- Years: `y` or `year`
Valid range: Positive integer up to 1000 years
Note:
- Table-level retention settings override database-level settings.
- Longer retention periods consume more storage. Configure based on your business needs.
- Data that already exceeds the retention period at write time will be rejected and not stored. | -| `DICT ENCODING`| Optional. Enable dictionary encoding to improve the compression capability of STRING-typed data. The higher the repetition rate of the STRING-typed data is, the better the data is compressed. This function is only applied to CHAR- and VARCHAR-typed data whose length is less than or equal to `1023`. You can only enable it when creating a table. Once enabled, you cannot disable it. | | `comment_text` | Optional. Specify the comment to be associated to the table.| | `hash_value`| Optional. Defines the HASH ring size in a distributed cluster, which determines the maximum number of data ranges. For example, `HASH(100)` allows up to 100 distinct ranges.

Default: 2000 (up to 2000 ranges)
Valid range: [1, 50000]

Performance considerations:
- Too small: Data from multiple devices concentrates in fewer ranges, causing write hotspots
- Too large: Excessive ranges increase management overhead

Recommended values based on device count:
- ≤ 1,000 devices: `hash_value` < 20
- ≤ 50,000 devices: `hash_value` < 2,000
- ≤ 1,000,000 devices: `hash_value` < 10,000| @@ -93,12 +92,6 @@ The user must be a member of the `admin` role or have been granted the `CREATE` (1 row) ``` -- Create a table and enable dictionary encoding. - - ```sql - CREATE TABLE water (ts TIMESTAMP NOT NULL, value FLOAT) TAGS (sensor_id INT NOT NULL) PRIMARY TAGS (sensor_id) DICT ENCODING; - ``` - - Create a table and associate comments to the data columns, the tag columns and the table. This example creates a table named `device_info` and associates comments to the data columns, the tag columns and the table. diff --git a/sql-reference/ddl/ts-db/ts-table.md b/sql-reference/ddl/ts-db/ts-table.md index 2e0d89a..a4557cf 100644 --- a/sql-reference/ddl/ts-db/ts-table.md +++ b/sql-reference/ddl/ts-db/ts-table.md @@ -22,7 +22,7 @@ id: ts-table :::warning 说明 - 目前,时序表名、列名和标签名称不支持中文字符。 -- 配置可选参数时,必须严格按照 `[RETENTIONS ] [DICT ENCODING] [COMMENT [=] <'comment_text'>] [WITH HASH()]` 的顺序,否则系统将会报错。 +- 配置可选参数时,必须严格按照 `[RETENTIONS ] [COMMENT [=] <'comment_text'>] [WITH HASH()]` 的顺序,否则系统将会报错。 - 3.0.0 版本中,表活跃时间和分区间隔的配置不会生效。 ::: @@ -34,7 +34,6 @@ id: ts-table | `tag_list`| 标签列表,支持添加一个或多个标签定义,最多可指定 `128` 个标签。标签定义包含标签名、数据类型和注释信息。
- 标签名的最大长度为 128 字节,支持指定 NOT NULL,默认为空值。不支持 TIMESTAMP、TIMESTAMPTZ、NVARCHAR 和 GEOMETRY 数据类型。
- 支持在 nullable 条件之后添加标签列的注释信息。 | | `primary_tag_list`| 主标签列表,支持添加一个或多个主标签名称,最多可指定 `4` 个。主标签必须包含在标签列表内且指定为 NOT NULL,不支持浮点类型和除 VARCHAR 之外的变长数据类型。VARCHAR 类型长度默认 `64` 字节,最大长度为 `128` 字节。| | `keep_duration` | 可选参数,设置表的数据生命周期。数据超过此时长后将被系统自动清除。
默认值: `0s`(永久保留)
时间单位:
- 秒:`s` 或 `second`
- 分钟:`m` 或 `minute`
- 小时:`h` 或 `hour`
- 天:`d` 或 `day`
- 周:`w` 或 `week`
- 月:`mon` 或 `month`
- 年:`y` 或 `year`
取值范围:正整数,上限为 1000 年
**说明:**
- 表级设置优先于库级设置。
- 保留时长越长,存储空间占用越大,请根据业务需求合理配置。
- 如果待写入的数据已超过生命周期限制,系统会直接丢弃该数据,不予写入。| -| `DICT ENCODING`| 可选参数,启用字符串的字典编码功能,提升字符串数据的压缩能力。表中存储的字符串数据重复率越高,压缩优化效果越明显。该功能只适用于 CHAR 和 VARCHAR 长度小于等于 `1023` 的字符串,且只能在建表时开启。开启后不支持禁用。 | | `[COMMENT [=] <'comment_text'>` | 可选参数,定义表的注释信息。 | | `hash_value`| 可选参数,用于定义分布式集群中 HASH 环的大小,决定最大 Range 分片数量。例如 HASH(100) 表示最多可产生 100 个不同的 Range 分片。

默认值为 2000,表示最多可产生 2000 个 Range 分片。支持设置范围为 [1,50000]。

性能影响:HASH 值过小时将导致多个设备的数据集中在少数 Range 中,形成写入热点,HASH 值过大时则会导致 Range 数量过多,增加管理开销。

推荐配置:建议根据预期设备数量选择合适的 HASH 值:
- 设备数 ≤ 1,000:HASH 值 < 20
- 设备数 ≤ 50,000:HASH 值 < 2,000
- 设备数 ≤ 1,000,000:HASH 值 < 10,000 | @@ -95,14 +94,6 @@ id: ts-table (1 row) ``` -- 创建时序表并开启字符串字典编码。 - - 以下示例创建一个名为 `water` 的时序表并开启字符串字典编码。 - - ```sql - CREATE TABLE water (ts TIMESTAMP NOT NULL, value FLOAT) TAGS (sensor_id INT NOT NULL) PRIMARY TAGS (sensor_id) DICT ENCODING; - ``` - - 创建时序表并为表及其数据列和标签列添加注释信息。 以下示例创建一个名为 `device_info` 的时序表并为表及其数据列和标签列添加注释信息。 diff --git a/static/sql-reference/create_table_ts.png b/static/sql-reference/create_table_ts.png index 15ff1a12c6273823a379c5db1e219dadf99a2817..4af16bea633494da4ff000a8434728843bca1713 100644 GIT binary patch literal 29658 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 literal 26125 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 -- Gitee