数据中台到底是什么

数据中台不是一个软件产品,是一套"把企业数据变成可复用资产"的体系。它把分散在各个车间、各个系统的数据(PLC、SCADA、MES、ERP、WMS)汇聚到一个统一平台,清洗、建模、标准化,然后以 API/报表/大屏的形式对外提供服务。业务部门不用再自己接数据库,直接调接口。

数据中台的核心不是"存数据",是"让数据被复用"。建了一大堆表没人用,那叫数据仓库,不叫中台。
数据中台配图:中央发光圆形数据汇聚平台,周围工厂与云图标以光线汇聚
从设备到应用的完整数据链路

这篇按从采集到服务的顺序讲清楚。

为什么工厂需要数据中台

工厂数据常见痛点:

  • 烟囱式每条产线一个独立系统,数据不通。
  • 口径不一同一个"产量",A 车间和 B 车间算法不同。
  • 数据沉睡采集了一堆,没人用。
  • 重复建设每个项目都重新做一遍数据对接。

中台就是要把这些问题一次性解决。

总体架构

经典四层:

数据中台四层架构
  • 采集层边缘网关 + OPC UA / Modbus / MQTT。
  • 存储层时序库(InfluxDB/TDengine)+ 关系库(PostgreSQL)+ 数据湖(HDFS)。
  • 计算层Flink 实时 + Spark 离线。
  • 服务层API 网关 + 报表 + 大屏。

数据采集与汇聚

采集是最脏最累的活:PLC 协议几十种、设备品牌几百种。

# 典型采集流水线(伪代码)
# 边缘网关:从 PLC 读 → MQTT 上报 → Kafka 落地
# 边缘侧:OPC UA Client
while True:
    tags = ua_client.read(['/Temperature', '/Pressure', '/Speed'])
    mqtt.publish('factory/line1', json.dumps(tags))
    sleep(1)

# 云端:Kafka → Flink 清洗 → 写入时序库
stream = Kafka.source('factory/line1')
clean = stream.map(validate).filter(complete)
clean.to(TDengine.sink('telemetry'))

每秒几千到几万点是常见规模。