2. 数据库在FMS中的角色:实时数据库与历史数据库的区别、数据采集频率与存储挑战

2.1 实时数据库与历史数据库的核心定位

在厂务监控系统(FMS)中,数据库并非单一实体,而是由实时数据库与历史数据库协同构成的双层存储体系。前者负责毫秒级的数据刷新与报警触发,后者负责长期趋势分析与合规归档。两者在数据模型、写入频率、保留周期上存在本质差异。

关键认知:实时数据库是FMS的“瞬时记忆”,历史数据库是FMS的“长期记忆”。两者缺一不可,且必须通过高效的压缩与归档策略衔接。

2.1.1 实时数据库(RTDB)

  • 数据模型:基于内存的键值对或点(Tag)结构,每个点对应一个传感器或计算变量。
  • 写入频率:通常为 100ms ~ 1s 一次,支持批量写入与订阅推送。
  • 存储周期:仅保留最近数小时至数天的数据,用于操作员画面刷新与即时报警。
  • 典型产品:OSIsoft PI(现AVEVA PI System)、GE iFIX、Wonderware InTouch。

2.1.2 历史数据库(Historian)

  • 数据模型:基于磁盘的关系表或列式存储,支持时间戳索引与聚合查询。
  • 写入频率:通过压缩引擎批量写入,通常为 1s ~ 60s 一次快照或变化记录。
  • 存储周期:数月到数年,用于能效分析、设备寿命预测、合规审计。
  • 典型产品:AVEVA PI Historian、Canary Labs、InfluxDB(时序数据库)。

2.2 核心差异对比表

对比维度 实时数据库(RTDB) 历史数据库(Historian)
存储介质 内存 + 高速缓存 磁盘(SSD/HDD)
写入模式 持续流式写入 批量压缩写入
数据精度 原始值(无压缩) 压缩值(旋转门/死区)
查询响应 毫秒级(当前值) 秒级(聚合趋势)
保留周期 数小时 ~ 数天 数月 ~ 数年
典型容量 GB 级 TB ~ PB 级

2.3 数据采集频率与存储挑战

FMS 中一个中等规模的半导体工厂通常包含 10,000 ~ 50,000 个数据点(Tags),涵盖温度、压力、流量、电压、颗粒度等参数。若以 1 秒频率全量采集,单日数据量可达:

单点日数据量 = 86400 条/天
50,000 点日数据量 = 4.32 × 10⁹ 条/天
单条记录约 50 字节 → 日存储量 ≈ 216 GB
年存储量 ≈ 78 TB(未压缩)

上述计算尚未包含报警事件、批次记录、设备状态变更等非周期数据。若不采用压缩与归档策略,存储成本与查询性能将迅速失控。

3.2.1 三大核心挑战

  1. 写入吞吐瓶颈:高频率写入会导致磁盘 I/O 饱和,影响实时报警响应。
  2. 查询性能衰减:未压缩的历史表在跨月查询时,全表扫描耗时可达分钟级。
  3. 存储成本膨胀:企业级 SSD 存储单价约 0.3~0.5 元/GB/月,78TB/年对应约 2.3~3.9 万元/月。
常见误区:部分团队试图通过降低采集频率(如从1s改为10s)来缓解存储压力,但这会丢失设备启停、瞬态波动等关键特征,导致后续能效分析失真。正确的做法是保留高频采集,但通过压缩算法与分层归档来优化存储。

2.4 实时与历史数据库的协同架构

下图展示了 FMS 中实时数据库与历史数据库的典型协同关系:采集层数据先进入实时库供操作员使用,再通过压缩引擎异步写入历史库,最后按策略归档至冷存储。

实时数据库与历史数据库协同架构 实时数据库与历史数据库协同架构 传感器/PLC 采集层 实时数据库 (RTDB) 历史数据库 (Historian) 100ms~1s 流式写入 压缩引擎异步写入 HMI/SCADA 画面 报警与事件服务 趋势分析/报表 冷存储归档 按策略迁移(月/季度) 说明 实时库为操作层服务 历史库为分析层服务

2.5 数据压缩策略概览

为应对存储挑战,FMS 历史数据库普遍采用以下压缩技术:

压缩方法 原理 压缩比 适用场景
旋转门算法 基于偏差阈值,仅记录超出死区的变化点 10:1 ~ 50:1 平稳过程参数(温度、压力)
死区压缩 设定值或百分比死区,死区内不记录 5:1 ~ 20:1 缓慢变化参数(液位、浓度)
时间戳聚合 将高频数据聚合成分钟/小时平均值 60:1 ~ 3600:1 长期趋势分析、报表
列式存储编码 使用差分编码、游程编码压缩时间序列 3:1 ~ 10:1 所有历史数据(通用)
实践建议:在配置压缩参数时,应针对不同工艺参数设置差异化的死区阈值。例如,洁净室温度(±0.5°C)与纯水流量(±2%)的压缩策略不应相同。建议先进行一周的基线采集,分析信号波动特性后再设定压缩参数。

2.6 本章小结

  • 实时数据库与历史数据库在存储介质、写入模式、保留周期上存在本质差异,不可相互替代。
  • FMS 数据采集频率通常为 100ms ~ 1s,50,000 点规模下年存储量可达 78TB(未压缩)。
  • 核心挑战包括写入吞吐瓶颈、查询性能衰减、存储成本膨胀。
  • 旋转门算法与死区压缩是 FMS 历史库最常用的压缩手段,压缩比可达 10:1 ~ 50:1。
  • 合理的分层归档策略(实时库 → 历史库 → 冷存储)是保障系统长期稳定运行的关键。