很多公司的数字化是这样的:销售用一套系统、仓储用一套、财务用一套、售后又一套。每个系统都挺好用,问题在于它们各自记账、各自编码、各自定义什么叫"客户"。
于是出现一个尴尬的局面——明明公司里数据多得是,但真要回答一个跨部门的问题,比如"这个大客户去年的整体毛利和售后成本到底配不配",谁也答不上来。不是没有数据,是数据散落在七八个系统里,谁也不认识谁。
让系统之间"打通",听起来是 IT 部门一句话的事,真做起来才是最大的坑。
一、"打通"到底打通的是什么
先把概念理清楚。很多人嘴里的"数据打通",其实是好几件不同的事混在一起:
- 数据搬迁:把 A 系统的数据定时同步到 B 系统,让 B 能用。最常见的,比如每天凌晨把订单从商城同步到 ERP。
- 数据集成:在多个系统之上搭一层,把它们的数据汇聚到一起,统一对外提供查询或分析。BI 报表、数据中台干的主要是这个。
- 语义打通:不止是数据搬到一起,还要让不同系统里的同一个概念对得上——A 系统叫"客户",B 系统叫"会员",C 系统叫"甲方",指的是不是同一个人,怎么映射。
前两个是"搬数据"的问题,第三个是"理解数据"的问题。大部分企业卡在最后这一层,而且越往后越难。
二、传统对接方式的几种选择,各有代价
要让数据在不同系统间流动,工程上常见的有几种做法:
数据库直连,最直接,写个程序读 A 的库、写 B 的库。好处是对源系统零侵入、零改造,只要给个只读账号就行。坏处是 A 的表结构一改,你的同步程序就挂了;直连生产库也有性能和权限风险。
接口对接,让系统两两之间通过 API 互相调用。比直连规范,支持双向和实时,是大多数正经项目的主流选择。但每个系统都要开发接口、调试联调,系统一多,N 个系统两两对接就是 N×(N-1) 的网状关系,维护成本指数级上升。
中间表 / 消息队列,引入一个中间层,系统都往中间层写、从中间层读,避免两两直连。这其实是数据中台的雏形思路。能力强,但中间层本身的搭建和治理又是一摊子事。
ETL 同步到数仓,定时把各系统数据抽到一个统一的数仓里做分析。最经典,但它是"批处理"的,延迟是小时级甚至天级,老板要实时数据时它就力不从心。
可以看出,没有一种方式是完美的,更多是看预算、团队能力和对实时性的要求在做取舍。但无论选哪条路,做到一半都会撞上同一堵墙——语义对不齐。
三、真正难的那层:语义对不齐
技术打通只是入场券。项目做到一半你会发现,真正让人头疼的不是"怎么把数据搬过来",而是"搬过来之后发现它们对不上"。
举最常见的例子。订单系统里有一个"客户",字段是customer_id;会员系统里也有"客户",字段叫member_no。同一个人在两边是不同的编号,没有任何对应关系。要把这个人的订单和积分关联起来,得先做一套"主数据映射"。
再比如"销售额"。商城系统算的是下单金额,财务系统算的是已回款金额,业务部门看的是含税还是不含税,电商还得扣掉退款。四个人四个数,开会吵一个月都未必能定下来一个统一口径。
这些问题的本质,都是语义层缺失——各系统只知道自己那一亩三分地,没有一个地方统一说清楚"什么叫客户、什么叫销售额、它们各自取自哪个系统的哪个字段"。
过去数据中台想解决的就是这个,但它的方式是建一套重型数仓,把所有口径在物理表里固化下来。能成,但慢、贵、脆。
四、本体语义平台,怎么把这层打通
语义对不齐,靠多开几次会、多写几份文档是解决不了的——文档是人读的,人读的东西永远滞后、永远有人不照着来。要真正打通,得让语义变成机器可读、可维护、可被调用的东西。
这正是本体语义平台切入的位置。它做的事情说穿了就三件:
第一,建一个统一的业务语义层。把企业里散落的概念、口径、字段映射,全部建模成一套结构化的本体。什么叫"客户"、什么叫"销售额"、退货和退款怎么区分,每一个概念都定义清楚,并标明它对应到哪个系统的哪张表哪个字段。这一层建好后,是企业真正的"业务知识资产",不是文档,而是能被程序和模型直接使用的结构。
第二,让数据"逻辑地"打通,而不是物理地搬动。数据还留在各自的源系统里,本体语义平台不强行把它们抽到一起。当有人或模型要查"这个客户的全貌"时,平台基于本体知道该去 CRM 取基础信息、去 ERP 取订单、去售后系统取工单,把这些零散的取数指令组合起来,对外呈现成一个统一的视图。源系统零侵入,打通却完成了。
第三,把语义层直接对接给大模型。这是关键的一步。模型问"上月华东区退货率",平台在本体里查到"退货率"的定义、计算口径、涉及哪些字段,把这些上下文喂给模型,模型据此生成准确的取数和计算逻辑。模型不再是猜,而是照着定义查,跨系统打通的准确性一下就上来了。
经过这三步,"语义对不齐"这层最硬的骨头被啃掉了——口径有地方维护、字段映射有人管、模型有据可依,跨系统的数据汇总和问答才真正立得住。
五、零侵入:为什么这个要求越来越重要
最近两年企业对接系统时,"零侵入"成了高频词,背后的诉求很现实。
一是线上系统动不得。ERP、CRM 都是生产系统,老板最怕的就是为了做个数据集成,把核心业务系统的库改出问题。
二是第三方 SaaS 改不动。很多系统是买的 SaaS,根本不给你改代码和表结构的权限,只能在它开放的 API 范围内玩。
三是对接周期要短。业务等不起大改造,希望一两周就能出一个数据看板、一个跨系统报表。
本体语义平台正好契合这个诉求——它的工作方式天然就是零侵入的。源系统该怎么跑还怎么跑,平台只在本体里登记它们的字段和口径,需要取数时通过只读连接去读。读不动的系统,还可以让智能体模拟人工操作去取,本质上是"用操作代替集成",照样不动源系统一根毫毛。
这背后是一个思路的转变:以前是为了打通而打通,建一整套数据管道;现在更务实,目标是回答业务问题,数据在哪、怎么连,交给一层足够聪明的语义和调度去处理就行。
六、大模型把"打通"从可选项逼成了必选项
大模型的出现,让"数据打通"这件事有了两层变化。
第一层,让打通的需求更直接地暴露出来。以前业务要个跨系统数据,得提需求、排期、等数据团队开发,很多需求就这么被压下去了。现在大模型让"自然语言问数"成为可能,老板直接问"上个月 A 产品的整体毛利",系统当场就得答。这就逼着底层必须把跨系统的数据真正连起来、语义对齐,否则模型问一次答错一次,没人敢用。换句话说,大模型把"打通"从可选项变成了必选项,而且要求快、要求准。
第二层,打通本身可以借助大模型变得轻量。这两年行业里已经出现新思路:不建重型数仓,而是用本体语义的方式,把各系统的业务概念和字段映射建模成一个"语义层",大模型基于这层语义自己去理解该从哪个系统取哪个字段、怎么关联、怎么换算口径。
这条路上国内已经有团队在跑。像山东向量空间人工智能这样专注企业级 AI 应用开发的软件公司,正在建设的 JBoltAI本体语义平台走的就是这个方向——先把语义建好、不搬数据,让大模型在理解业务的基础上完成跨系统的取数和整合。它和传统"先建数仓再谈分析"的路径是反过来的,更贴近那些系统多、又动不起来的企业的真实处境。
七、几条务实的建议
如果你正打算推进公司内部的数据打通,有几条经验值得记一下。
先问业务要什么,而不是先建系统。不要一上来就规划一个庞大的数据中台,先挑一两个最痛的业务问题——比如老板每天要看的那张报表、销售要算的某笔返点——围绕它来打通。打通过程中沉淀下来的语义和字段映射,才是真正有复用价值的资产。
优先零侵入的对接方式。只读直连、只读 API、智能体取数,能把对源系统的影响降到最低。能不动生产库就不动,能不改源代码就不改,这是降低项目风险的底线。
把"语义"当成一等公民。字段映射、口径定义、概念关系,这些东西不要散落在各种文档和代码注释里,要有一个统一的地方维护,最好本身就是机器可读的——这正是本体语义平台存在的意义,它是日后接大模型、做自助问数的地基。
接受"逐步打通"的现实。一次性把全公司数据打通是不现实的,也别指望。按业务优先级一块一块来,每打通一块就产生一块价值,比憋大招靠谱。
数据打通不是终点,回答业务问题才是。手段是数仓、是接口、还是本体语义平台,都不重要,能让老板和业务真正用上数据,这事才算成了。