Skip to content

Commit 2cb16cc

Browse files
authored
docs: v2.3.12 (#252)
1 parent 9cf0d96 commit 2cb16cc

File tree

4 files changed

+69
-3
lines changed

4 files changed

+69
-3
lines changed

zh_CN/admin/configuration-fields/ts-engine.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,12 @@
1818
# 缓存 SST 文件的结构化元信息,用于条件过滤以加速查询。
1919
# 缓存配置过小,在文件较多时,可能导致缓存频繁换入换出,影响性能,可通过监控面板观察缓存的使用情况。
2020
# 关于如何配置该缓存大小,可参考[高性能查询](https://docs.datalayers.cn/datalayers/latest/development-guide/high-performance-reading.html)
21-
# Default: 512M
22-
meta_cache_size = "512M"
21+
# Default: 2GB
22+
meta_cache_size = "2GB"
23+
24+
# 配置 LAST CACHE 最大可使用内存,设置为 0 表示禁用 LAST CACHE.
25+
# Default: 2GB
26+
last_cache_size = "2GB"
2327

2428
# 服务启动时,预加载最近生成的文件的元信息。
2529
# 在`meta_cache_size` 配置的缓存容量足够的情况下,系统将加载所有 SST 文件的结构化元信息

zh_CN/development-guide/high-performance-reading.md

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ path = "/var/lib/datalayers/cache/file"
4949

5050
注:当内存、磁盘设置较小、且查询场景无热点数据,导致缓存数据被高频换入、换出影响查询性能。
5151

52-
## Hints
52+
## SQL Hints
5353

5454
SQL Hints 是一种在 SQL 查询中嵌入的特殊指令,用于指导数据库优化器选择特定的执行计划,从而提升查询性能或解决优化器的决策偏差。Datalayers 在 v2.3.9 开始支持该特性。
5555

@@ -63,4 +63,42 @@ SELECT /*+ SET_VAR(parallel_degree=1) */ * FROM table;
6363

6464
在查询时,Datalayers 默认策略会尝试调度更多的 CPU 资源,通过并行化将任务拆分为多个子任务(如数据分片、并行扫描、聚合)来加速查询。这种逻辑对于数据量较大时有显著优势,但对于小查询则会带来一定的副作用。因此在小查询时通过指定并行度,可极大提升查询 QPS 与性能。在时序场景,一般来说查询某设备一小段时间范围内的数据,建议设置 `parallel_degree=1`,可显著提升系统查询的 QPS。
6565

66+
## LAST CACHE
67+
在时序场景中,经常需要查询 点/设备 最新一行的数据记录,用于追踪设备最新状态。Datalayers 在 `v2.3.12` 版本中,引入 LAST CACHE,用于缓存设备、点位最新一行数据,以加速查询。
6668

69+
如需启用 LAST CACHE,需通过以下两个步骤:
70+
71+
### 配置 LAST CACHE
72+
73+
```toml
74+
# Cache size for last value. Setting it to 0 to disable the cache.
75+
# Default: 2GB
76+
last_cache_size = "2GB"
77+
```
78+
该配置表示当前节点,LAST CACHE 最多使用 2GB 内存。
79+
80+
### 启用 LAST CACHE
81+
82+
```sql
83+
CREATE TABLE `t` (
84+
`ts` TIMESTAMP(9) NOT NULL DEFAULT CURRENT_TIMESTAMP,
85+
`sid` INT32 NOT NULL,
86+
`value` REAL,
87+
`flag` INT8,
88+
TIMESTAMP KEY(`ts`)
89+
)
90+
PARTITION BY HASH (`sid`) PARTITIONS 2
91+
ENGINE=TimeSeries
92+
WITH (
93+
ENABLE_LAST_CACHE=TRUE,
94+
UPDATE_MODE=APPEND
95+
)
96+
```
97+
在 table options 中,将ENABLE_LAST_CACHE设置为 true,即为该 table 启动了 LAST CACHE。
98+
99+
通过上述配置后,即可对下面相关 SQL 进行加速查询。
100+
101+
- select * from t where sid = 1 order by ts desc limit 1
102+
- select value from t where sid = 1 or sid = 2 order by ts desc limit 1
103+
- select last_value(value order by ts) from t where sid in (1,2,3)
104+
- select first_value(value order by ts desc) from t where sid = 1 or sid in (2,3)

zh_CN/releases/changes.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,28 @@
11
# CHANGELOG
22

3+
## 2.3.12
4+
5+
发布日期: 2025-09-24
6+
7+
## 🚀 新功能
8+
### LAST CACHE(时序引擎最新值缓存)
9+
- **核心功能**:为时序引擎新增点位最新值缓存机制,显著提升最新数据查询速度
10+
- **性能提升**:查询性能提升数十倍,特别适用于高频访问最新数据的场景(如实时监控大屏)
11+
12+
## ⚡ 性能提升
13+
### 查询优化
14+
- 优化查询路径逻辑,在 **高并发场景下** 查询 QPS 提升 **10%+**
15+
16+
### 内存优化
17+
- 调整元数据缓存策略,降低服务运行内存占用
18+
19+
## 🔍 其它
20+
- 提供更多维度的运行指标,便于实时观测系统健康状态
21+
- 基础镜像从 **Ubuntu 22.04** 升级至 **Ubuntu 24.04**
22+
- 调整日志格式,关键信息更清晰易读,便于快速定位问题
23+
- 优化进程退出逻辑
24+
- 关系引擎的基础框架代码合入
25+
326
## 2.3.11
427

528
发布日期: 2025-09-08

zh_CN/sql-reference/table-engine/timeseries.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ PARTITION BY HASH(column_list) PARTITIONS 2
6060
| COMPACT_MAX_FILE_SIZE | 可合并文件的最大尺寸,缺省值为:`300MiB`,支持单位:B、KiB、MiB、GiB、TiB、PiB。 此设置表示当待合并文件大小超过时,不再合并这个文件,注意这个值不是对目标文件的强制大小限制,允许出现合并结果文件大小大于此设置。 |
6161
| COMPACT_TIME | 非活跃窗口合并的工作时间,缺省值为当前系统设置时区的 `02:00~06:00`。支持 UTC 时区设置形式如: UTC,02:00\~06:00 支持多时间窗口设置形式如: UTC,02:00\~04:00,13:00\~15:00,不允许多个时间窗口重叠,允许时间跨凌晨如:23:00\~02:00 |
6262
| COMPACT_MODE | Compaction 支持的模式,缺省值为:`[COMPACT,TTL]`,支持选项:COMPACT,TTL,Delta,可以组合使用。当组合多个选项时,需以'[]'括起来,中间以英文逗号分隔,例如: `[COMPACT,TTL,Delta]`。如需关闭 Compaction,则指定为 Disable |
63+
| ENABLE_LAST_CACHE | 是否缓存点位最新的数据,缺少值为:`false`。启用该功能后,对于查询点位最新值的场景,性能将会有巨大的提升 |
6364

6465
### 示例1
6566

0 commit comments

Comments
 (0)