Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -21,34 +21,34 @@

# 常见概念

## 数据模型相关概念
## 1 数据模型相关概念

### 数据模型(sql_dialect)
### 1.1 数据模型(sql_dialect)

IoTDB 支持两种时序数据模型(SQL语法),管理的对象均为设备和测点树:以层级路径的方式管理数据,一条路径对应一个设备的一个测点表;以关系表的方式管理数据,一张表对应一类设备。

### 元数据(Schema)
### 1.2 元数据(Schema)

元数据是数据库的数据模型信息,即树形结构或表结构。包括测点的名称、数据类型等定义。

### 设备(Device)
### 1.3 设备(Device)

对应一个实际场景中的物理设备,通常包含多个测点。

### 测点(Timeseries)
### 1.4 测点(Timeseries)

又名:物理量、时间序列、时间线、点位、信号量、指标、测量值等。<br>
测点是多个数据点按时间戳递增排列形成的一个时间序列。通常一个测点代表一个采集点位,能够定期采集所在环境的物理量。

### 编码(Encoding)
### 1.5 编码(Encoding)

编码是一种压缩技术,将数据以二进制的形式进行表示,可以提高存储效率。IoTDB 支持多种针对不同类型的数据的编码方法,详细信息请查看:[压缩和编码](../Technical-Insider/Encoding-and-Compression.md)。

### 压缩(Compression)
### 1.6 压缩(Compression)

IoTDB 在数据编码后,使用压缩技术进一步压缩二进制数据,提升存储效率。IoTDB 支持多种压缩方法,详细信息请查看:[压缩和编码](../Technical-Insider/Encoding-and-Compression.md)。

## 分布式相关概念
## 2 分布式相关概念

下图展示了一个常见的 IoTDB 3C3D(3 个 ConfigNode、3 个 DataNode)的集群部署模式:

Expand All @@ -63,23 +63,23 @@ IoTDB 的集群包括如下常见概念:
下文将对以上概念进行介绍。


### 节点
### 2.1 节点

IoTDB 集群包括三种节点(进程):ConfigNode(管理节点),DataNode(数据节点)和 AINode(分析节点),如下所示:

- ConfigNode:管理集群的节点信息、配置信息、用户权限、元数据、分区信息等,负责分布式操作的调度和负载均衡,所有 ConfigNode 之间互为全量备份,如上图中的 ConfigNode-1,ConfigNode-2 和 ConfigNode-3 所示。
- DataNode:服务客户端请求,负责数据的存储和计算,如上图中的 DataNode-1,DataNode-2 和 DataNode-3 所示。
- AINode:负责提供机器学习能力,支持注册已训练好的机器学习模型,并通过 SQL 调用模型进行推理,目前已内置自研时序大模型和常见的机器学习算法(如预测与异常检测)。

### 数据分区
### 2.2 数据分区

在 IoTDB 中,元数据和数据都被分为小的分区,即 Region,由集群的各个 DataNode 进行管理。

- SchemaRegion:元数据分区,管理一部分设备和测点的元数据。不同 DataNode 相同 RegionID 的 SchemaRegion 互为副本,如上图中 SchemaRegion-1 拥有三个副本,分别放置于 DataNode-1,DataNode-2 和 DataNode-3。
- DataRegion:数据分区,管理一部分设备的一段时间的数据。不同 DataNode 相同 RegionID 的 DataRegion 互为副本,如上图中 DataRegion-2 拥有两个副本,分别放置于 DataNode-1 和 DataNode-2。
- 具体分区算法可参考:[数据分区](../Technical-Insider/Cluster-data-partitioning.md)

### 多副本
### 2.3 多副本

数据和元数据的副本数可配置,不同部署模式下的副本数推荐如下配置,其中多副本时可提供高可用服务。

Expand All @@ -89,28 +89,28 @@ IoTDB 集群包括三种节点(进程):ConfigNode(管理节点),Data
| 数据 | data_replication_factor | 1 | 2 |


## 部署相关概念
## 3 部署相关概念

IoTDB 有两种运行模式:单机模式、集群模式。

### 单机模式
### 3.1 单机模式

IoTDB单机实例包括 1 个ConfigNode、1个DataNode,即1C1D;

- **特点**:便于开发者安装部署,部署和维护成本较低,操作方便。
- **适用场景**:资源有限或对高可用要求不高的场景,例如边缘端服务器。
- **部署方法**:[单机版部署](../Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md)
- **部署方法**:[单机版部署](../Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md)


### 集群模式
### 3.2 集群模式

IoTDB 集群实例为 3 个ConfigNode 和不少于 3 个 DataNode,通常为 3 个 DataNode,即3C3D;当部分节点出现故障时,剩余节点仍然能对外提供服务,保证数据库服务的高可用性,且可随节点增加提升数据库性能。

- **特点**:具有高可用性、高扩展性,可通过增加 DataNode 提高系统性能。
- **适用场景**:需要提供高可用和可靠性的企业级应用场景。
- **部署方法**:[集群版部署](../Deployment-and-Maintenance/Cluster-Deployment_timecho.md)
- **部署方法**:[集群版部署](../Deployment-and-Maintenance/Cluster-Deployment_apache.md)

### 特点总结
### 3.3 特点总结

| 维度 | 单机模式 | 集群模式 |
| ------------ | ---------------------------- | ------------------------ |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,34 +21,34 @@

# 常见概念

## 数据模型相关概念
## 1 数据模型相关概念

### 数据模型(sql_dialect)
### 1.1 数据模型(sql_dialect)

IoTDB 支持两种时序数据模型(SQL语法),管理的对象均为设备和测点树:以层级路径的方式管理数据,一条路径对应一个设备的一个测点表;以关系表的方式管理数据,一张表对应一类设备。

### 元数据(Schema)
### 1.2 元数据(Schema)

元数据是数据库的数据模型信息,即树形结构或表结构。包括测点的名称、数据类型等定义。

### 设备(Device)
### 1.3 设备(Device)

对应一个实际场景中的物理设备,通常包含多个测点。

### 测点(Timeseries)
### 1.4 测点(Timeseries)

又名:物理量、时间序列、时间线、点位、信号量、指标、测量值等。<br>
测点是多个数据点按时间戳递增排列形成的一个时间序列。通常一个测点代表一个采集点位,能够定期采集所在环境的物理量。

### 编码(Encoding)
### 1.5 编码(Encoding)

编码是一种压缩技术,将数据以二进制的形式进行表示,可以提高存储效率。IoTDB 支持多种针对不同类型的数据的编码方法,详细信息请查看:[压缩和编码](../Technical-Insider/Encoding-and-Compression.md)。

### 压缩(Compression)
### 1.6 压缩(Compression)

IoTDB 在数据编码后,使用压缩技术进一步压缩二进制数据,提升存储效率。IoTDB 支持多种压缩方法,详细信息请查看:[压缩和编码](../Technical-Insider/Encoding-and-Compression.md)。

## 分布式相关概念
## 2 分布式相关概念

下图展示了一个常见的 IoTDB 3C3D(3 个 ConfigNode、3 个 DataNode)的集群部署模式:

Expand All @@ -63,23 +63,23 @@ IoTDB 的集群包括如下常见概念:
下文将对以上概念进行介绍。


### 节点
### 2.1 节点

IoTDB 集群包括三种节点(进程):ConfigNode(管理节点),DataNode(数据节点)和 AINode(分析节点),如下所示:

- ConfigNode:管理集群的节点信息、配置信息、用户权限、元数据、分区信息等,负责分布式操作的调度和负载均衡,所有 ConfigNode 之间互为全量备份,如上图中的 ConfigNode-1,ConfigNode-2 和 ConfigNode-3 所示。
- DataNode:服务客户端请求,负责数据的存储和计算,如上图中的 DataNode-1,DataNode-2 和 DataNode-3 所示。
- AINode:负责提供机器学习能力,支持注册已训练好的机器学习模型,并通过 SQL 调用模型进行推理,目前已内置自研时序大模型和常见的机器学习算法(如预测与异常检测)。

### 数据分区
### 2.2 数据分区

在 IoTDB 中,元数据和数据都被分为小的分区,即 Region,由集群的各个 DataNode 进行管理。

- SchemaRegion:元数据分区,管理一部分设备和测点的元数据。不同 DataNode 相同 RegionID 的 SchemaRegion 互为副本,如上图中 SchemaRegion-1 拥有三个副本,分别放置于 DataNode-1,DataNode-2 和 DataNode-3。
- DataRegion:数据分区,管理一部分设备的一段时间的数据。不同 DataNode 相同 RegionID 的 DataRegion 互为副本,如上图中 DataRegion-2 拥有两个副本,分别放置于 DataNode-1 和 DataNode-2。
- 具体分区算法可参考:[数据分区](../Technical-Insider/Cluster-data-partitioning.md)

### 多副本
### 2.3 多副本

数据和元数据的副本数可配置,不同部署模式下的副本数推荐如下配置,其中多副本时可提供高可用服务。

Expand All @@ -89,19 +89,19 @@ IoTDB 集群包括三种节点(进程):ConfigNode(管理节点),Data
| 数据 | data_replication_factor | 1 | 2 |


## 部署相关概念
## 3 部署相关概念

IoTDB 有三种运行模式:单机模式、集群模式和双活模式。

### 单机模式
### 3.1 单机模式

IoTDB单机实例包括 1 个ConfigNode、1个DataNode,即1C1D;

- **特点**:便于开发者安装部署,部署和维护成本较低,操作方便。
- **适用场景**:资源有限或对高可用要求不高的场景,例如边缘端服务器。
- **部署方法**:[单机版部署](../Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md)

### 双活模式
### 3.2 双活模式

双活版部署为 TimechoDB 企业版功能,是指两个独立的实例进行双向同步,能同时对外提供服务。当一台停机重启后,另一个实例会将缺失数据断点续传。

Expand All @@ -111,15 +111,15 @@ IoTDB单机实例包括 1 个ConfigNode、1个DataNode,即1C1D;
- **适用场景**:资源有限(仅有两台服务器),但希望获得高可用能力。
- **部署方法**:[双活版部署](../Deployment-and-Maintenance/Dual-Active-Deployment_timecho.md)

### 集群模式
### 3.3 集群模式

IoTDB 集群实例为 3 个ConfigNode 和不少于 3 个 DataNode,通常为 3 个 DataNode,即3C3D;当部分节点出现故障时,剩余节点仍然能对外提供服务,保证数据库服务的高可用性,且可随节点增加提升数据库性能。

- **特点**:具有高可用性、高扩展性,可通过增加 DataNode 提高系统性能。
- **适用场景**:需要提供高可用和可靠性的企业级应用场景。
- **部署方法**:[集群版部署](../Deployment-and-Maintenance/Cluster-Deployment_timecho.md)

### 特点总结
### 3.4 特点总结

| 维度 | 单机模式 | 双活模式 | 集群模式 |
| ------------ | ---------------------------- | ------------------------ | ------------------------ |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
-->
# 时序数据模型

## 1. 什么叫时序数据?
## 1 什么叫时序数据?

万物互联的今天,物联网场景、工业场景等各类场景都在进行数字化转型,人们通过在各类设备上安装传感器对设备的各类状态进行采集。如电机采集电压、电流,风机的叶片转速、角速度、发电功率;车辆采集经纬度、速度、油耗;桥梁的振动频率、挠度、位移量等。传感器的数据采集,已经渗透在各个行业中。

Expand All @@ -33,7 +33,7 @@

传感器产生的海量时序数据是各行各业数字化转型的基础,因此我们对时序数据的模型梳理主要围绕设备、传感器展开。

## 2. 时序数据中的关键概念有哪些?
## 2 时序数据中的关键概念有哪些?

时序数据中主要涉及的概念如下。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 数据库管理

## 1. 数据库管理
## 1 数据库管理

### 1.1 创建数据库

Expand Down
4 changes: 2 additions & 2 deletions src/zh/UserGuide/Master/Table/Basic-Concept/Delete-Data.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 数据删除

## 1. 数据删除:
## 1 数据删除:

数据删除可以通过 delete 语句来完成,其中可以通过指定标签和时间的过滤条件来删除部分数据。

Expand Down Expand Up @@ -92,7 +92,7 @@ DELETE FROM table1
DELETE FROM table1 WHERE model_id = 'B'
```

## 2. 设备删除:
## 2 设备删除:

当一个设备写入后,在 IoTDB 中即保留了其元数据,数据删除语句无法删除设备的元数据,可以使用设备删除语句删除设备的所有数据和元数据。

Expand Down
7 changes: 4 additions & 3 deletions src/zh/UserGuide/Master/Table/Basic-Concept/Query-Data.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 数据查询

## 1. 语法概览
## 1 语法概览

```SQL
SELECT ⟨select_list⟩
Expand All @@ -47,12 +47,13 @@ IoTDB 查询语法提供以下子句:
- OFFSET 子句:用于指定查询结果的起始位置,即跳过前 OFFSET 行。与 LIMIT 子句配合使用。详细语法见:[LIMIT 和 OFFSET 子句](../SQL-Manual/Limit-Offset-Clause.md)
- LIMIT 子句:限制查询结果的行数,通常与 OFFSET 子句一起使用以实现分页功能。详细语法见:[LIMIT 和 OFFSET 子句](../SQL-Manual/Limit-Offset-Clause.md)

## 2. 子句执行顺序
## 2 子句执行顺序

![](/img/%E5%AD%90%E5%8F%A5%E6%89%A7%E8%A1%8C%E9%A1%BA%E5%BA%8F01.png)


## 3. 常见查询示例

## 3 常见查询示例

### 3.1 示例数据

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 过期自动删除(TTL)

## 1. 概览
## 1 概览

IoTDB支持表级的数据自动过期删除(TTL)设置,允许系统自动定期删除旧数据,以有效控制磁盘空间并维护高性能查询和低内存占用。TTL默认以毫秒为单位,数据过期后不可查询且禁止写入,但物理删除会延迟至压缩时。需注意,TTL变更可能导致短暂数据可查询性变化。

Expand All @@ -31,7 +31,7 @@ IoTDB支持表级的数据自动过期删除(TTL)设置,允许系统自动
2. TTL变更可能影响数据的可查询性。
3. 系统最终会移除过期数据,但存在延迟。

## 2. 设置 TTL
## 2 设置 TTL

在表模型中,IoTDB 的 TTL 是按照表的粒度生效的。可以直接在表上设置 TTL,或者在数据库级别设置 TTL。当在数据库级别设置了TTL时,在创建新表的过程中,系统会自动采用这个TTL值作为新表的默认设置,但每个表仍然可以独立地被设置或覆盖该值。

Expand Down Expand Up @@ -89,15 +89,15 @@ use db
CREATE TABLE test3 ("场站" string id, "温度" int32) with (ttl='INF')
```

## 3. 取消 TTL
## 3 取消 TTL

取消 TTL 设置,可以修改表的 TTL 设置为 'INF'。目前,IoTDB 不支持修改数据库的 TTL。

```SQL
ALTER TABLE tableB set properties TTL='INF'
```

## 4. 查看 TTL 信息
## 4 查看 TTL 信息

使用 "SHOW DATABASES" 和 "SHOW TABLES" 命令可以直接显示数据库和表的 TTL 详情。数据库和表管理语句详情可见:[数据库管理](../Basic-Concept/Database-Management.md)、[表管理](../Basic-Concept/Table-Management.md)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 表管理

## 1. 表管理
## 1 表管理

### 1.1 创建表

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

# 数据写入&更新

## 1. 数据写入
## 1 数据写入

### 1.1 语法

Expand Down Expand Up @@ -178,7 +178,7 @@ values
- 如果在 SQL 语句中引用了表中不存在的列,IoTDB 将返回错误码 `COLUMN_NOT_EXIST(616)`。
- 如果写入的数据类型与表中列的数据类型不一致,将报错 `DATA_TYPE_MISMATCH(507)`。

## 2. 数据更新
## 2 数据更新

### 2.1 语法

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,23 @@

IoTDB 有两种运行模式:单机模式、集群模式。

## 单机模式
## 1 单机模式

IoTDB单机实例包括 1 个ConfigNode、1个DataNode,即1C1D;

- **特点**:便于开发者安装部署,部署和维护成本较低,操作方便。
- **适用场景**:资源有限或对高可用要求不高的场景,例如边缘端服务器。
- **部署方法**:[单机版部署](../Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md)

## 集群模式
## 2 集群模式

IoTDB 集群实例为 3 个ConfigNode 和不少于 3 个 DataNode,通常为 3 个 DataNode,即3C3D;当部分节点出现故障时,剩余节点仍然能对外提供服务,保证数据库服务的高可用性,且可随节点增加提升数据库性能。

- **特点**:具有高可用性、高扩展性,可通过增加 DataNode 提高系统性能。
- **适用场景**:需要提供高可用和可靠性的企业级应用场景。
- **部署方法**:[集群版部署](../Deployment-and-Maintenance/Cluster-Deployment_apache.md)

## 特点总结
## 3 特点总结

| 维度 | 单机模式 | 集群模式 |
| ------------ | ---------------------------- | ------------------------ |
Expand Down
Loading