SDE Universes·新思想前沿计算机科学主干
新思想前沿 · 计算机科学主干

数据库与数据系统

近二十年 · 20 个新理论 · 约 17100 字 · 王德生 亲撰 · 2026 年 8 月

数据库这二十年的主线可以用一个词概括:。先把计算与存储拆开,于是弹性与按量计费成为可能;再把内存从服务器上拆下来放进机架级的池子;把事务与分析拆成两条路径又设法合回去;把表格式从引擎里拆出来变成开放标准,于是同一份数据可以被多个引擎读写。每一次拆分都带来弹性与成本的收益,也带来一致性、延迟与运维复杂度的新账单。而这十年末期,一个新的负载——向量检索与大模型的上下文供给——正在要求它再拆一次。下面二十条按此排列:先是架构的拆解,再是存储与执行,最后是新负载与治理。

二十年 · 二十个理论 · 约 2006–2026

一、存算分离Compute–Storage Disaggregation

提出2016 年前后由云数仓产品确立为主流架构。关键把持久化数据放在对象存储上,计算节点无状态、可随时增减。

传统数据库把数据与计算绑在同一台机器上,扩容意味着同时扩两者,而负载的波动使资源长期闲置。存算分离把数据放在共享的对象存储上,计算节点只保留缓存,因而可以按查询负载秒级伸缩,甚至在空闲时缩到零

这一架构的经济学后果比技术后果更大:它使数据库从「买断的容量」变成「按秒计费的服务」,也使多个互不干扰的计算集群可以读同一份数据(数据共享),从而改变了组织内部的数据协作方式。

技术代价是延迟:对象存储的访问延迟比本地磁盘高一到两个数量级,因而必须靠多层缓存、预取与列式格式的裁剪来补偿。整个架构的性能取决于缓存命中率,而不是存储本身的速度

它也把一致性问题重新摆上桌面:多个计算集群同时写同一份数据时,需要一个元数据服务来仲裁。元数据服务因此成为新的中心与新的瓶颈——拆掉一个中心,往往会在别处长出一个。

从组织看,它还改变了谁能建数据平台:无状态计算节点使得团队不必再管理副本、备份与故障切换。把最难的可靠性工程集中到存储服务里,是这一架构最大的实际收益,其价值在小团队身上尤其明显。

位置E|它把“把持久化数据放在对象存储上,计算节点无状态、可随时增减”当成单独够用的那一样 单因把持久化数据放在对象存储上 预设〔01 谁进入分母〕默认“传统数据库把数据与计算绑在同一台机器上,扩容意味着同时扩两者”在比较前已经稳定 量纲存算分离在同一基准与版本下保持方向的实例/全部复现实例 失效当“它也把一致性问题重新摆上桌面:多个计算集群同时写同一份数据时”不成立时,存算分离停止外推 自曝存算分离自己留下的反证入口是第四段所承认的“它也把一致性问题重新摆上桌面:多个计算集群同时写同一份数据时,需要一个元数据服务来仲裁” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“它也把一致性问题重新摆上桌面:多个计算集群同时写同一份数据时”被排除的对象 异名本条的“把持久化数据放在对象存储上”在邻域称作“样本可见性”;另见第 033 号第一幕甲条《宏基因组:不可培养的多数第一次进入分母》 

二、湖仓一体与开放表格式Lakehouse and Open Table Formats

提出2020 年前后提出概念,开放表格式在 2023–2025 年成为事实标准。关键把事务能力加到廉价的对象存储上,使数据湖具备数据仓库的语义。

数据湖便宜、开放、能存任何格式,但缺乏事务、模式演进与时间旅行;数据仓库有这些能力,却把数据锁在专有格式里。湖仓的做法是在对象存储的文件之上加一层元数据与日志,从而提供原子提交、快照隔离与模式演进——数据仍是开放格式的文件,能力却接近数据库。

真正的转折是表格式的标准化:当多个引擎(批处理、流处理、交互查询、机器学习框架)能读写同一张表,数据的所有权就从引擎厂商回到了使用者手里。这一转变在这十年后期被主要厂商相继接受,其商业含义大于技术含义。

技术上的核心问题是元数据规模与并发提交:一张表可能有数百万个文件,列出与裁剪文件本身成为瓶颈;而多写者并发提交需要乐观并发控制与冲突检测。「日志即真相」的设计使这些问题可解但不简单

尚未解决的是治理与小文件:流式写入产生大量小文件,必须靠后台压实维护性能,而压实与读写并发的协调是运维负担的主要来源。开放格式解决了锁定问题,没有解决运维问题

值得单列的是它的政治经济学:表格式的开放使得存储与计算可以分别采购,厂商无法再用数据格式锁定客户。一项技术标准直接改变了市场结构——这在数据库四十年历史上很少发生。

位置S|它把“把事务能力加到廉价的对象存储上,使数据湖具备数据仓库的语义”当成单独够用的那一样 单因把事务能力加到廉价的对象存储上 预设〔01 谁进入分母〕默认“数据湖便宜、开放、能存任何格式,但缺乏事务、模式演进与时间旅行”在比较前已经稳定 量纲湖仓一体与开放表格式在同一基准与版本下保持方向的实例/全部复现实例 失效若把“尚未解决的是治理与小文件:流式写入产生大量小文件”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝湖仓一体与开放表格式自己留下的反证入口是第四段所承认的“尚未解决的是治理与小文件:流式写入产生大量小文件,必须靠后台压实维护性能” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“尚未解决的是治理与小文件:流式写入产生大量小文件”被排除的对象 异名本条的“把事务能力加到廉价的对象存储上”在邻域称作“样本可见性”;另见第 097 号第一幕乙条《贝叶斯年代模型:测年从单点变成事件序列》 

三、写优化存储Log-Structured Merge Trees, Reconsidered

提出结构在 1996 年提出,2010 年代成为键值存储的主流并被系统性分析。关键把随机写变成顺序写,代价是读放大与后台压实。

面对写多读少的负载,就地更新的树结构会产生大量随机写。合并树把写入先缓冲在内存、批量顺序落盘,再由后台逐层合并。这一结构支撑了这十年绝大多数键值存储与许多数据库引擎。

这十年的理论贡献是把它的取舍写成了显式的三角:读放大、写放大与空间放大三者不可兼得,任一设计都是在这个三角上选一个点。有了这一刻画,存储引擎的调优从经验变成了在给定负载下求解参数。

由此产生了「自适应」方向:根据实际负载在线调整层级结构与合并策略,甚至在树与哈希、行存与列存之间平滑过渡。「一个引擎适配所有负载」这一长期目标,第一次有了可操作的形式

工程上的持续难题是压实带来的尾延迟:后台合并会周期性占用磁盘带宽,造成延迟尖峰。压实调度是这类系统最主要的运维痛点,而它本质上是一个资源隔离问题,而非算法问题。

这条线还提供了一个可复用的做法:把设计空间画成一个显式的取舍面,让参数选择变成在面上取点。同样的做法在缓存、编码与索引设计中都被证明有效,其价值是把「凭经验调优」变成「按负载求解」。

位置E|它把“把随机写变成顺序写,代价是读放大与后台压实”当成单独够用的那一样 单因把随机写变成顺序写,代价是读放大与后台压实 预设〔06 聚合次序不影响结论〕默认“面对写多读少的负载,就地更新的树结构会产生大量随机写”在比较前已经稳定 量纲写优化存储在同一基准与版本下保持方向的实例/全部复现实例 失效当“压实调度是这类系统最主要的运维痛点,而它本质上是一个资源隔离问题”不成立时,写优化存储停止外推 自曝写优化存储自己留下的反证入口是第四段所承认的“压实调度是这类系统最主要的运维痛点,而它本质上是一个资源隔离问题,而非算法问题” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“压实调度是这类系统最主要的运维痛点”被排除的对象 异名本条的“代价是读放大与后台压实”在邻域称作“非交换性”;另见第 035 号第一幕乙条《合成基因电路:用造出来的回路检验机制》 

四、学习型索引Learned Index Structures

提出2018 年提出,随后经历完整的热潮与修正。关键索引本质上是一个从键到位置的函数,因而可以用模型拟合。

树索引存储的是键与位置的对应关系,而这一关系可以看作累积分布函数。学习型索引用一个分段模型拟合它,查找时先预测位置再局部纠错。在数据分布规则时,其体积与查找速度都优于传统结构。

随后的检验给出了更细的图景:优势高度依赖数据分布,在对抗性或高度倾斜的分布上退化;更新代价高,因为插入会破坏模型;而与经过数十年优化的传统实现相比,工程细节的差距常常抵消理论优势。多项重做研究强调必须与调优后的基线比较。

留存下来的是思想而非具体结构:「用数据分布的先验换空间与时间」这一原则被吸收进主流实现——分段线性近似被用于压缩索引、用于加速范围过滤器、用于优化布隆过滤器的内存分配。

它是这十年数据库领域一次典型的完整循环:提出、过度承诺、独立复现、缩水、以组件形式沉淀。这一循环本身值得记录,因为同样的过程正在向量索引与学习型查询优化器上重演。

它留下的最有价值的东西是一条审稿规范:与经过同等调优的基线比较。这条规范此后被推广到整个系统领域,其纠正力度大于任何一篇具体的反驳论文。

位置E|它把“索引本质上是一个从键到位置的函数,因而可以用模型拟合”当成单独够用的那一样 单因因而可以用模型拟合 预设〔17 局部最优可加总为整体最优〕默认“树索引存储的是键与位置的对应关系,而这一关系可以看作累积分布函数”在比较前已经稳定 量纲学习型索引在同一基准与版本下保持方向的实例/全部复现实例 失效当“这一循环本身值得记录,因为同样的过程正在向量索引与学习型查询优化器上”不成立时,学习型索引停止外推 自曝学习型索引自己留下的反证入口是第四段所承认的“这一循环本身值得记录,因为同样的过程正在向量索引与学习型查询优化器上重演” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“这一循环本身值得记录”被排除的对象 异名本条的“因而可以用模型拟合”在邻域称作“局部—整体错位”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 

五、向量检索Vector Search and Approximate Nearest Neighbors

提出近邻图索引 2016 年前后成熟,2023 年后因检索增强生成而成为主流负载。关键把「相似」变成可索引的操作。

把文本、图像与音频编码成高维向量之后,检索的语义从「精确匹配」变成「距离最近」。高维空间中的精确最近邻不可能高效求解,因而实践依赖近似方法:基于近邻图的索引在召回率与延迟上远优于此前的方法,成为事实标准。

这一负载对数据库提出了新要求:索引构建成本高、内存占用大、更新与删除困难、且召回率是一个可调而非确定的性质。最后一点尤其陌生——传统数据库的查询要么正确要么错误,而向量检索的正确性是一个概率。

架构上出现了两条路线:专用向量数据库,与在既有关系数据库中加入向量类型与索引。后者的优势在于过滤与向量检索的组合查询(先按元数据过滤再找相似),而这恰是实际应用最常见的形态,也是纯向量系统最不擅长的。

当前的前沿是把索引放到磁盘与解耦内存上以降低成本,以及处理十亿级规模下的更新。「召回率、延迟、成本、可更新性」构成一个新的四角取舍,其系统化刻画尚未完成——与合并树三角当年的处境相似。

还有一层与安全相关:向量索引会泄漏语义邻近关系,因而即便原文加密,索引本身也可能暴露内容。「加密存储+明文索引」是当前多数向量系统的实际状态,这一风险尚未被普遍认识。

位置D|它把“把「相似」变成可索引的操作”当成单独够用的那一样 单因把「相似」变成可索引的操作 预设〔30 未计价者不影响结算〕默认“把文本、图像与音频编码成高维向量之后”在比较前已经稳定 量纲向量检索在同一基准与版本下保持方向的实例/全部复现实例 失效当“「召回率、延迟、成本、可更新性」构成一个新的四角取舍”时,向量检索停止外推 自曝向量检索自己留下的反证入口是第四段所承认的“「召回率、延迟、成本、可更新性」构成一个新的四角取舍” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“「召回率、延迟、成本、可更新性」构成一个新的四角取舍”被排除的对象 异名本条的“把「相似」变成可索引的操作”在邻域称作“影子成本”;另见第 126 号第一幕甲条《约束诱导运动疗法:把能动改成真正在用》 

六、内存解耦Memory Disaggregation

提出远程直接内存访问方案在 2010 年代后期,新一代互连标准在 2024–2025 年进入商用数据库。关键把内存从服务器里拆出来,变成可被多台机器共享的池。

服务器的内存与算力比例是固定的,而负载的需求比例不是,因而两者总有一个闲置。内存解耦让计算节点通过高速互连访问机架级的内存池,从而按需分配内存而不必更换机器。数据库是最早的落地场景,因为它的性能几乎完全由内存容量决定。

早期方案基于远程直接内存访问,需要改写数据结构以适配「远程内存访问比本地慢一个量级」的现实。新一代缓存一致互连使远程内存可以像本地内存一样被寻址,延迟差距缩小到数倍,编程模型大幅简化。已发表的工业评测报告了在池化与共享场景下的可观吞吐提升。

对数据库设计的影响是结构性的:缓冲池可以跨节点共享,故障恢复时不必重新加载数据,多主写入成为可能。这几项各自都能显著改变系统架构。

尚未解决的是一致性与故障域:共享内存池意味着一个内存故障可能影响多个节点,而隔离与容错机制尚不成熟。解耦提高了利用率,同时把故障从单机放大到机架——这是所有池化资源共有的代价。

从数据中心整体看,内存解耦与存算分离是同一逻辑在不同层级的复制:把利用率低的资源池化,用互连换取弹性。下一个候选是加速器池化,其技术条件正在成熟,而故障域放大的问题同样会重现。

位置E|它把“把内存从服务器里拆出来,变成可被多台机器共享的池”当成单独够用的那一样 单因把内存从服务器里拆出来,变成可被多台机器共享的池 预设〔28 记录存在即可核对〕默认“服务器的内存与算力比例是固定的,而负载的需求比例不是,因而两者总有一个闲置”在比较前已经稳定 量纲内存解耦在同一基准与版本下保持方向的实例/全部复现实例 失效若把“尚未解决的是一致性与故障域”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝内存解耦自己留下的反证入口是第四段所承认的“尚未解决的是一致性与故障域:共享内存池意味着一个内存故障可能影响多个节点” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“尚未解决的是一致性与故障域”被排除的对象 异名本条的“变成可被多台机器共享的池”在邻域称作“可审计性”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 

七、确定性事务Deterministic Transaction Processing

提出2012 年前后提出,2010 年代后期在若干系统中落地。关键先定好执行顺序再执行,从而消除分布式协调中的不确定性。

分布式事务的开销主要来自两阶段提交与死锁处理,而这些开销源于「不知道其他事务会做什么」。确定性方案把顺序前置:先由一个定序层确定全局事务顺序,各节点按同一顺序执行,由于结果被顺序唯一决定,就不需要提交协商,副本之间也不需要复制日志——各自重放即可

代价是必须事先知道事务的读写集合,这对交互式事务不成立,因而需要预执行或重连续。这一限制决定了它的适用范围:适合可预先声明的存储过程式负载,不适合任意的交互式应用

同期的另一条主线是全球一致性数据库:用高精度时钟与不确定性区间给出外部一致的时间戳,从而在跨地域部署下提供严格可串行化。这两条路线代表了同一目标的两种代价:一个买时钟,一个改编程模型

这十年的共识是分层:严格可串行化在需要时可得且代价明确,而多数应用运行在更弱的隔离级别上。真正的进展不是让强一致变便宜,而是让隔离级别的语义与代价可以被精确说明并选择。

它对应用开发者的实际含义常被误解:更强的隔离级别不总是更好,因为它会放大冲突与延迟。真正的进步是各级别的语义被精确定义,从而「选哪一级」成为可论证的工程决策而非默认设置。

位置S|它把“先定好执行顺序再执行,从而消除分布式协调中的不确定性”当成单独够用的那一样 单因先定好执行顺序再执行 预设〔06 聚合次序不影响结论〕默认“分布式事务的开销主要来自两阶段提交与死锁处理”在比较前已经稳定 量纲确定性事务在同一基准与版本下保持方向的实例/全部复现实例 失效若把“这十年的共识是分层:严格可串行化在需要时可得且代价明确”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝确定性事务自己留下的反证入口是第四段所承认的“这十年的共识是分层:严格可串行化在需要时可得且代价明确,而多数应用运行在更弱的隔离级别上” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“这十年的共识是分层:严格可串行化在需要时可得且代价明确”被排除的对象 异名本条的“先定好执行顺序再执行”在邻域称作“非交换性”;另见第 035 号第一幕乙条《合成基因电路:用造出来的回路检验机制》 

八、流批统一Unifying Streaming and Batch

提出2015 年前后的数据流模型确立概念,2020 年代增量视图维护使其落地。关键批处理是流处理的特例,两者不该有两套代码。

同一份业务逻辑常常需要写两遍:一遍批处理跑历史数据,一遍流处理跑实时数据,两者结果不一致是常态。统一模型的洞见是把两者表述为同一件事——在带有事件时间与水位线的无界数据上做窗口聚合,批处理只是窗口覆盖全部历史的情形

关键概念是事件时间与处理时间的分离,以及水位线机制对「迟到数据」的处理。这使得结果的正确性可以被明确定义:给定水位线策略,输出是确定且可解释的,而不是「取决于数据什么时候到」

另一条路径是增量视图维护:把查询编译成一个增量算子网络,输入变化时只计算增量。近年的进展使得复杂查询(含连接与递归)的增量维护有了严格的代价保证,从而流式数据库可以支持接近完整的查询语言。

剩余的困难在状态管理与一致性:长期运行的流作业积累巨大状态,其快照、扩缩容与版本升级是主要运维负担。「流作业的运维成本高于其开发成本」仍是普遍现实

从这条线可以提炼一条通则:当两套系统在做同一件事的两个特例时,统一的收益主要不是性能而是一致性——省下的是「两份结果为何不同」的排查时间,而这类时间在多数团队中被严重低估。

位置D|它把“批处理是流处理的特例,两者不该有两套代码”当成单独够用的那一样 单因批处理是流处理的特例,两者不该有两套代码 预设〔10 更多数据必然减少偏倚〕默认“同一份业务逻辑常常需要写两遍:一遍批处理跑历史数据,一遍流处理跑实时数据”在比较前已经稳定 量纲流批统一在同一基准与版本下保持方向的实例/全部复现实例 失效若把“「流作业的运维成本高于其开发成本」仍是普遍现实”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝流批统一自己留下的反证入口是第四段所承认的“「流作业的运维成本高于其开发成本」仍是普遍现实” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“「流作业的运维成本高于其开发成本」仍是普遍现实”被排除的对象 异名本条的“批处理是流处理的特例”在邻域称作“规模偏倚”;另见第 033 号第一幕甲条《宏基因组:不可培养的多数第一次进入分母》 

九、向量化与编译执行Vectorized and Compiled Query Execution

提出两条路线在 2010 年代竞争,2020 年代形成共识并进入嵌入式分析引擎。关键查询执行的瓶颈是解释开销与缓存行为,而不是算法。

传统的火山模型逐行调用算子,函数调用与分支预测失败的开销远超实际计算。两条改进路线出现:向量化——每次处理一批数据,摊薄解释开销并利用单指令多数据;编译——把查询编译成机器码,消除解释层。两者各有优势,长期竞争。

这十年的结论是两者可以结合,且向量化在工程上更易实现与调试,因而被更广泛采用。一个标志性的后果是嵌入式分析引擎的兴起:单机、无服务器、可嵌入进程的列式引擎,其性能足以处理此前需要集群的分析任务。

这带来了规模判断的修正:随着单机内存与核数增长,相当大比例的所谓「大数据」分析任务在单台机器上更快也更便宜。多项公开分析指出典型企业的查询数据量远小于其集群配置所暗示的规模。

由此产生的实际影响是架构简化:能在单机完成的分析不再引入分布式框架,从而省掉了协调、容错与运维的全部复杂度。这是这十年少见的「减法式」进步

它对「大数据」这个概念是一次实质性的祛魅:集群规模常常反映的是采购惯性与组织习惯,而非数据规模。在做架构选型时先测一遍单机能否胜任,是这十年被反复验证的省钱建议。

位置D|它把“查询执行的瓶颈是解释开销与缓存行为,而不是算法”当成单独够用的那一样 单因查询执行的瓶颈是解释开销与缓存行为,而不是算法 预设〔06 聚合次序不影响结论〕默认“传统的火山模型逐行调用算子,函数调用与分支预测失败的开销远超实际计算”在比较前已经稳定 量纲向量化与编译执行在同一基准与版本下保持方向的实例/全部复现实例 失效若把“由此产生的实际影响是架构简化”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝向量化与编译执行自己留下的反证入口是第四段所承认的“由此产生的实际影响是架构简化:能在单机完成的分析不再引入分布式框架” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“由此产生的实际影响是架构简化”被排除的对象 异名本条的“查询执行的瓶颈是解释开销与缓存行为”在邻域称作“非交换性”;另见第 035 号第一幕乙条《合成基因电路:用造出来的回路检验机制》 

十、查询优化的持久难题Query Optimization: The Persistent Problem

提出基数估计误差的系统性评测在 2015 年前后给出,此后学习型优化器兴起并被审视。关键优化器的成败取决于基数估计,而基数估计四十年没有被解决。

优化器选择执行计划依赖于对中间结果规模的估计,而系统性评测显示主流优化器的基数估计在多表连接上常常偏离数个数量级,且误差随连接数指数增长。计划选择错误造成的性能差距可达数量级,远大于任何执行层优化的收益。

根本困难在于属性之间的相关性:独立性假设在真实数据上普遍不成立,而联合分布的存储代价过高。这十年的尝试包括采样、草图、以及用机器学习拟合基数——学习方法在训练分布内表现优异,在分布外与更新后退化,且难以给出误差保证

另一条路线是承认估计不可靠,改为自适应执行:先执行一部分、观测实际基数、再调整剩余计划。这在流水线较长的分析查询上被证明有效,代价是执行引擎的复杂度。

这条线是本面板中最能说明「工程与理论错位」的一条:学界持续产出更精确的估计方法,而工业界的实际收益更多来自自适应与鲁棒的计划选择——即不追求最优计划,而追求避免灾难性计划。

更深的含义是关于优化目标的:与其追求最优计划,不如保证不出现灾难性计划。这一「稳健优于最优」的取向,与算法面板的稳健机制设计、气候面板的稳健决策属于同一族思路。

位置E|它把“优化器的成败取决于基数估计,而基数估计四十年没有被解决”当成单独够用的那一样 单因优化器的成败取决于基数估计 预设〔10 更多数据必然减少偏倚〕默认“优化器选择执行计划依赖于对中间结果规模的估计”在比较前已经稳定 量纲查询优化的持久难题在同一基准与版本下保持方向的实例/全部复现实例 失效若把“这条线是本面板中最能说明「工程与理论错位」的一条”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝查询优化的持久难题自己留下的反证入口是第四段所承认的“这条线是本面板中最能说明「工程与理论错位」的一条:学界持续产出更精确的估计方法” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“这条线是本面板中最能说明「工程与理论错位」的一条”被排除的对象 异名本条的“优化器的成败取决于基数估计”在邻域称作“规模偏倚”;另见第 033 号第一幕甲条《宏基因组:不可培养的多数第一次进入分母》 

十一、多模与图查询语言Multi-Model and Graph Query Languages

提出2010 年代多模数据库兴起,图查询语言在 2024 年前后完成国际标准化。关键结构化、半结构化与图数据在同一系统内共存,且图查询第一次有了标准。

数据的形态多样化之后,出现了两种回应:为每种形态建专用系统,或让一个系统支持多种模型。这十年的实践显示后者在多数场景下更经济,因为跨系统的数据同步成本极高。主流关系数据库因而相继内建了半结构化文档类型与路径查询能力。

图查询的标准化是一个迟到的里程碑:此前每个图数据库有自己的语言,迁移成本极高。新标准把属性图的模式匹配与路径表达纳入统一语法,并同时定义了在关系数据库中执行图查询的扩展。标准化的价值不在于技术创新,而在于消除锁定

技术上的核心问题是递归与路径的复杂度:任意长度路径的匹配可能产生指数级结果,因而语言必须限制表达力或提供剪枝语义。标准的大部分篇幅用于精确定义这些限制

尚存的分歧是执行效率:专用图引擎在深度遍历上仍显著快于关系引擎的模拟,而关系引擎在混合查询(图+聚合+过滤)上更强。「一个系统还是多个系统」在图这一形态上仍未收敛

标准化还有一个少被提及的作用:它使教学与人才培养有了共同基础。没有标准语言的技术领域,其从业者的技能无法在雇主之间迁移,这会同时抑制该技术的采纳与从业者的议价能力。

位置S|它把“结构化、半结构化与图数据在同一系统内共存,且图查询第一次有了标准”当成单独够用的那一样 单因结构化、半结构化与图数据在同一系统内共存 预设〔15 同名即同物〕默认“数据的形态多样化之后,出现了两种回应:为每种形态建专用系统”在比较前已经稳定 量纲多模与图查询语言在同一基准与版本下保持方向的实例/全部复现实例 失效当“「一个系统还是多个系统」在图这一形态上仍未收敛”时,多模与图查询语言停止外推 自曝多模与图查询语言自己留下的反证入口是第四段所承认的“「一个系统还是多个系统」在图这一形态上仍未收敛” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“「一个系统还是多个系统」在图这一形态上仍未收敛”被排除的对象 异名本条的“结构化、半结构化与图数据在同一系统内”在邻域称作“本体对齐”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 

十二、数据系统中的隐私Privacy Inside the Data System

提出2010 年代后期把差分隐私、加密计算与访问控制内建进查询层。关键隐私从外围的合规流程,变成查询引擎的一等功能。

合规要求长期由外部流程处理——脱敏、审批、隔离环境。这十年的转变是把隐私机制内建:查询引擎在返回结果前加入满足差分隐私的噪声、按行按列强制执行访问策略、记录不可篡改的访问日志。这使隐私保证从组织承诺变成系统性质。

技术上的难点是组合与预算:多次查询会累积隐私损失,因而引擎必须为每个用户维护隐私预算并在耗尽时拒绝服务。这与传统数据库「查询总是可以再跑一次」的假设直接冲突,是工程上最不适应的一点。

另一条线是加密与可信执行:在加密数据上直接查询、或在硬件飞地内处理明文。前者性能代价大且泄漏访问模式,后者依赖硬件厂商的信任且屡有侧信道被攻破。两条路线都可用,但都不能被当作无条件的保证

跨机构分析的需求推动了安全多方与联邦查询:数据不出域,只交换计算结果。其实用瓶颈通常不是密码学而是数据对齐与语义一致——两家机构的「客户」定义不同,比任何加密开销都更致命。

把它与差分隐私那条线放在一起看,可以得到一个清晰的分工:密码学解决「谁能看见」,差分隐私解决「看见之后能推出什么」。两者不可互相替代,而多数合规讨论只覆盖了前者。

位置S|它把“隐私从外围的合规流程,变成查询引擎的一等功能”当成单独够用的那一样 单因隐私从外围的合规流程,变成查询引擎的一等功能 预设〔30 未计价者不影响结算〕默认“合规要求长期由外部流程处理——脱敏、审批、隔离环境”在比较前已经稳定 量纲数据系统中的隐私在同一基准与版本下保持方向的实例/全部复现实例 失效若把“其实用瓶颈通常不是密码学而是数据对齐与语义一致—”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝数据系统中的隐私自己留下的反证入口是第四段所承认的“其实用瓶颈通常不是密码学而是数据对齐与语义一致——两家机构的「客户」定义不同” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“其实用瓶颈通常不是密码学而是数据对齐与语义一致—”被排除的对象 异名本条的“变成查询引擎的一等功能”在邻域称作“影子成本”;另见第 126 号第一幕乙条《镜像疗法:运动可以先由视觉替身启动》 

十三、数据版本、血缘与治理Versioning, Lineage and Governance

提出2010 年代后期随合规与机器学习可复现需求而成为一等问题。关键知道「这个数字是怎么算出来的」与算出这个数字同样重要。

当决策与模型训练都依赖数据管道,两个问题变得紧迫:数据是哪个版本、经过了哪些变换。表格式的时间旅行能力提供了版本,而血缘追踪把列级的来源与变换记录下来,使得任何一个下游数字都可以回溯到上游字段与代码提交

驱动力主要来自外部:审计要求可解释的数据来源、机器学习要求训练数据可复现、事故排查要求快速定位受影响的下游。治理能力因此从「成本中心」变成事故响应能力的一部分

技术上的难点是覆盖:血缘只有在所有变换都通过受管的引擎执行时才完整,而现实中总有脚本与外部工具绕过。不完整的血缘可能比没有血缘更危险,因为它给出虚假的信心

组织上的难点是元数据的维护激励:录入者与受益者不是同一批人。已被验证有效的做法是自动抽取优于人工录入,以及把治理信息嵌入日常工作流而非另建目录系统。

从事故响应角度看,血缘的价值在平时几乎不可见,只在出事那一天兑现。这类「保险型」能力在预算竞争中天然吃亏,与土木的维护、渔业的监测面临完全相同的处境。

位置D|它把“知道「这个数字是怎么算出来的」与算出这个数字同样重要”当成单独够用的那一样 单因知道「这个数字是怎么算出来的」 预设〔28 记录存在即可核对〕默认“当决策与模型训练都依赖数据管道”在比较前已经稳定 量纲数据版本、血缘与治理在同一基准与版本下保持方向的实例/全部复现实例 失效当“已被验证有效的做法是自动抽取优于人工录入”不成立时,数据版本、血缘与治理停止外推 自曝数据版本、血缘与治理自己留下的反证入口是第四段所承认的“已被验证有效的做法是自动抽取优于人工录入,以及把治理信息嵌入日常工作流而非另建目录系统” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“已被验证有效的做法是自动抽取优于人工录入”被排除的对象 异名本条的“知道「这个数字是怎么算出来的」”在邻域称作“可审计性”;另见第 097 号第一幕乙条《贝叶斯年代模型:测年从单点变成事件序列》 

十四、数据质量与以数据为中心Data-Centric Practice

提出2021 年前后提出「以数据为中心」的主张,此后与数据验证工具结合。关键模型效果的边际收益,多数来自改数据而非改模型。

机器学习实践长期把模型作为改进对象,数据当作给定。这一主张反过来:固定模型,系统性地改进数据——修正标注错误、平衡分布、清理泄漏、增补长尾。多项对照实验显示这一路径的收益常高于换模型。

对数据系统的要求由此产生:需要数据的单元测试(模式约束、取值范围、分布漂移检测)、需要样本级的可追溯、需要能在数据版本之间做差分。这些能力在传统数据仓库中并不存在。

第二类需求是训练与服务的一致性:特征在离线训练与在线推理时的计算必须一致,否则模型效果会无声下降。特征存储由此成为一类新的系统组件,其核心价值是保证同一份特征定义在两条路径上产生相同的值

尚未标准化的是数据质量的度量:不同团队用不同的指标,缺乏可比性。与软件测试覆盖率类似,任何单一指标都可被针对性优化而失去意义——这是这条线目前最主要的方法学风险。

还有一条与评价体系相关的观察:模型排行榜奖励换模型,而实际收益来自改数据,因而学术激励与工程收益在此处方向相反。这解释了为什么数据工作长期缺乏论文产出却在工业中占据主要工时。

位置E|它把“模型效果的边际收益,多数来自改数据而非改模型”当成单独够用的那一样 单因模型效果的边际收益,多数来自改数据而非改模型 预设〔10 更多数据必然减少偏倚〕默认“机器学习实践长期把模型作为改进对象,数据当作给定”在比较前已经稳定 量纲数据质量与以数据为中心在同一基准与版本下保持方向的实例/全部复现实例 失效当“尚未标准化的是数据质量的度量:不同团队用不同的指标,缺乏可比性”时,数据质量与以数据为中心停止外推 自曝数据质量与以数据为中心自己留下的反证入口是第四段所承认的“尚未标准化的是数据质量的度量:不同团队用不同的指标,缺乏可比性” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“尚未标准化的是数据质量的度量:不同团队用不同的指标,缺乏可比性”被排除的对象 异名本条的“多数来自改数据而非改模型”在邻域称作“规模偏倚”;另见第 033 号第一幕甲条《宏基因组:不可培养的多数第一次进入分母》 

十五、基准测试的可信度The Credibility of Benchmarks

提出2010 年代多次基准争议后,可复现性要求进入主要会议。关键厂商基准与学术基准都面临同一个问题:被优化的对象不再是性能。

数据库领域有悠久的基准传统,也有悠久的基准争议:厂商针对基准做专项优化、选择性报告配置、以及禁止第三方发布对比结果的许可条款。学术侧的问题不同但同源——与未调优的基线比较,会系统性高估新方法的收益

这十年的纠正措施是制度性的:主要会议引入可复现性评审与产物徽章,要求提交代码与配置;社区推动更贴近真实负载的基准;以及要求报告调优过程与硬件成本。「与调优后的基线比较」成为审稿的明确要求

剩余的困难是负载的代表性:公开的真实负载数据稀缺,因为它们属于商业敏感信息。少数被公开的生产负载轨迹因而具有不成比例的影响力,整个领域的优化方向部分由这几份数据决定

更一般的教训与本栏其他面板一致:当一个指标同时是评价标准与竞争手段时,它会被优化到失去信息量。数据库基准是这一规律最古老也最完整的案例之一。

值得记的是许可条款这一非技术因素:某些商业数据库长期禁止未经许可发布性能对比,这使得独立评测在法律上受限。技术领域的透明度不只取决于技术文化,也取决于合同条款。

位置D|它把“厂商基准与学术基准都面临同一个问题:被优化的对象不再是性能”当成单独够用的那一样 单因厂商基准与学术基准都面临同一个问题 预设〔01 谁进入分母〕默认“数据库领域有悠久的基准传统”在比较前已经稳定 量纲基准测试的可信度在同一基准与版本下保持方向的实例/全部复现实例 失效当“数据库基准是这一规律最古老也最完整的案例之一”不成立时,基准测试的可信度停止外推 自曝基准测试的可信度自己留下的反证入口是第四段所承认的“数据库基准是这一规律最古老也最完整的案例之一” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“数据库基准是这一规律最古老也最完整的案例之一”被排除的对象 异名本条的“厂商基准与学术基准都面临同一个问题”在邻域称作“样本可见性”;另见第 033 号第一幕甲条《宏基因组:不可培养的多数第一次进入分母》 

十六、云原生的成本模型The Economics of Cloud-Native Data Systems

提出2020 年代把成本作为系统设计的一等指标。关键设计目标从「最快」变成「给定预算下最快」或「给定性能下最便宜」。

在自建机房时代,硬件是沉没成本,优化目标是吞吐与延迟。在云上,每一次查询都有可归属的成本,因而「性价比」成为可测量的一等指标。系统设计随之改变:冷数据下沉到更便宜的存储层、空闲时缩容到零、用竞价实例执行可重试的任务。

这带来了新的研究问题:如何在异构价格的资源之间调度、如何在成本与延迟之间给用户可选的取舍点、如何预测查询成本以便定价。「查询优化器最小化的应当是钱而不是时间」这一提法在这十年被正式提出

第二个后果是数据传输费用成为架构约束:跨区域与跨云的出口费用往往高于计算本身,因而数据的位置决定了架构的形状。这也是开放表格式受欢迎的经济原因——避免被迫复制数据。

尚未解决的是成本的可预测性:无服务器与按量计费使账单随负载波动,而波动本身对预算管理是负担。用户常常宁愿接受更贵但可预测的方案,这一偏好在定价设计中长期被低估。

它还引出一个新的公平问题:按量计费使得「写出低效查询」的成本直接落在使用者身上,而写查询的往往是最缺乏优化能力的业务人员。成本的可见性提高了,而控制成本的能力并没有同步下放

位置E|它把“设计目标从「最快」变成「给定预算下最快」或「给定性能下最便宜」”当成单独够用的那一样 单因设计目标从「最快」变成「给定预算下最快」 预设〔30 未计价者不影响结算〕默认“在自建机房时代,硬件是沉没成本,优化目标是吞吐与延迟”在比较前已经稳定 量纲云原生的成本模型在同一基准与版本下保持方向的实例/全部复现实例 失效若把“尚未解决的是成本的可预测性”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝云原生的成本模型自己留下的反证入口是第四段所承认的“尚未解决的是成本的可预测性:无服务器与按量计费使账单随负载波动,而波动本身对预算管理是负担” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“尚未解决的是成本的可预测性:无服务器与按量计费使账单随负载波动”被排除的对象 异名本条的“设计目标从「最快」”在邻域称作“影子成本”;另见第 126 号第一幕乙条《镜像疗法:运动可以先由视觉替身启动》 

十七、数据网格与组织架构Data Mesh and Organizational Structure

提出2019 年前后提出,2020 年代经历采纳与回调。关键数据平台的瓶颈常常是组织结构而非技术。

集中式数据团队成为瓶颈:所有业务的数据需求排队等待一个团队处理。数据网格主张把数据的所有权下放到产生数据的业务域,各域以「数据产品」的形式对外提供,平台团队只提供自助的基础设施与统一治理。

这一主张的核心洞见是组织性的:数据质量问题的根源在于生产者不承担消费者的成本,而把所有权与责任放在一起可以纠正这一激励。它与微服务对单体应用的批评在结构上完全一致。

实践中的回调同样明显:去中心化带来重复建设、口径分歧与更高的总成本,且多数组织缺乏足够的数据工程人才把能力分散到各域。成功案例的共同点是「联邦治理」——中心定标准与提供平台,各域负责内容

更一般的判断与微服务的经验相同:组织边界与系统边界应当对齐,而这一对齐没有普遍最优解,取决于组织规模、人才密度与业务耦合程度。把它当作普适方案推行,是失败案例的共同起点。

这一条与软件工程面板的微服务回调完全同构,值得并读:两次都是把技术架构的主张用于解决组织问题,而后发现组织问题需要组织手段。技术架构可以支持某种组织形态,却无法凭空创造它所需的人才密度。

位置S|它把“数据平台的瓶颈常常是组织结构而非技术”当成单独够用的那一样 单因数据平台的瓶颈常常是组织结构而非技术 预设〔28 记录存在即可核对〕默认“集中式数据团队成为瓶颈:所有业务的数据需求排队等待一个团队处理”在比较前已经稳定 量纲数据网格与组织架构在同一基准与版本下保持方向的实例/全部复现实例 失效当“更一般的判断与微服务的经验相同:组织边界与系统边界应当对齐”时,数据网格与组织架构停止外推 自曝数据网格与组织架构自己留下的反证入口是第四段所承认的“更一般的判断与微服务的经验相同:组织边界与系统边界应当对齐,而这一对齐没有普遍最优解” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“更一般的判断与微服务的经验相同:组织边界与系统边界应当对齐”被排除的对象 异名本条的“数据平台的瓶颈常常是组织结构而非技术”在邻域称作“可审计性”;另见第 097 号第一幕乙条《贝叶斯年代模型:测年从单点变成事件序列》 

十八、自治与自适应系统Self-Driving and Self-Adaptive Systems

提出2017 年前后提出自治数据库愿景,2020 年代在局部功能上落地。关键整体自治未实现,而单点自动化(索引推荐、参数调优、弹性伸缩)已成常规。

自治数据库的设想是让系统自己选择索引、分区、参数与物理设计,从而消除数据库管理员的调优工作。十年之后的实际情况是分层的:参数调优、索引推荐与资源伸缩已经产品化且效果可测;而端到端的自主物理设计仍不可靠

原因在于反馈周期与风险:调整索引会影响所有查询,错误决策的代价高且回滚慢,而系统难以在不损害生产负载的前提下做探索。这是典型的在线学习难题——探索有代价而利用需要知识

实际有效的折中是「建议+人确认」:系统给出候选与预期收益,由人批准执行。这一模式在多个领域重复出现(医学影像、代码建议、运维自动化),其共同前提是判断的责任无法转移

更实质的进展在弹性:负载波动时自动增减计算资源,因为这一操作可逆且影响可控。自动化最先落地的总是那些错了可以立刻改回来的决策——这条判断可以用来预测其他自治功能的落地次序。

由此还可推出一条运维自动化的通用排序原则:先自动化可逆且影响局部的操作,最后自动化不可逆且影响全局的操作。按这一原则看,索引与物理设计的自治将是最后落地的一批功能,而非最早。

位置D|它把“而单点自动化(索引推荐、参数调优、弹性伸缩)已成常规”当成单独够用的那一样 单因而单点自动化(索引推荐、参数调优) 预设〔17 局部最优可加总为整体最优〕默认“自治数据库的设想是让系统自己选择索引、分区、参数与物理设计”在比较前已经稳定 量纲自治与自适应系统在同一基准与版本下保持方向的实例/全部复现实例 失效当“自动化最先落地的总是那些错了可以立刻改回来的决策—”不成立时,自治与自适应系统停止外推 自曝自治与自适应系统自己留下的反证入口是第四段所承认的“自动化最先落地的总是那些错了可以立刻改回来的决策——这条判断可以用来预测其他自治功能的落地次序” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“自动化最先落地的总是那些错了可以立刻改回来的决策—”被排除的对象 异名本条的“而单点自动化(索引推荐、参数调优)”在邻域称作“局部—整体错位”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 

十九、为大模型服务的数据系统Data Systems for Language Models

提出2023 年后成为独立方向,涉及检索、上下文供给与缓存。关键一种新的读负载:高并发、低延迟、语义匹配、且结果只需近似正确。

检索增强生成把数据库放进了模型的推理路径:每次生成都可能触发若干次检索,其延迟直接计入用户等待时间。这一负载的特征与传统在线事务处理不同——读多写少、查询是语义相似而非精确匹配、结果的正确性是概率的、且上下文长度受限使得「返回什么」比「返回多少」更重要

由此产生的系统问题包括:混合检索(关键词与向量结合)的排序与融合、分块策略对召回的影响、元数据过滤与向量检索的联合执行、以及针对重复上下文的缓存复用。其中缓存的价值最大——相同前缀的上下文可以复用计算,这已成为推理系统与数据系统的交界地带。

第二类需求是把结构化数据接入模型:自然语言到查询的转换在简单模式上可用,在真实的复杂模式上准确率显著下降,且错误难以被用户察觉。因而实践中的做法是限制模式范围、提供语义层、并强制展示生成的查询供人核对

长期的问题是治理:模型可以绕过既有的权限与审计边界,把不该聚合的数据聚合起来。「权限模型如何跟随数据进入模型上下文」目前没有成熟方案,是这条线最紧迫的空白。

从系统边界看,这条线正在把数据库与推理服务推到一起:缓存、批处理与调度的最优决策需要同时了解查询与模型的状态。「谁来管上下文」很可能成为下一个系统层的归属之争

位置S|它把“一种新的读负载:高并发、低延迟、语义匹配、且结果只需近似正确”当成单独够用的那一样 单因一种新的读负载:高并发、低延迟、语义匹配 预设〔10 更多数据必然减少偏倚〕默认“检索增强生成把数据库放进了模型的推理路径:每次生成都可能触发若干次检索”在比较前已经稳定 量纲为大模型服务的数据系统在同一基准与版本下保持方向的实例/全部复现实例 失效若把“长期的问题是治理:模型可以绕过既有的权限与审计边界”排除在分母外,表面支持越强,完整分母上的可迁移性反而越低 自曝为大模型服务的数据系统自己留下的反证入口是第四段所承认的“长期的问题是治理:模型可以绕过既有的权限与审计边界,把不该聚合的数据聚合起来” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“长期的问题是治理:模型可以绕过既有的权限与审计边界”被排除的对象 异名本条的“一种新的读负载:高并发、低延迟”在邻域称作“规模偏倚”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 

二十、数据系统的碎片化与再收敛Fragmentation and Reconvergence

提出2010 年代专用系统激增,2020 年代出现整合趋势。关键为每种负载建一个系统的成本,最终由数据同步与运维承担。

过去二十年出现了大量专用系统:键值、文档、图、时序、搜索、流、向量、分析。每一个在其负载上都优于通用系统,而组织付出的代价是数据在系统间复制、口径不一致、以及运维复杂度随系统数量超线性增长

这十年出现了反向趋势:主流关系引擎相继吸收专用能力(半结构化、时序、全文、向量),而分析引擎吸收事务能力。「够好且省一次同步」常常胜过「最优但需同步」——这与专用与通用之争的一般规律一致。

推动整合的另一股力量是开放表格式:当存储层统一,多个引擎可以各司其职地读同一份数据,从而在不复制的前提下保留专用引擎的性能优势。这可能是比「一个引擎通吃」更现实的收敛形态

尚未解决的是语义层:即便存储统一,不同引擎对类型、空值与时间的处理仍有细微差异,导致同一查询在不同引擎上结果不同。标准化的下一步是语义而非格式,而这比格式标准化困难得多。

最后一点值得强调:语义差异比格式差异更隐蔽也更危险。格式不兼容会立刻报错,语义不一致会安静地给出不同的数字——而后者正是跨引擎共享同一份数据后最可能出现的问题。

位置S|它把“为每种负载建一个系统的成本,最终由数据同步与运维承担”当成单独够用的那一样 单因为每种负载建一个系统的成本 预设〔17 局部最优可加总为整体最优〕默认“过去二十年出现了大量专用系统:键值、文档、图、时序、搜索、流、向量、分析”在比较前已经稳定 量纲数据系统的碎片化与再收敛在同一基准与版本下保持方向的实例/全部复现实例 失效当“尚未解决的是语义层:即便存储统一”时,数据系统的碎片化与再收敛停止外推 自曝数据系统的碎片化与再收敛自己留下的反证入口是第四段所承认的“尚未解决的是语义层:即便存储统一,不同引擎对类型、空值与时间的处理仍有细微差异” 空栏一致性、延迟、吞吐与恢复代价账本没有单列因“尚未解决的是语义层:即便存储统一”被排除的对象 异名本条的“为每种负载建一个系统的成本”在邻域称作“局部—整体错位”;另见第 099 号第一幕乙条《远读:文学史从少数经典移向大规模分布》 
◎ 二十年连起来看

二十条排在一起,这门学科二十年的主线是拆解与重新聚合。计算与存储拆开、内存从服务器拆下、事务与分析拆成两路、表格式从引擎里拆出、数据所有权从中心团队拆到业务域。每一次拆分都换来弹性与成本上的实际收益,也都在别处长出一个新的中心——元数据服务、缓存层、语义层、治理平台。拆分从不消除复杂度,只改变它的位置,而判断一次拆分是否值得,取决于新位置的复杂度是否更容易被管理。

第二条主线是这门学科反复上演的同一个循环:提出、过度承诺、独立复现、缩水、以组件形式沉淀。学习型索引走完了完整的一圈,自治数据库走了大半圈,数据网格正在回调,而向量检索与学习型优化器刚刚进入第二阶段。这个循环之所以稳定,是因为数据库领域有一个别处少见的纠错机制——可复现性评审与「必须与调优后的基线比较」的行规。这一机制在这十年被制度化,是本领域最值得输出的经验。

第三条主线正在展开:一种新的读负载正在重塑系统边界。语义检索的正确性是概率的、上下文供给的瓶颈是缓存而非吞吐、而自然语言查询把权限与审计的边界搅乱。数据库过去六十年的全部保证——精确、可串行化、可审计、权限明确——在这条路径上都被削弱了一层。这门学科接下来要回答的问题因此不是如何更快地找到相似向量,而是当查询的发起者是一个不可靠的中介时,那些保证该如何重新定义

新思想前沿 是一个持续撰写的专栏:近二十年,各主要领域最要紧的思想转向。计算机科学主干这一组采用加密体例——每块列二十个近二十年真正立住的新理论,每个理论讲清它推翻了什么、靠什么证据立住、以及它自己的边界。 · ← 回到学科面板