数据管道与五库适配 · 衍流
数据怎么被采进来、洗干净、转出去,以及为什么衍数能在多种数据库上跑——国产化尤其关心的部分。
本文解决什么问题:一是企业已有数据库或多套系统,衍数能否运行在现有环境上、把分散数据整合进来(而不必推翻重来);二是信创/国产化项目中常见的问题——「能否使用达梦」。衍流将「运行在哪种数据库上」作为配置选项,而非迁移工程。
一句话定义
衍流(Derive-Flux) 是衍数的数据处理方向:负责数据的采集、清洗、转换与流转,并让平台可以运行在主流数据库之上(MySQL、PostgreSQL、SQLite、达梦 DM8 等)。需要说明的是,ClickHouse 这类分析型引擎用于数据分析侧的读取来源,不充当业务主库。
它想解决什么问题
企业的数据很少只住在一个地方:业务系统一套库、历史数据一套、统计分析可能又接了一个数据仓库。衍流要解决的是数据在不同存储之间如何顺畅流动,以及平台自身能不能跑在用户已有的数据库生态里。
两个能力,分开看
① 多数据库适配(平台能跑在哪)
衍数默认不在数据库上绑死用户。选择 MySQL 起步、或因为信创要求上达梦 DM8,是配置层面的选项,而不是另做一套系统的迁移工程。请把「业务主库」与「分析数据源」分开看:
| 定位 | 数据库 | 常见场景 |
|---|---|---|
| 业务主库(平台系统本身运行其上) | MySQL / PostgreSQL | 通用业务系统 |
| SQLite | 轻量 / 单机 / 演示 | |
| 达梦 DM8 | 信创 / 国产化要求 | |
| 分析数据源(报表/看数侧读取) | ClickHouse 等 | 大数据量分析查询(只读,不作为业务主库) |
② 数据采集与流转(数据怎么动起来)
业务数据不会永远静止在一个库里,常见要流转的场景:
- 把外部系统数据采进来(接口、文件、其它库);
- 清洗、对齐口径后转入业务或分析库;
- 按需输出给报表、大屏或下游系统。
衍流提供这类「采洗转流」的处理思路与落地路径,让数据能够被加工成业务真正可用的形态。
一个关键原则
界面需要的数据,最终都由数据层提供。 在衍景中看到的一个数字、一张图,追溯到底都是数据层的字段与口径在支撑。因此衍数强调口径一致:同一个指标(例如「销售额」)在所有页面指向同一份定义,而不是每张报表各自计算。
常见疑问
必须用达梦 / ClickHouse 才能用衍数吗? 不用。默认即可在主流数据库上运行;需要时再切到国产库,不需要为「换库」推翻系统。
是不是所有业务都非要经过 ETL? 不是。多数业务数据直接在业务库内闭环;只有跨库、跨系统的数据才需要流转加工。衍流是「需要时可用」的能力,而不是强加给每个模块的负担。
相关阅读
- 想知道数据最终长成什么界面 → 衍景 · JSON 驱动界面
- 想了解部署在哪种数据库 → 部署与集成
- 想了解报表里的指标口径 → 使用指南