Skip to content
Merged
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
16 changes: 15 additions & 1 deletion zh_CN/development-guide/high-performance-reading.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ preload_parquet_metadata = true

## 配置热数据缓存

在使用对象外存储(OBS、Azure、S3、MinIO等)时,为降低远程 IO 带来的性能损失,可以配置混合缓存(内存 + 磁盘),将热数据缓存在 内存/磁盘 中,以加速查询。具体配置如下:
在使用对象外存储(如:OBS、OSS、COS、Azure、GCP、S3、MinIO等)时,为降低远程 IO 带来的性能损失,可以配置混合缓存(内存 + 磁盘),将热数据缓存在 内存/磁盘 中,以加速查询。具体配置如下:

```toml
[storage.object_store.metadata_cache]
Expand All @@ -48,3 +48,17 @@ path = "/var/lib/datalayers/cache/file"
```

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

## Hints

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

### 查询并行度控制

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

#### 语法

```sql
SELECT /*+ SET_VAR(parallel_degree=1) */ * FROM table;
```