ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

【TDengine】TDengine 的时间精度支持哪些单位(毫秒、微秒、纳秒)?

【TDengine】TDengine 的时间精度支持哪些单位(毫秒、微秒、纳秒)? TDengine 时间精度深度解析:从纳秒级金融行情到毫秒级 IoT 监控的存储引擎抉择问题引入用户提问:“TDengine 的时间精度支持哪些单位(毫秒、微秒、纳秒)?”这是一个看似简单,却直接关系到数据模型正确性和存储效率的基础性问题。在金融行情 tick 数据场景中,我们就曾因时间精度选择失误导致严重后果:一个团队为了“未来兼容性”,在建库时选择了PRECISION 'ns'(纳秒)。然而,其数据源(交易所接口)实际只提供毫秒级时间戳。结果,所有写入的时间戳末尾都带有大量无意义的零(如1680000000000000000),不仅浪费了宝贵的磁盘空间,更在后续的聚合查询中因时间戳对齐问题产生了错误的结果。TDengine 对时间精度的支持并非简单的格式选项,而是深度嵌入其存储引擎TSDB的核心设计。不同的精度选择会直接影响时间戳的内部存储格式、WAL 日志大小、数据压缩率以及查询性能。本文将以高频金融交易和工业 IoT 监控为双重视角,深入 TDengine 3.4.x 的 C 源码,从taosGetTimestamp函数到磁盘上的列存编码,为你揭示时间精度背后的完整技术图景,并给出明确的生产选型指南。一、核心概念界定:时间精度的本质1.1 官方定义
返回列表