计算一条插入到数据库的实际大小

3.3.6版本,非企业版本,想测量一条数据,插入到数据库占用的实际空间大小。 有什么好的方式进行统计么?

一条在磁盘上估计看不出来。建议插入更多一点,才能看到统计数据。比如 1000万条。然后看数据目录下的 vnode目录的磁盘占用情况。

1 个赞

能通过表结构的字段长度进行估算么,这样算的话,会有误差么? 比如:基础数据字段:53字节
用户标签字段:8字节
行开销:8字节
列开销(15列):15字节
总计:53 + 8 + 8 + 15 = 84字节

考虑到对齐和优化,估算为:80-100字节/条

这个不准确,误差会比较大。 标签字段只会保存一份,不会每行都保存一次。

另外 ,
1、TDengine 内部是以 块存储的,不会每个块都能存满;

2、会有压缩,根据数据记录的实际情况,会有不同的压缩效果。

所以,实际占用的磁盘,估计是非常非常粗略的。你写入点数据,查看一下实际磁盘是最准确的,也非常简单。