Skip to Content
Docs问题排查808 connector 数据流链路说明文档

版本: v1.5 修改日期: 2026-05-29

1 术语说明

术语全称说明
TENANT_ID租户标识每个项目分配一个唯一字符串(如 90),用于隔离各租户的容器、Kafka Topic 及数据库表。

2 整体流程

数据对接容器(connector)按租户隔离部署,数据从下位设备输入到标准化输出共经过 5 个阶段,依次流经 source、common、business 三层容器。

ℹ️ ${TENANT_ID} 为租户标识,每个项目分配一个。实际部署时需将文档中所有 ${TENANT_ID} 替换为对应值(如 90)。各租户的容器与 Kafka Topic 均以该标识隔离,互不干扰。

3 输入协议层

source 容器通过脚本对接七种下位设备协议:

协议说明
Modbus工业现场总线,RS-485 / TCP 均支持
S7西门子 S7 系列 PLC 协议
OPC-UA开放平台通信统一架构,推荐替代 OPC-DA
HTTPRESTful 接口对接,适用于第三方平台
MQTT消息队列遥测传输,轻量级物联网协议
Kafka分布式消息队列,适用于上游系统数据桥接
数据库直连数据库(MySQL / PostgreSQL / Oracle / SQL Server)拉取数据

4 source 容器

容器名: connector-${TENANT_ID}-source-0-xxxxxxxxxx-xxxxx

职责: 对接下位设备,执行采集脚本,将原始点位数据发布到 Kafka。

输出:

目标地址
Kafka Topicdevice.${TENANT_ID}.data

5 common 容器

容器名: connector-${TENANT_ID}-common-xxxxxxxxxx-xxxxx

职责: 订阅 Kafka device.${TENANT_ID}.data,对数据做初步处理后并发写出三路。

输出:

目标类型地址 / 表名说明
1MQTTconn/device/#ws/device/#原始点位实时推送,供前端或其他系统订阅
2PostgreSQLviscada_v2_xxxxxxviSCADA 采集的设备原始数据,对应 viSCADA 历史数据记录,尚未经过业务分类与标准化
3Kafkaoriginal.${TENANT_ID}.data转发给 business 容器消费

ℹ️ 三路写出并发触发,无先后依赖。

6 business 容器

容器名: connector-${TENANT_ID}-business-(gongye|minyong|pdos|iems)-xxxxxxxxxx-xxxxx

business 层共 4 个实例,按业务类型隔离:gongye(工业)/ minyong(民用)/ pdos(源测)/ iems(综合能源)。每个实例依次完成消费① 筛选分发消费② 标准化写出两个阶段,使用同一批实例处理,无需额外部署。

5.1 消费①:筛选分发

4 个实例共同订阅 Kafka original.${TENANT_ID}.data,各实例按业务维度筛选属于自身的数据,发布到对应的私有 Kafka Topic。

实例业务域输出 Kafka Topic
gongye工业gongye.${TENANT_ID}.data
minyong民用minyong.${TENANT_ID}.data
pdos源测pdos.${TENANT_ID}.data
iems综合能源iems.${TENANT_ID}.data

5.2 消费②:标准化写出

各实例订阅自身对应的 Kafka Topic(见 第5.1节 上表),完成标准化处理(点位映射、单位换算等),并发写出三路。

目标类型表名说明
1PostgreSQL base_odsbase_ods.viscada_s_v2_xxxx按模型分类后的设备原始数据,保留标准化前的采集值与设备标识,是数据溯源的第一落点
2PostgreSQL base_dwdbase_dwd.xxxx_m_source_history数据最终落库,按时间维度组织,支持历史查询与趋势分析
3MQTTconn/standardDevice/#ws/standardDevice/#标准化实时推送,已完成点位映射

⚠️ 标准化 MQTT 与原始 MQTT 的区别: conn/device/#(common 阶段)推送的是采集原始值;conn/standardDevice/#(business 消费②阶段)推送的是经点位映射后的数据。两者 Topic 路径不同,订阅方需注意区分。

7 配置表说明

6.1 模型表

device.business_model_object 表存储 business 层各业务域的设备对象类型定义,每条记录对应一种可在平台中使用的设备类型标识。

图 4 device.business_model_object 表内容示例

字段示例值说明
namesubstation设备对象类型名称
display_name热力站设备对象类型名称 (中文名称)

当前已录入的业务域与对象类型数量:

业务域对象类型数量
工业(gongye)14
民用(minyong)30
综合能源(iems)19
源测(pdos)97

6.2 分库落库配置(可选)

device.connector_business 表中的 db_name 字段用于指定业务数据的落库目标库名。

字段说明当前默认值
db_name落库目标数据库名viSCADA 主库(默认)

⚠️ 当前默认写入 viSCADA 主库;若需分库落库,须在 db_name 字段中指定目标库名。实施时须确认该字段配置,避免数据写入错误的目标库。

ℹ️ 分库落库配置尚在规划阶段,后续将补充具体配置示例和校验要求。

Last updated on