🧠 逻辑 · 系统2026-10-23 · 约 1.1 万字

打通信息壁垒的逻辑学原理

——从顶层设计到底层原理:信息为什么会被卡住,又怎样才能真的流起来


目录 · 共 13 节
楔子:三堵墙 一、什么是信息壁垒:从"信息不对称"到"信息不可达" 二、信息的三重变形:数据、信息、知识、判断 三、同一律:壁垒的第一个来源是"指称不统一" 四、语义熵:每过一道手,意思就少一截 五、冗余与校验:打通不是"多传",是"能验" 六、接口的逻辑:从"约定"到"契约" 七、推理链条的可追溯性:黑箱必然长成壁垒 八、激励的逻辑:谁为"通"付费,谁为"藏"获利 九、顶层设计:把"通"变成默认值 十、底层原理:最小公共本体加双向可证伪 十一、反例与边界:有些壁垒应该保留 十二、结语:打通不是拆墙,是修门
🎧 有声版 · 云健 · 全篇约 46 分钟

楔子:三堵墙

在南方某座城市,一位患者在一家三甲医院拍过胸部 CT。三个月后他去了另一家医院,医生让他重拍。他把片子带来了,U 盘里、手机里都有。可对面医院的影像系统打不开——不是文件坏了,是那套系统只认自己院内影像归档系统的格式,外面来的影像要经过一轮转换、登记、重新关联患者主索引,流程比重新拍一遍还慢。于是又拍了一次。这一次的辐射、这一次的排队、这一次的几百块钱,都不是因为信息不存在,而是因为信息到了门口进不来。

这是第一堵墙:数据孤岛。它看起来是技术问题,其实是"标识不统一、格式不互认、权限不打通"三件事叠在一起。墙的两边都有数据,可数据说不通。

第二堵墙在仓库里。同一件商品,仓储系统里叫 SKU,财务系统里叫存货编码,电商后台叫商品编号,直播间的话术里叫"几号链接"。人脑能飞快地把这几个名字对到同一件东西上,机器不能。每次系统对接,工程师都要写一张映射表,映射表还会随着新品上架不断腐烂。人觉得这是小事,可就是这张表,决定了库存能不能实时同步、财务能不能日结、大促会不会超卖。

这是语言不通。它比第一堵墙更隐蔽,因为它不报错——系统不会告诉你"我们说的不是一回事",它只会安安静静地算错。

第三堵墙在会议室里。某个部门手里有一批很有价值的数据,上级要求共享。部门负责人很配合,开会、签字、表态,然后数据迟迟不动。原因不复杂:数据交出去,出了错算谁的?被别的部门拿去做成不利于自己的分析,又算谁的?而"不共享"这件事,从来没有人来问责。于是最理性的选择就是拖。

这是动机不对。它既不是技术问题,也不是语义问题,是"谁为通付费、谁为藏获利"的问题。

三堵墙,一堵看得见,一堵半透明,一堵根本不在墙上——它在人心里。可它们有一个共同点:都不是被人刻意砌起来的,是自己长出来的。每一个系统上线时都合理,每一张报表设计时都必要,每一次"先把业务跑起来再说"的妥协都情有可原。十年之后,这些合理叠在一起,就成了墙。

这篇文章要谈的,是这三堵墙背后的同一件事。

我先给一个不太讨喜的判断:信息壁垒的本质,不是路不通,而是语义在传递链条上被形式化折损。所谓形式化,是为了让信息能被机器处理、被流程承载、被跨组织交换,必须把它塞进事先定义好的格子里;所谓折损,是每塞一次,就丢掉一些格子装不下的东西——语境、异常、因果、责任。丢到最后,传过去的东西还在,意思没了。

打通壁垒,靠的不是修更宽的路,是三件事:统一指称,让两边说的是同一个东西;可验证的冗余,让传过去的东西能被检验而不是被相信;把激励从"藏"改成"通",让共享的人不吃亏。这三件事,一件落在逻辑学,一件落在信息论,一件落在制度经济学。它们各自都不新鲜,难的是放在一起看。

一、什么是信息壁垒:从"信息不对称"到"信息不可达"

信息不对称是经济学的老话题。阿克洛夫讲柠檬市场:卖车的人知道车况,买车的人不知道,于是好车被坏车挤出市场。注意这里的结构——信息是存在的,只是分布不均;它没有被摧毁,只是待在一方手里。解决它不需要修路,需要的是信号(质保、检测报告)、筛选(试用期)、声誉(长期博弈)和监管(强制披露)。换句话说,不对称是可以定价的。

信息不可达不一样。它不是"我不知道",而是"我知道了也拿不到、拿到了也用不了"。两家医院之间都有患者的检验结果,两边医生都知道对方做过,可数据在对方的系统里,格式不同、术语不同、权限不通,"知道有"和"能用上"之间隔着一整条工程链。这条链上每一环都可以是断点,而任何一环断了,结果都等价于信息不存在。

我把它拆成四层。

第一层是物理不可达,没有通道。两个单位之间没有网络、没有接口、没有交换介质。这一层最好解决,拉根线、开个端口就行,也最容易被当成全部。

第二层是语法不可达,格式不对。通道有了,但一边发结构化文本,一边只收定长报文;一边用 GBK,一边只认 UTF-8;一边的时间写作"2026-10-23 23:10:00",另一边只存毫秒时间戳。这一层是工程师的主战场,累,但不难。

第三层是语义不可达,意思对不上。两边字段都叫"金额",一边是含税价,一边是不含税价;都叫"状态",一边的"已完成"指发货,另一边的"已完成"指签收。这一层最要命,因为它不报错。系统会忠实地把含税价当不含税价加起来,然后给你一个精确到分的错误答案。

第四层是制度不可达,权限不放。数据在、格式对、意思也清楚,但某条规定说不能给。这一层看起来是人为设障,其实往往是责任的转移:谁授权,谁担责;不授权,就不担责。

四层里,第一层花钱能解决,第二层花人能解决,第三层要花共识,第四层要花制度。现实中的项目失败,十有八九是把它当成第一层来做——以为接上接口就叫打通,结果接口通了,业务没通。

所以本文讨论的"壁垒",主要是后三层。它们有一个共同的逻辑特征:不是信息不存在,而是信息在跨越边界时必须经过一次形式化,而形式化的规则两边不一致。

这个定义很重要,因为它决定了药方。如果壁垒是"没有路",药方是投资;如果壁垒是"形式化规则不一致",药方是标准、本体和契约;如果壁垒是"责任不能转移",药方是制度设计。三者的钱、人、时间完全不是一回事。

二、信息的三重变形:数据、信息、知识、判断

管理学里有个流传很广的金字塔:数据、信息、知识、智慧,一层比一层高,一层比一层值钱。这个模型好记,但它误导了整整一代做信息化的人。它暗示转化是自然的、增益的、单向向上的。实际恰恰相反:每一次向上转化都是一次压缩,而压缩必然丢东西。

先看四层到底是什么。

数据是记录,没有语境。"37.2"是一个数据,它不真也不假,因为它还没说自己是什么。信息是带语境的数据:"患者张某,十月二十三日二十点,腋温三十七点二摄氏度,术前第一天。"有了主体、时间、部位、方法,它才能被判断真假。知识是可复用的规则:"术后第一天腋温三十七点二,在常见范围内,无需特殊处理。"它有适用条件,也有例外。判断是在不确定和价值冲突下做选择:"这个病人今天要不要加做血培养?"指南不管这件事,指南只管一般情况。

四层之间不是加法,是解释。而解释需要解释者,解释者带着自己的规则。

这就是第一个问题:金字塔把"转化"画成了自然过程,其实每一步转化都要由一个具体的系统或具体的人来完成,而不同系统的规则不同。检验科把"37.2"转成"低热",用的是自己的参考区间;急诊科用的是另一套;养老院的护理记录里,三十七点二可能连"异常"都不标。同一个数据,三个信息,三个结论。壁垒就长在这些转化的接缝上。

第二个问题更隐蔽:越往上,越依赖默会知识,越难形式化。数据可以定格式,信息可以定模板,知识可以写成指南,但判断很难。一个高年资医生看到三十七点二,会想到患者昨晚的睡眠、今天的引流液颜色、家属说的那句"他今天没精神"。这些没有被记录,也就无法传递。你把他的结论传过去,对方拿到的是一句话;你把他的数据传过去,对方才可能重建他的判断。

所以第三个问题来了:我们的系统普遍在传结论,而不是传证据。

报表是最典型的例子。一线填明细,科室汇总成指标,院里再汇总成一张大表。等到集团层面看到"本月手术量同比增长百分之八",底下已经压掉了多少东西:哪几天是补录的,哪个科室的口径变了,哪台手术被重复计数。结论很干净,证据全没了。一旦有人质疑这个百分之八,你没有任何办法回溯,只能再往下要一次数据,而下一层又要再往下要一次。每一次回溯都是一次新的运动,每一次运动都带着新的口径偏差。

DIKW 真正的价值不在于分层,而在于提醒我们:层级越高,可验证性越弱。数据可以被核对,信息可以被交叉验证,知识可以被案例检验,判断只能被结果检验,而结果要等很久。

于是打通的方向就清楚了:不是把最高层的"智慧"送过去,而是把最低层的"数据加语境"完整地送过去,让接收方有能力自己重建。传结论是省事的,但省掉的那部分,正是对方判断所需要的部分。传证据是费事的,但只有证据能被检验,也只有证据能跨过组织边界还保持意义。

一句话:信息壁垒常常不是"没传",而是"传了结论、丢了证据"。

三、同一律:壁垒的第一个来源是"指称不统一"

逻辑学有三条基本规律,第一条是同一律:A 是 A。听起来像废话,可它是所有信息系统能够对话的前提。如果在一套流程里"张三"指这个人,在另一套流程里"张三"指另一个人,那么无论接口修得多好、带宽多大,传过去的都是错的。

现实中的指称远比想象中混乱。一个患者在医院里至少有五个身份:身份证号、就诊卡号、医保号、住院号、手机号。姓名会重名,身份证号会录错一位,手机号会换主人,医保号跨省不认。医院信息科最头疼的工程叫患者主索引,做的就是"把这五个号认成同一个人",而且还要处理合并与拆分——两个号其实是同一个人,要合;一个号其实是两个人,要拆。合并错了,病历就串了;拆分慢了,重复检查就来了。

图书馆早就在做这件事,而且做得比医院早一百年。一本书有国际标准书号,有条码号,有索书号,有题名。国际标准书号看起来唯一,其实不唯一:多卷书共用一个号,再版会换号,同一本书的不同装帧也可能不同号。题名更不唯一,同名的书多得是。真正在书架上定位一本书的,是索书号,而索书号的唯一性只在单个馆内成立。编目规则之所以厚得像砖头,不是因为图书馆员爱繁琐,是因为"什么算同一本书"这个问题本身就有歧义:译本算不算?修订版算不算?合订本算不算?每一条规则都是在回答一次同一性判定。

铁路的故事更硬。轨距是一千四百三十五毫米,这个数字不是物理定律,是一次历史选择。轨距不匹配,车就走不过去,货就得卸下来换装。宽轨、米轨、标准轨并存的地区,边境站永远是最忙最贵的地方。标准化的收益是网络效应,代价是路径依赖。所以轨距之争从来不是技术之争,是谁的网络更大的政治经济学。

从这三件事里能提炼出统一指称的三条硬要求。

第一,全局唯一标识。不是"尽量唯一",是"在需要的范围内严格唯一"。这个范围可以是全国,可以是集团,可以是一个城市的医疗联合体,但必须事先划定。范围外的实体,用映射接进来。

第二,生命周期管理。实体不是静止的:人会死,公司会注销,商品会停产,机构会合并。指称系统必须能表达"这个号从某日起失效,并入另一个号",而不是简单删除。删除是最糟的处理,因为它让历史数据变成孤儿。

第三,别名映射与冲突裁决。同一个东西在不同系统里有不同叫法,这是常态,不该消灭。要做的是维护一张可审计的映射表,并且规定冲突时谁优先。没有裁决规则的映射表,迟早会变成两套互相矛盾的真相。

这里要防一个误区:统一指称不等于统一所有字段。它只统一"这是谁",不统一"怎么描述"。患者的身高,骨科和儿科可以有不同的记录精度;商品的重量,仓储和物流可以有不同的单位。指称是根,属性是叶。根必须一条,叶可以很多。

主数据管理这个行当,说到底就是回到同一律。它不难在技术,难在权力:谁有权定义"唯一",谁就有权决定两个部门吵架时听谁的。所以主数据项目失败,通常不是模型画错了,是没人肯交出定义权。

四、语义熵:每过一道手,意思就少一截

信息论里的熵度量不确定性,一条消息的平均信息量越大,熵越高。我这里借这个词,说的不是比特,是"意思还剩多少"。一条信息每经过一次转述、一次汇总、一次重新编码,可用的意思就少一截。我把这个衰减叫语义熵。它不制造噪声,噪声是额外的干扰;它做的是有损压缩,是把装不下的部分直接扔掉。

看一张报表的旅程。

夜班护士在护理记录里写下:"二十三点十分,患者诉切口疼痛,评分七分,给予镇痛处理,半小时后复评三分,入睡。"这是原始记录,有主体、时间、症状、干预、复评、结果,六个要素齐全。

到了科室日报,这句话变成一行:"术后疼痛管理 1 例,已处理。"主体没了,评分没了,复评没了。为什么没了?因为日报装不下一个科室一天八十件事。

到了院级月报,这一行可能连单独出现的机会都没有,它被并进"术后镇痛满意率 96.3%"这个指标里。为什么并进去?因为院级要的是可比性,是可环比、可同比、可对标。一件具体的、有细节的事,会破坏可比性。

到了上级部门的通报,只剩"某院术后镇痛管理达标"。此时如果有人问:"那个七分疼痛的病人后来怎么样?"整条链上没有任何一个环节能回答。不是有人故意隐瞒,是每一级都做了在当时看来完全合理的抽象。

这就是语义熵的三次典型损耗。

第一次是语境剥离。为了让信息能被放进格子,必须去掉格子装不下的部分:谁在什么情况下说的、当时还发生了什么、有没有例外。语境一没,同一句话就可以被合理地被误读。

第二次是异常归并。统计要的是分布,分布要的是把极端值收进"其他"。可临床上,极端值往往就是那个要命的病人;在风控上,极端值往往就是那笔要爆的账。归并让报表好看,也让风险隐身。

第三次是因果替换。原始记录里是"因为疼,所以给药,所以睡着了",是一条因果链。到了指标层,变成"疼痛评分下降"与"满意度上升"两个变量的相关。相关可以被计算,因果不能被计算,于是系统慢慢只记得相关。做决策的人以为自己在看因果,其实在看相关。

三种损耗叠在一起,结果就是:信息量在增加(报表越来越厚),信息密度在下降(能支撑判断的东西越来越少)。

要说明的是,语义熵不可能消除。只要存在汇总,就存在压缩;只要存在跨组织传递,就存在重编码。追求"无损传递"是工程上的浪漫主义,最后一定失败。能做的是三件事:保留原始层,让任何汇总都能下钻回明细;传递时附上口径,说明这个数字是怎么算出来的、排除了什么;允许异议,让下游能标注"我这里看到的不是这样"。

换句话说,语义熵管理的目标不是零损耗,是损耗可追溯。一个组织如果能在三十秒内回答"这个数字从哪来",它的语义熵就是可控的;如果回答不了,那它所有的报表都只是精致的猜测。

五、冗余与校验:打通不是"多传",是"能验"

很多人对"打通"的想象是流量:多接几个系统,多共享几张表,最好再上一个大屏,数字哗哗地滚。这是把打通理解成了搬运。搬运的问题在于,它只保证"发出去了",不保证"到对了"。

通信工程早就把这件事想透了。任何一条可靠的链路,都不是靠"发得更用力",而是靠冗余和校验。奇偶校验位、循环冗余校验、海明码,本质都是主动多传一些看似无用的比特,用来在接收端判断"有没有错""错在哪"。这些比特不承载业务含义,它们承载的是"可信度"。没有它们,一条链路传得越快,错得越狠。

组织之间的信息传递是同一个道理,只是我们很少这么设计它。

看看做得好的行业。银行业是最早实现跨机构互联的,不是因为银行更爱共享,是因为它的业务天生双向:每一笔转账都有付款方和收款方,每一次记账都有对手方。日终对账,两边数字对不上就挂账查。对账这个动作,就是最朴素的可验证冗余——它不增加信息量,它增加的是"这批信息能不能被确认"。

发票是另一个例子。一张增值税发票上有发票代码、号码、开票方税号、受票方税号、金额、税额。单看一张发票,这些字段是业务信息;放在全国范围内交叉比对,它们就成了校验码。上下游一勾稽,虚开就露出来了。这套系统之所以有效,不是因为采集得多,是因为它让每一张票都能被另一张票验证。

集装箱的铅封也是。铅封号本身不说明箱子里装了什么,它只说明"从封上到打开,没有人动过"。这是一个纯粹的可验证冗余:它不传递内容,它传递完整性。

把这四种冗余拆开看,会发现它们分别守在四个位置。

结构冗余守入口:必填字段、值域约束、格式检查。它的作用是让明显错误在进门时就被挡住。大部分数据质量问题,其实是入口太松。

内容冗余守传输:校验位、哈希、数字签名。它的作用是让篡改和损坏可被发现。跨组织交换尤其需要,因为你不认识对面的人,只能认识对面的签名。

过程冗余守操作:双人复核、时间戳、操作留痕。它的作用是让"谁在什么时候做了什么"可回溯。医院的手术安全核查表就是典型,它不提高手术技术,它降低的是"漏掉一步"的概率。

社会冗余守关系:回执、确认、异议期。它的作用是让接收方有机会说"我这边不是这样"。这一层最贵,因为要对方真的去看。

四层里,前三层是技术能做的,第四层是制度才能做的。而现实是,我们花了九成的钱在建通道,花不到一成的钱在建校验。于是系统之间确实通着,但没人敢信。

这里有一条判断标准,很好用:如果一个数据交换过程,接收方无法在不联系发送方的情况下判断这条数据对不对,那它就不是"通",只是"发"。单向广播的系统一定长成壁垒,因为它永远不知道自己错了。

六、接口的逻辑:从"约定"到"契约"

两个系统要说话,得先有接口。接口这件事看起来是技术活,其实分三层,一层比一层难。

最浅一层是约定。两边工程师拉个群,说好"你传给我一个订单号,我还你一个状态"。这是人情,不是工程:人一换就没了,量一大就崩。靠约定连起来的系统,通常只能撑到第一次人员流动。

中间一层是协议。有文档、有字段、有格式、有示例,能自动生成客户端。这已经比大多数企业做得好。但协议通常只写成功路径:请求怎么发,响应长什么样,字段什么类型。它不写失败。

最深一层是契约。契约和协议的区别只有一句话:契约把失败也形式化了。

什么叫把失败形式化?至少要有六件事。

第一,幂等。同一个请求重复发十次,结果必须和发一次一样。这不是洁癖,是必需:网络会重发,客户端会重试,用户会连点。支付回调尤其如此——没有幂等键的支付接口,每一次网络抖动都可能变成一次重复扣款。

第二,超时与重试语义。超时之后,调用方该重试还是该查询?重试几次?间隔多久?如果接口不说,每个对接方只能自己猜。猜出来的方案各不相同,各不相同就意味着每一个对接方都要写一套补丁。补丁就是壁垒的砖。

第三,错误码分级。哪些错是调用方的(参数错、权限不足),哪些是提供方的(内部故障、依赖超时),哪些是业务态(余额不足、单据已关闭)。三类错的处置方式完全不同。全都返回一个"操作失败",等于把排查成本转嫁给对方。

第四,版本策略。只增字段不删字段,破坏性变更要提前公告并给迁移期。单方面改字段类型,就是单方面撕毁合同。这种事在开放平台上一发生,生态就开始流失。

第五,限流与配额。明确告诉对方"你一分钟能调多少次",而不是等对方打满再封。突然封禁是最伤信任的做法,因为它把技术问题变成了惩罚。

第六,责任边界。数据出错谁负责,服务不可用怎么赔,争议怎么仲裁。这一条最不像技术,却最决定接口能不能长期活着。

拿企业协同软件来对照。企业微信和钉钉都做开放平台,能力清单大同小异,真正的差别在文档的颗粒度、错误码的完备度、变更的公告节奏、审核的透明度。开发者不会因为"功能多一个"就迁移,但会因为"出了问题查不出来"而迁移。

所以接口不是技术文档,是制度文本。它规定了两边在正常时怎么配合、在异常时怎么分担。写接口文档的是工程师,但定契约的必须是有权拍板的人——因为契约里每一条"谁负责",都是一次真实的权力分配。

很多接口做得很烂,根子不在技术能力,在于写接口的人没有权力说"这种情况算你的"。

七、推理链条的可追溯性:黑箱必然长成壁垒

一个结论要能被别人接受,靠的不是它有多正确,而是它能不能被复核。复核的前提是可追溯:从结论往回走,每一步都能找到依据。

信贷风控是最早撞上这堵墙的地方。模型给一个客户打了低分,拒贷。客户来问为什么,客户经理答不出来,因为模型有两百个变量和上亿个参数。监管来问依据,风险部门只能给出一份特征重要性排序。这份排序对建模有用,对申诉没用——它说的是"总体上哪个变量重要",不是"这个人为啥被拒"。结果就是,模型越强,越难解释;越难解释,越难被监管接受;越难被接受,越难接进跨机构的联合风控。一个技术上更先进的模型,反而把自己锁在了单家机构内部。

医疗人工智能遇到的是同一堵墙。一个影像模型说"疑似恶性,建议活检",医生凭什么信?如果它能给出热力图、给出与指南对应的征象描述、给出相似病例的随访结果,医生会认真看;如果它只给一个概率,医生会关掉它。这不是医生的保守,是责任问题:出了事,签字的是医生,不是模型。

黑箱的代价可以列三条。

第一,不能被审计。审计要的是"你的规则是什么、什么时候改的、改之前跑过什么验证"。黑箱给不出。

第二,不能被追责。一个错误发生了,是数据错、规则错、还是执行错?分不清,就无法改进,也无法定责。分不清责任的组织,最后会演化出一种自保文化:谁都不用模型,谁都不担风险。

第三,不能被组合。这一条最要命。现代系统是拼出来的:风控拼征信、征信拼运营商、运营商拼身份核验。每一段都得能定位故障,整条链才敢上线。一个不可追溯的模块,就像一根不知道材质的钢筋,没人敢把它焊进承重结构。

所以可追溯性不是锦上添花,它是互操作的前置条件。

落到工程上,可追溯至少要求四样东西被记录下来:输入快照(当时喂进去的是什么,包括版本)、规则或模型版本(当时跑的是哪一版)、关键中间量(哪几个判断决定了走向)、责任人与时间(谁在什么时候确认过)。四样缺一样,回溯就会断。

这里要区分两个概念。可追溯不等于完全可解释。一个深度学习模型可能永远说不清全部内部机理,但它可以做到:输入可复现、版本可定位、关键特征可呈现、异常样本可人工复核。做到这四点,它就是一个"可被质疑"的系统。可被质疑,才可被接入。

反过来,一个拒绝被质疑的系统,无论它多准,最终都会被隔离在某个角落。这不是技术对错,是组织免疫系统的本能反应。

八、激励的逻辑:谁为"通"付费,谁为"藏"获利

前面七节讲的是"能不能通",这一节讲"愿不愿通"。很多壁垒在技术上早就不是问题,卡住的原因是:藏起来对个人有利,通出去对个人有害。

数据在组织里有三重属性。它是资产,能换钱;它是权力,知道别人不知道的事,就有信息优势;它还是盾牌,出了事,谁掌握原始数据,谁就有解释权。三重属性叠加,任何一个理性的中层都会选择少给、慢给、给经过修饰的版本。

看几个具体场景。

政务数据共享,最难的一环往往不是平台,是部门。数据交出去,如果下游用错了,舆论追责时会追到源头:"这个数是谁给的?"提供方于是要求每一次使用都审批,审批就把实时共享变成了批处理,批处理就把"通"变成了"报"。

企业里,销售不愿意把客户名单完整录入系统,因为名单就是他的筹码。你跟他讲数字化,他心里算的是"我交出去,公司随时可以换掉我"。

医院不愿意把检查结果毫无保留地互认,除了质量顾虑,还有一个很现实的原因:病人留在本院,收入才留在本院。

这三件事的共同结构是:通的收益由集体分享,藏的成本由别人承担。经济学把这种结构叫激励不相容。你跟当事人讲一万遍大局,也改不了他桌上的那张考核表。

所以打通的关键不是教育,是改结构。有四件事可做。

第一,举证责任倒置。默认共享,不共享要书面说明理由,由上级裁定。现在的做法常常相反:默认不共享,想要的人一次次打报告。默认值一改,谈判成本立刻从"要的人"转到"不给的人"身上。

第二,责任分离。数据质量的责任归提供方,使用后果的责任归使用方,中间用共享日志把"谁在什么时候取走了什么"记清楚。这样一来,提供方不怕被牵连,使用方也不能把锅甩回去。很多"不敢共享",本质是责任没有切开。

第三,给共享计价。共享不是免费的体力活,它要清洗、要映射、要维护接口。这部分工作量必须进入预算和考核,否则它就是纯亏损项。更彻底的做法是内部结算:谁用谁付费,提供方有收入,才有动力把质量做好。

第四,让"藏"有代价。数据长期不更新、不共享、不响应,要在考核里体现。不是罚,是让它不再是最省事的选择。

这四条合起来,指向一个原则:不要指望人变好,要设计一个即使人自私也倾向于通的机制。机制设计里管这叫激励相容——让每个人追求自己利益的时候,恰好也在为整体做贡献。

顶层设计如果不碰激励,那它就只是画在纸上的架构图。

九、顶层设计:把"通"变成默认值

顶层设计这个词被用坏了,常常等于"领导重视加一张架构图"。真正的顶层设计要解决的是三件事,我把它叫三角:标准定指称,架构定路径,制度定责任。缺一个角,另外两个就会空转。

先说标准。标准的作用不是选最优,是选最大公约数。集装箱是最好的案例。上世纪五十年代之前,散货装卸靠人力,一艘船在港口停半个月是常态。集装箱不是新技术,关键动作是把它的大小、角件、锁具定死。一九六一年国际标准化组织定下两种主流箱型,之后港口吊机、铁路平车、卡车底盘、船舶舱位全部围绕这两个尺寸重建。改造的代价极大,但改完之后,装卸从几天变成几小时,全球贸易的成本结构被彻底改写。请注意,标准赢的不是"最先进",是"足够好且大家都能接"。

铁路轨距是反面教材。各国各修各的,等到要互联时才发现车过不去,只能在边境换装。标准定晚了,路径依赖就形成了,此后每一公里的改造都是政治。

再说架构。架构不是把所有数据倒进一个湖,那只是把孤岛搬到一个池子里。有效的架构是分层的:原始层保留全量明细,谁都不许改;共享层只放经过裁剪的公共部分;应用层各自发挥。三层之间用接口连接,接口遵守上一节说的契约。这样做的目的是让"共享"有一个固定的、低成本的出口,而不是每次都临时协调。

最后说制度。制度要回答三个问题:什么必须共享,什么可以不共享,不共享由谁批。成熟的写法是"默认共享加例外清单":列出法定不能共享的类别,其余默认开放,需要限制的必须逐条登记并定期复核。这和现在的"默认封闭、逐次申请"正好相反。默认值一变,整个组织的摩擦方向就变了。

三角之间是乘法关系。有标准没架构,各部门还是各建各的,标准贴在墙上;有架构没制度,平台建好了没人往里放数据,最后变成一个演示系统;有制度没标准,数据是通了,可两边对不上,通得越多错得越多。

所以顶层设计的产出不该是一本厚厚的规划,而应该是三张能执行的清单:必须统一的字段清单(通常不超过二十个)、必须经过的路径清单(数据从哪进、从哪出、在哪留痕)、必须签字的人清单(谁批共享、谁担责任、谁做仲裁)。三张纸定不下来,再漂亮的蓝图都是装饰。

顶层设计最难的部分,不是技术选型,是决定"谁在什么时候必须做什么"。这是一句制度语言,不是一句技术语言。

十、底层原理:最小公共本体加双向可证伪

如果只能记住一条工程原则,我选这条:不要追求全局统一,追求最小可对齐。

大本体的诱惑很大。既然要打通,干脆把术语、编码、流程全部统一。这种项目通常在第三年死掉:范围太大,专家吵不完,业务等不起,最后上线一个谁也说不清的中间版本。真正活下来的互操作,都是从一个很小的公共集合开始的。

我把它叫最小公共本体。它只包含五类东西:实体标识(这是谁)、时间(什么时候)、单位(多少)、状态机(现在到哪一步了)、错误语义(出问题算什么)。五类之外,各说各话,靠映射衔接。

医疗检验互认是个好例子。两家医院要让对方的检验结果被认可,并不需要统一所有项目名称和所有报告模板。需要的只是六项:项目编码对齐、单位一致、参考区间明确、检测方法学标注、质控状态可查、采样时间精确到小时。六项齐了,结果就能被对方医生使用;缺一项,就得重做。这就是最小公共本体的力量——它不消灭差异,它让差异可比较。

另一个例子是供应链。发货方发提前发货通知,收货方按通知收货并回传差异。两边不需要用同一套仓储系统,只需要对齐单据号、物料号、数量、批次、时间。对齐了,就能自动对账。

第二块基石是双向可证伪。这个词听着学术,意思很朴素:甲能验证乙说的话,乙也能验证甲说的话。

注意,是双向。单向的验证只能产生"我信你"或者"我不信你",双向的验证才能产生"我们可以一起工作"。银行对账之所以稳,就是因为双向:你有你的账,我有我的账,日终一比,差额挂起。谁也不能单方面宣布自己是对的。

双向可证伪需要三个条件。第一,数据可复现:给对方原始输入,对方能跑出同样的结果。第二,规则可查看:不要求公开全部代码,但要求关键判断依据可被检视。第三,异议有通道:发现不一致时,有一个被制度承认的地方可以提出来,并且必须得到回应。

这三条做到了,信任就不再依赖关系,而依赖结构。这是关键的区别:靠关系建立的互通,人一走就断;靠结构建立的互通,换谁都能跑。

最小公共本体解决"我们对得上",双向可证伪解决"我们敢互信"。一个管语义,一个管治理。两者合起来,就是本文说的底层原理。它不依赖某一种技术,也不依赖某一个组织文化,只要两个主体愿意,随时可以开始。

十一、反例与边界:有些壁垒应该保留

讲到这里,很容易滑向一个结论:所有壁垒都该拆。这个结论是错的,而且危险。

有三类壁垒必须保留。

第一类是隐私。病历在两家医院之间互通,能救命;但"全部互通"和"按需互通"是两件事。合理的做法是最小必要加目的限定:为了这次诊疗,只调与这次诊疗相关的部分,调阅留痕,用完即止。把整个病历库敞开,短期看是效率,长期看是灾难——一旦泄露,患者会用脚投票,最终连合理的共享都会被拒绝。

第二类是安全。数据要分级分类,核心数据不出域,重要数据可控流动,一般数据高效流动。这不是保守,这是让流动可持续。全都放开,一次事故就足以让整个共享机制停摆三年。

第三类是噪声,也就是统计上的保护。人口普查这类数据,如果原样发布,小区域、小群体可以被反推识别到个人。现代做法是主动注入校准过的噪声,牺牲一点精度,换回不可识别性。这里的噪声不是错误,是设计。它提醒我们:完全精确和完全开放,有时候是互相矛盾的。

那怎么判断一道壁垒该留还是该拆?我常用三个问题。

第一,这道壁垒保护的是谁?如果保护的是数据主体的权利,倾向保留;如果保护的是某个部门的便利或租金,倾向拆除。

第二,成本由谁承担?如果壁垒的收益归少数人、成本由公众承担,那它大概率站不住脚。

第三,有没有更小的替代?很多"必须封闭"其实是"懒得分类"。分级、脱敏、聚合、沙箱,都是比一刀切更精细的工具。

还要看到一个反直觉的现象:无差别的打通,往往会制造更大的壁垒。因为信任是有阈值的,一次滥用就会让所有人退回纸质、口头和私下交换。到那时,信息不是流得更快,而是彻底进入暗处,连审计的可能都没有了。

所以边界不是打通的敌人,边界是打通能够长期存在的条件。真正专业的做法,不是宣布取消边界,而是把边界画清楚、标明白、可审计。

十二、结语:打通不是拆墙,是修门

回到开头那三堵墙。

数据孤岛,本质是指称不统一,于是两边说的不是同一个东西。语言不通,本质是语义在链条上被反复压缩,传到最后只剩结论,没了证据。动机不对,本质是通的收益归公、藏的成本归人,理性的人自然选择藏。三堵墙,三种病,三副药:同一律、可验证的冗余、激励改造。

但我更愿意换一个比喻收尾。

墙是用来隔绝的,门是用来管理的。拆墙听起来痛快,可墙一倒,风也进来了,谁都挡不住。真正专业的做法是修门:门框是标准,决定门开在什么位置、多宽多高;门轴是接口,决定门能不能顺畅转动;门锁是权限,决定谁能进、进到哪一间;门槛是校验,决定进来的人有没有资格、带的东西对不对;门牌是元数据,决定站在门外的人知不知道里面是什么。

这五样东西,没有一样是"拆",全都是"建"。

信息壁垒之所以难打,是因为我们总想用一次运动解决一个结构问题。可结构问题只能用结构解决:把指称统一到能对齐的最小集合,把校验嵌进每一次交换,把激励改到让共享的人不吃亏。这三件事都很慢,慢到不像一场战役,更像一次装修。

可也正是这种慢,才留得住。靠行政命令强行打通的数据,往往在文件失效的那天重新断掉;靠结构打通的数据,会自己长下去,因为每一方都在里面得到了好处。

最后说一句我相信的话:信息不是靠热情流动的,是靠结构流动的。热心肠能推动第一次,只有结构能保证第一万次。