问题答疑

宜联IOT中继宝盒是用于管理项目现场设备、传感器同业务系统互联互通的边缘服务器设备
具有低延迟、高宽带、高可靠、高安全、易使用、多协议支持特性

当前位置:首页 >  开发者社区 

平台为什么必须同时使用关系数据库 + 时序数据库?

平台为什么必须同时使用关系数据库 + 时序数据库?
提问人:我爱IOT中继宝盒   
解答人:管理员       
解答描述:
两类数据库底层设计、数据特征、业务场景完全互补,单一数据库无法兼顾性能与业务需求。

(一)时序数据库解决的痛点(仅时序能扛海量测点)

  1. 写入量爆炸,关系库扛不住

    一个油站多个油罐,每分钟上报液位温度;数十上百油站每日产生千万条时序记录。关系库 B + 树随机写入,高并发下锁冲突、IO 阻塞,写入延迟极高;时序库按时间顺序批量写入,单节点百万测点 / 秒无压力。

  2. 时序数据几乎只追加、极少修改

    液位历史测点不会回改,只需按时间范围批量删除归档;关系库频繁分页查询时间曲线会产生大量碎片,时序库内置时间索引、列式压缩,存储占用仅 MySQL 的 1/10~1/20,大幅节省存储成本。

  3. 时间维度聚合查询原生优化

    业务高频需求:查询某油罐近 7 天每小时平均液位、当日最大最小油温、月度储油变化曲线。时序库内置SUM/AVG/MAX窗口聚合,秒级返回;关系库大区间时间查询需要全表扫描,几十秒甚至超时。

  4. 冷热数据自动管理

    平台自动将近 7 天热数据留高性能磁盘,半年以上冷数据压缩归档,自动清理超期测点;关系库无原生分层,需手动分表,维护复杂。


(二)关系数据库解决的痛点(时序库天生短板)

  1. 强关联实体、复杂业务关系无法表达

    油罐归属油站、雷达绑定油罐、工单关联设备、用户绑定站点,存在大量一对多、多对多关系;时序库仅支持简单 Tag 标签,不支持外键、多表关联,无法做完整业务台账管理。

  2. 需要事务保证数据一致性(计量 / 工单不可出错)

    卸油入库、库存结算、工单新增 / 审核属于金融级计量业务,必须 ACID 事务防止数据错乱;绝大多数时序数据库不支持跨行事务,无法处理交易类业务。

  3. 频繁更新、删除业务单据

    报警处置、工单状态修改、油站信息编辑、人员权限调整,需要单条记录快速 UPDATE/DELETE;时序库设计为 “只追加”,随机更新性能极差。

  4. 复杂多条件联合业务查询

    例如:查询 A 油站 2026 年所有产生高液位报警且未完成维修工单的油罐;需要油站表、油罐表、报警表、工单表多表 JOIN,时序库不擅长复杂关联查询。


(三)总结:二者不可替代

  • 只用关系库:海量液位测点写入、曲线查询性能崩盘,存储成本极高;

  • 只用时序库:无法管理油站台账、人员权限、进销存工单、计量结算等核心业务,无事务、无复杂关联,不能支撑加油站完整经营管理;

  • 双库搭配:时序管设备实时时序测点,关系库管业务结构化主数据,各司其职。


备注:

上一篇:宜联 IOT 平台数据存储方案是什么?

下一篇:关系数据库与时序数据库协同工作流程?

IOT中继宝盒 长按关注宜联科技公众号

QQ在线咨询

点击这里给我发消息 咨询客服专员

QQ咨询

专业咨询

199-4502-1328

电话咨询

微信扫一扫

IOT中继宝盒

微信咨询
返回顶部