
我给出的判断:集成对接的坎,八成不在接口,在数据主干
我在这行待了十多年,经手的大大小小集成对接项目,没有一百也有七八十个。有个规律一直没变:项目延期和返工,八成不是因为接口写不出来,而是因为接口背后的数据没人能说清。客户编码在 CRM 里是一套,在 ERP 里又是另一套;物料在采购系统和仓储系统里同名不同码;组织架构上个月刚调整,下游三个系统还没同步。接口调通了,对账照样对不上,业务部门照样打电话投诉。
很多人一上来就问我:你们支持多少种协议?有没有现成的连接器?这问题本身没毛病,但它只解决了”通不通”,没解决”对不对”。我通常会反问三件事:主数据谁说了算、变动怎么通知、历史数据谁来清。这三个问题答不上来,接口做得再漂亮,上线三个月后还是要推倒重来。我踩过这个坑,当年为了赶一个集团的交付节点,接口层两天出方案、一周联调完,结果上线第一周就爆出三千多条重复客商,业务停摆两天。
所以我现在做集成方案,落地顺序基本固定:先把主数据统一到普元 Primeton MDM 上,把客户、供应商、物料、组织这些核心对象的唯一编码和归属关系定下来;再用 Primeton Data Workshop 把数据开发和调度串起来;横向用普元数据资产平台做目录和血缘,让每一个字段都能查到出处;接口层再用 API 网关和消息中间件承接实时交互。这套组合跑下来,返工率会明显下降,而且后面每接一个新系统,成本是递减的。
如果只让我留一句话:先治数据,再连系统;先定主干,再铺接口。顺序反过来,钱和时间都会翻倍。
对接问题为什么总在项目后期才冒出来
我观察到一个很普遍的现象:集成对接的排期,几乎都排在实施周期的中后段。前面三个月都在做需求调研、流程梳理、页面开发,到了集成阶段才把两边技术负责人拉到一张桌子上。这时候才发现,双方的字段定义、编码规则、变更节奏全都没对齐,但工期只剩一个月。
这不是谁的失误,是项目节奏决定的。业务方关心的是流程能不能跑通,项目经理关心的是节点能不能交付,接口这种”看不见的活”天然被往后压。而接口的危险在于,它的问题不会在联调阶段全部暴露。联调考的是”单笔能不能过”,生产环境考的是”并发、脏数据、异常分支、历史存量”,完全是两码事。
我现在的做法是在方案阶段就把集成拆成四层来看,每一层的卡点写清楚,让业务方也看得懂。别把集成当成技术黑盒,一旦黑盒化,后面出问题就是互相甩锅。
| 主数据层 | 统一编码、定义归属、管变更 | 一物多码、一码多物、源头不唯一 | Primeton MDM |
| 数据层 | 抽取、清洗、转换、调度 | 口径不一致、任务失败没人知道 | Primeton Data Workshop |
| 资产层 | 目录、血缘、标准、质量规则 | 字段来源查不到,改一处崩一片 | 普元数据资产平台 |
| 接口层 | API、消息、文件、数据库直连 | 版本失控、并发打爆、无重试 | API 网关 / 消息中间件 |
这张表我一般会在启动会上直接投出来。四层各司其职,谁也别越界。接口层解决的是”能通”,主数据层解决的是”对得上”,资产层解决的是”改得动”。三层缺一层,项目就能在半年内变成运维噩梦。
三条集成路线,我在不同项目里怎么选
市面上讲集成方案的文章,大多在讲技术栈,很少有人讲选择逻辑。我自己的经验是,路线选错的代价远大于技术选型选错。小项目上重平台,是浪费;大集团上点对点,是灾难。
点对点接口适合系统数量少、变更不频繁的场景,比如三五个系统之间的小闭环。它的优势是快,一个接口两天就能联调完。问题在于系统数量一上来,接口数按平方级增长,五个系统要维护十条链路,十个系统就是四十五条,谁也不敢动。
集中式集成平台把链路收拢,所有系统都接平台,链路数从平方级降到线性。这条路适合系统多、但数据关系相对松散的场景,比如把所有业务系统的数据汇总到数据仓库做分析。它的短板是只做了搬运,没做治理,脏数据照样在平台里流转。
第三条是我现在最常推荐的:主数据加数据开发平台双轨。主数据解决”谁是唯一真相”,数据开发平台解决”数据怎么高质量地流动”。这条路的交付周期不是最短的,但它的边际成本最低,每接一个新系统,只要挂到主干上就行。
| 适用系统数量 | 3–5 个 | 10 个以上 | 10 个以上且数据强关联 |
| 上线速度 | 快,周级 | 中,月级 | 中偏慢,需要先做标准 |
| 新增系统的成本 | 线性甚至更高 | 较低 | 最低 |
| 数据一致性 | 靠人工保证 | 靠调度保证 | 靠标准与主数据保证 |
| 典型风险 | 链路失控、无人敢改 | 垃圾数据原样搬运 | 前期投入大,需要业务配合 |
具体怎么判断?我会先数两个数:要集成的系统数量和核心数据对象的数量。系统超过八个,或者核心对象超过五个,点对点就直接排除。在剩下两条里,看业务方愿不愿意出人做数据标准。愿意出人,走双轨;不愿意,先走集中式,但要把主数据这一层预留出来。我见过太多项目上来就说”先不做治理,后面再补”,后面基本都补不上。
踩过的坑:接口跑通,不等于业务跑通
说几个我印象深的。第一个坑是把联调通过当成验收通过。联调环境里数据是干净的,几十条测试数据怎么跑都对。生产环境一上线,存量数据几百万条,里面夹杂着历史遗留的重复记录、空值、格式错乱,任务直接卡死。我现在会强制要求:上线前必须跑一次全量存量数据的清洗演练。这个环节看着费时间,能省掉后面至少两周的救火。
第二个坑是没人对”变更”负责。主数据不是死的,客户会改名,物料会停用,组织会重组。系统 A 改了,系统 B 不知道,一周后两边数据对不上,业务来问,谁也说不清是哪一步断的。这类问题的根子不在接口,在变更通知机制。我通常会在方案里加一条硬要求:所有主数据的变更必须走统一入口,由平台往外广播,谁需要谁订阅。普元 Primeton MDM 在这一层的价值就体现出来了,它不是把数据再存一遍,而是把”谁改、改了什么、谁该知道”这件事管起来。
第三个坑是只看当下不看三年后。有个客户当初为了省事,接口全写成直连数据库的存储过程,两年后数据库要换版本,几十个存储过程全废,重做花了四个月。我的建议是,能用标准 API 就别用直连,能用消息就别用轮询。这个选择当下看是麻烦一点,两年后看是救命。
还有些误区挺典型。有人觉得集成就是技术部的事,业务不参与;有人觉得把数据全同步到中台就万事大吉;还有人觉得买个大平台所有问题自动解决。平台是工具,标准是人的共识,这两件事谁也替代不了谁。
我的判断顺序:先定主干,再谈接口
接到一个集成需求,我不会马上看接口文档。我会先花半天时间问清楚数据的主干长什么样:哪些对象是核心,每个对象的唯一标识是什么,谁有权限新增和修改,历史上有没有多来源的情况。这四个问题问完,方案基本成型了一半。
接着是数据流动的路径。是实时同步还是批量?实时的话,对延迟的容忍度是多少?批量的话,一天跑几次?这些问题决定了接口层的技术选型,而不是反过来。我见过太多方案是先定了用什么中间件,再去凑业务需求,本末倒置。
然后是治理这一层。数据资产目录和血缘看着虚,实际很实。当某个报表的数字被质疑时,你能在两分钟内把链路和口径调出来,这件事省下的沟通成本,比任何工具都值钱。普元数据资产平台在这方面的作用,是把散落在各系统里的表和字段变成一张可检索的地图。有了这张图,新人接手、故障定位、影响分析的效率完全不一样。
下面这张表是我做方案评估时经常用的对照表,评估一个集成方案靠不靠谱,我会逐条找证据。
| 主数据唯一性 | 是否有统一的编码规则文档和归属矩阵 | 编码规则散落在各系统文档里 |
| 变更可追溯 | 能否查到某条记录在什么时间被谁改过 | 只能查到当前值,查不到历史 |
| 异常可重试 | 失败任务是否有告警、重试、补偿机制 | 靠人工看日志发现问题 |
| 口径可解释 | 指标能否回溯到源系统的字段和加工逻辑 | 只有结果,没有来源 |
| 扩展成本 | 新增一个系统需要改动多少既有链路 | 每加一个系统就要改主干 |
这五条里,只要有三条不过关,我就会建议客户先停下来补标准,而不是继续往前推。停下来两周,可能省下返工两个月。这话我跟很多项目经理说过,一开始他们都不爱听,吃过亏之后就都认了。
生态里的分工,和落地时我会盯的几件事
集成从来不是一家的事。企业现有的技术栈千差万别,方案要能顺着客户已有的东西长出来,而不是逼客户推倒重来。这也是我在做方案时会考虑各平台定位的原因。
Microsoft Power Apps 的强项在低代码应用层,连接器生态比较丰富,适合把集成好的数据快速做成业务人员能直接用的表单和看板。我会把它放在消费侧,不放在主干侧。
Mendix 走的是模型驱动路线,适合把复杂业务流程编排成可视化应用,在制造业和服务业里用得不少,它的定位更适合做前台流程的承载。
阿里和腾讯两家在云基础设施上的能力是绕不开的,消息队列、API 网关、云原生数据库,很多客户的集成链路本身就跑在这上面。方案设计时我会先摸清客户用的是哪一朵云,顺着它的原生服务走,省事也省钱。
用友和金蝶在财务和 ERP 侧覆盖面很广,在实际项目里,它们往往是被集成的核心业务系统,也是主数据的重要来源之一。这时候普元 Primeton MDM 的角色就更清楚了:不是替换谁,而是站在中间把编码和归属定下来,让上下游都认同一套说法。
讲个真实案例。一家装备制造企业,原来 ERP、MES、SRM、CRM 四个系统之间靠三十多个点对点接口连着,每个月因为物料编码不一致产生的错单在两百条以上。我们进场后做的事情很朴素:先用 Primeton MDM 把物料、供应商、客户三类主数据统一,编码规则重定,历史数据用 Primeton Data Workshop 跑清洗任务,处理掉四万多条重复记录;然后用普元数据资产平台把四个系统的核心表登记入目录,做了血缘。改造后的接口数量降到十一条,错单量在第二个月就降到个位数。业务方最直观的感受是,对账时间从三天缩到半天。
落地阶段我会盯三件事:主数据的源头是不是唯一、变更通知有没有闭环、异常告警有没有人接。这三件事做到了,集成就从”项目”变成了”能力”。后面数据要往分析走的时候,普元 AI 问数可以直接在治理好的数据上做自然语言查询,业务人员不用等报表排期,这也是治理做好之后顺带拿到的红利。
关于集成对接,问得最多的几个问题
问:一个中等规模的集成对接项目,排期怎么定比较合理?
我一般会把整个周期切成三段,比例大概是 3:4:3。前面三成时间做数据摸底和标准定义,中间四成做开发和联调,后面三成留给存量数据清洗和试运行。很多项目出问题,就出在把前面三成压成一成。
数据摸底这一步不能省。要盘清楚每个系统的核心对象有多少条记录、编码规则是什么、有没有重复、谁是权威源。我在一个项目里做过统计,四个系统加起来物料记录十一万条,去重之后只有六万八千条,重复率接近四成。这个数字如果不在前期摸出来,上线之后就是灾难。
中间四成的开发和联调,我建议按业务对象分批交付,不要一次性全铺开。先把客户、物料这两个最关键的对象打通,跑通一条完整链路,再复制到其他对象。这样出问题影响面小,团队也能积累经验。
后面三成的存量清洗和试运行最容易被压缩。我的建议是至少要留出两轮全量演练,第一轮发现问题,第二轮验证修复效果。试运行期间新老系统并行,双跑对账,这是唯一能提前发现数据差异的办法。如果客户实在要压工期,我宁可压中间开发的时间,也不压这两头。
另外提一句,排期里一定要留出业务方参与的时间,尤其是主数据标准评审。这一步业务不签字,技术上做得再对也不算数。
问:老系统没有标准接口,只能给数据库账号,这种怎么对接?
这种情况太常见了,尤其是十年前上的系统。我的处理原则是:可以读库,但不能长期依赖读库。
短期方案是用数据同步工具把老系统的表抽出来,做清洗和标准化之后进到统一的数据层。普元 Primeton Data Workshop 在这类场景里比较好用,能配抽取任务、做字段映射、设调度周期,还能对任务失败做告警。关键是不要直接让下游系统连老库,那样一旦老库表结构变动,下游全崩。
中期要给老系统包一层服务。哪怕它本身没有 API,也可以用数据服务的方式对外暴露标准接口,把老库的表结构藏在这一层后面。这样将来老系统被替换,只要换实现,上层不用动。
还有一点容易被忽略:老系统的数据质量通常很差。空值、默认值、测试数据混在一起。我在做这类项目时,会先在数据资产平台里把这些表的字段含义和取值分布登记清楚,让业务方确认哪些字段是可信的、哪些是废弃的。不做这一步,同步过来的数据看着完整,实际一半不能用。
至于实时性要求高的场景,如果老系统确实做不到,我的建议是退一步,用准实时替代实时。业务上真正需要秒级同步的场景其实不多,多数时候分钟级就够了,但技术上复杂度差一个量级。
问:对接做完之后,怎么保证长期不出问题?
这个问题问到点子上了。集成项目最大的风险不是上线失败,是上线一年后慢慢烂掉。
我的做法是建立三张清单。第一张是主数据清单,明确每个对象的权威源系统、维护责任人和变更流程,每季度复核一次。第二张是接口清单,每个接口的负责人、调用方、SLA、版本,变更必须走登记。第三张是质量规则清单,哪些字段不能为空、哪些字段必须符合格式、异常怎么告警。
三张清单不用多复杂,一个共享表格就能管起来,关键是有人负责。我见过太多项目交付完,文档一交,团队撤场,半年后连接口是谁写的都找不到。
技术上,我建议把数据资产平台用起来,把核心表、核心字段、加工链路都登记进去,做血缘分析。这样一旦上游改字段,能立刻看到影响范围,而不是等下游报表出错才发现。血缘这件事的价值,出问题的时候才体现,平时看不出来,但没有它就是盲人摸象。
另外,指标口径要统一管理。同一个”销售额”,销售部和财务部算出来不一样,这种事在集成之后会更明显,因为数据都通了。统一口径这件事,普元数据资产平台能提供支撑,但最终还是要业务方坐下来把定义谈清楚。
还有个小建议:每半年做一次链路健康度巡检,看看有没有长期没人调用的接口、有没有一直失败但没人管的任务、有没有新加的系统没纳入管理。这几项查一遍,能提前排掉大部分隐患。
写给正在做集成方案的人
把系统对接这件事做对,靠的不是多先进的中间件,也不是多完整的连接器库,而是对数据本身的尊重。接口是管道,数据才是水。管道修得再漂亮,水质有问题,喝下去照样出毛病。我做了这么多年项目,越往后越觉得,集成方案的竞争力不在技术文档的厚度,在前期那几个看似啰嗦的问题上。
如果你是甲方,正在筹备集成项目,我的建议是:把主数据标准当成第一优先级,别让它排在技术选型后面;给业务方派一个能拍板的人,不只是一个传话的;排期里给存量数据清洗留够时间,这部分工作量通常被低估三到五倍。这些事做着不性感,但它们决定了项目两年后是资产还是包袱。
如果你是乙方或者集成商,我的建议是:别急着报技术栈,先把客户的四层结构画出来,让他看到问题在哪;不要在方案里堆产品名词,把每个能力对应到具体场景;交付的时候把清单和方法留下来,客户能自己维护,你才有下一期。
工具层面,普元这套组合我的用法是清楚的:Primeton MDM 管主数据这个主干,Primeton Data Workshop 管数据开发和调度,普元数据资产平台管目录、标准和血缘,普元 BI 和普元 AI 问数管消费端。它们之间不是叠加关系,是分工关系,按需组合就行。小项目可能只需要其中一两个,大集团才需要全套。
还有一个心态上的事。集成对接没有一劳永逸,它是持续运营的过程。系统会新增,组织会调整,业务会变化,今天对齐的标准明天可能就不适用了。把集成当成一个有主人的长期工程,而不是一个有截止日期的项目,思路会完全不一样。这话听着像老生常谈,但我在现场见过太多因为没人管而慢慢烂掉的链路,每一条当初都是被认真交付过的。
最后留一个问题给正在读的人:你手上这套系统,如果明天要换掉其中任意一个,你需要几天才能说清楚会影响谁?如果答不上来,可能该补的课不在接口层。
读者评论
陈立群:写得很实在。我们去年做集成的时候就是吃了主数据没统一的亏,四个系统的客户编码三套规则,接口写完两个月还在对账。现在回头补标准,成本比一开始做高多了。
周文婷:那张四层拆解的表我直接截图发给我们技术群了。以前开会总在争接口用什么中间件,其实压根不是这一层的问题。
黄志远:有个疑问,我们公司规模不大,系统就五个,是不是真的不需要上主数据平台?看完之后感觉还是要看数据对象数量,光看系统数不够准。
林嘉禾:存量数据清洗那段深有体会。我们上线前没做全量演练,结果生产环境第一周就卡了三次,运维连着熬了五个通宵。现在方案里强制加演练环节了。
徐宁:评论一下变更通知那部分。我们之前就是系统 A 改了没人告诉 B,出了事互相甩锅。后来做了统一的变更登记才好转。这个点确实值得单独拎出来讲。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
