用户看到的是一个订单号,系统里它要走过三段路。把这三段拆开讲,不是为了炫技术,而是因为「谁能看到什么」这个问题,答案就藏在分层里。

三层分别做什么
国家互联网信息办公室 2024 年 3 月公布的《促进和规范数据跨境流动规定》划出了数据出境的边界,我们的系统就是照着这条边界分层的。按处理顺序,一个订单依次经过三层,每层职责单一,互相不越界。
- 存储层:负责「放在哪、谁能取」。订单、地址、支付状态等原始记录存放在境内节点,按角色授权访问,取数留痕;
- 存证层:负责「说过的话不能改」。批次检验结论、区域授权凭证这类需要长期取信于人的信息,生成摘要并留下时间证明;
- 智能层:负责「算得快一点」。风控识别、售后归类、问答应答在这一层完成,读的是脱敏后的结论,不直接读原始记录。
不分层会怎么样
不分层的系统写起来更省事:一个大库,所有服务都能查。问题出在出事之后——泄露了不知道从哪泄的,改了不知道谁改的,用户问「你们凭什么说这批货合格」,你只能拿出一条数据库记录,而数据库记录是可以被改的。

拆成三层之后,每一层承担一种「说得清」:
- 存储层说得清访问:谁在什么时候取了哪个字段,有记录可查;
- 存证层说得清时间:一份结论在某个时刻已经存在,事后无法倒填;
- 智能层说得清依据:模型读的是脱敏结论,不是某一位用户的原始记录。
分层的目的不是好看,是让「你凭什么这么说」这个问题永远有答案。
哪一层在跑,哪一层还没有
目前落地程度不一样,我们分开讲。存储层与智能层的分工已经在跑:智能层的问答与识别读的是脱敏结论,帮助中心与 UC 助手 共用同一份问答源,两处逐字一致,不会出现「客服一个说法、页面另一个说法」。
存证层部分建成。区域授权凭证已经可以自助核验——在 App 的核验页输入凭证哈希,就能看到授权区域、行政区划代码、授权日期,以及第三方时间戳存证对应的区块高度与时间,原始存证文件也可以下载下来自己验。商品批次的链上存证仍在建设中,这一段我们不会写成已完成。
还有一件事值得说:分层会让链路变长,响应变慢。我们在几个环节上确实牺牲了一点速度,换的是出问题时能定位到具体哪一层。这个取舍我们认。
想动手验一次的话,App 的核验页不需要登录,输入一串凭证哈希就能看到结果,也可以把存证文件下载下来用第三方工具校验。
