TDengine 浮点数新编码 BSS 用户手册

浮点数 BSS(Byte-Stream-Split)编码用户手册

1. 概述

BSS(Byte-Stream-Split)是 TDengine 针对 FLOAT/DOUBLE 字段推出的新一代编码方式,自 v3.3.8.0 起默认启用,旨在提高压缩效率的同时保持与旧编码相近的读写性能。

2. 技术原理

  • 将浮点数的二进制表示按字节拆解。
  • 对拆分后的字节流应用分割与压缩策略,尽可能让有数的二进制凑在一起,降低整体存储占用。

3. 核心优势

维度 表现 说明
压缩率 相较 delta-D 提升 4%~7%,1~100 范围内提升更明显 浮点数据集最高压缩率达 83.76%,整数 13.65%
写入性能 与 delta-D 基本一致 测试最高写入速率 32668 条/秒
查询效率 略优于 delta-D 测试最高查询 QPS 11.825
数据/列规模 32 列或 64 列、不同数值范围下表现稳定 结论不受列数或数据范围影响

4. 配置说明

4.1 默认行为

  • v3.3.8.0 及以上版本,新写入的浮点字段默认使用 BSS 编码。

4.2 手动指定

  • 建表时可显式配置:

    sql 复制代码
    CREATE TABLE st (
      ts TIMESTAMP,
      val DOUBLE ENCODING BSS
    ) TAGS (tag INT);

5. 性能测试摘要

项目 配置 / 环境
测试环境 192.168.2.124(12 核 CPU,64 GB 内存)
数据规模 1 DB、1 超级表、1 子表、1 VGROUP、100 万行
数据分布 1 ~ 100 范围浮点(6 位小数),0~100 整数

结果要点:

  • 压缩率: BSS 比原来默认的 delta-D 编码约有 4%~7% 提升。
  • 写入性能:与原来基本持平。
  • 查询性能:比原来略快。

(原图表略)

6. 注意事项

  1. 升级至 v3.3.8.0 后,历史浮点数据不会自动重编码,只有新写入数据使用 BSS。
  2. 可通过 describe <表名> 查看 encoding 字段确认实际编码。

7 关于 TDengine

TDengine 是一款专为物联网、工业互联网等场景设计并优化的大数据平台,其核心模块是高性能、集群开源、云原生、极简的时序数据库。

它能安全高效地将大量设备每天产生的高达 TB 甚至 PB 级的数据进行汇聚、存储、分析和分发,并提供 AI 智能体对数据进行预测与异常检测,提供实时的商业洞察。

相关推荐
g***26797 分钟前
最新SQL Server 2022保姆级安装教程【附安装包】
数据库·性能优化
沫儿笙21 分钟前
安川机器人tag焊接怎么节省保护气
人工智能·物联网·机器人
风123456789~1 小时前
【OceanBase专栏】OB背景知识
数据库·笔记·oceanbase
4***72131 小时前
【玩转全栈】----Django模板语法、请求与响应
数据库·python·django
c***42101 小时前
Django视图与URLs路由详解
数据库·django·sqlite
数据库学啊1 小时前
团队小希望运维简单,时序数据库选型有什么推荐?
运维·数据库·时序数据库
2***65632 小时前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite
V***u4532 小时前
如何查看PostgreSQL的版本
数据库·postgresql
倔强的石头_3 小时前
openGauss向量数据库:赋能智能制造的工业AI实践
数据库