作为钉钉业务的坚实基石,阿里云瑶池旗下的云原生数据库PolarDB PostgreSQL版(以下简称PolarDB-PG)与钉钉持续书写合作新篇章。
继成功支持钉钉宜搭和AI表格等核心应用后,PolarDB-PG近日新增支撑了钉钉全新业务——钉钉ONE。面对钉钉ONE对高并发、百亿级数据存储以及大规模向量召回的严苛需求,PolarDB-PG正凭借其独特的分布式架构优势和强大的向量检索能力,为这一创新业务提供稳定可靠且高效的底层数据支撑。
1、钉钉发布全新的钉钉 ONE 功能
钉钉(DingTalk)是阿里巴巴集团打造的企业级智能移动办公平台,是数字经济时代的企业组织协同办公和应用开发平台。
2025 年 8 月 25 日,“蕨”——钉钉十周年暨 AI 钉钉 1.0 新品发布会在浙江杭州举办,会上钉钉发布 8.0 版本,正式走向 AI 原生。全新的 AI 钉钉 1.0 带来了一系列的新功能,其中第一个推出的是就是钉钉 ONE 功能。
钉钉 ONE 被设计为人与AI通过自然语言对话的统一入口,致力于打造全球首个以 Agent 驱动的工作信息流,让工作处理就像刷短视频一样丝滑,这是钉钉对于AI时代办公应用形态的全新定义。它可以将所有与工作相关的信息与任务,由AI按优先级整理后,以信息流卡片的形式清晰呈现给用户,由“人找事”变成“事找人”。
同时,钉钉 ONE 也是一个企业内部的学习空间。它将取代过去主要在群聊中分享的企业信息流转方式,企业可以利用 AI 将行业相关的新产品、新技术、新趋势、新观点做收集、翻译,像企业内部视频号或抖音一样推送给员工。
2、钉钉 ONE 的架构
这是钉钉 ONE 召回系统的架构,可以大致分为三层:
1. 数据存储层
- PolarDB-PG:处理复杂的用户可见性控制、多个索引、跨表关联查询的场景,作为基础 Item 数据底表存储。
- 表格存储:适用于高吞吐写入的流水型数据、按用户分区的简单读写场景。
- 图数据库:用于存储用户关系网络、行为图谱及反向边索引。
2. 流批计算层
- 流批计算引擎:实时数据管道,处理可见性扩散、埋点数据清洗等流式计算任务。
3. 召回链路
- 多路召回策略:包含高优内容召回、长短周期兴趣捕捉、协同过滤召回以及其他召回方式,在不同内容和业务场景下使用不同组合的召回方式。
在这里,PolarDB-PG 承担了数据存储和向量召回的请求。用户的数据通过流批数据层,会进行数据处理和可见性扩散处理,形成上百亿行数据条目,写入到 PolarDB-PG 中,再进行各类召回请求,对写入的时效、召回的吞吐、横向的可扩展性,都有很高的要求。
3、PolarDB-PG 分布式向量检索
PolarDB-PG 提供了分布式向量检索的能力,可以做到海量存储、横向扩展。
PolarDB-PG 的分布式向量检索主要通过在多个计算节点上分布数据和执行并行查询来处理超大规模向量数据集。其核心优势在于:
- 海量存储与横向扩展:能够将向量数据分布到多个节点上,轻松扩展至PB级海量存储,突破了单机存储的限制。
- 高性能并行处理:通过跨节点并行能力,多个节点可以同时执行向量相似度计算,显著提高检索速度,尤其适合处理亿级甚至十亿级的高维向量数据。
分布式架构
PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在计算存储分离架构下,利用了软硬件结合的优势,为您提供具备秒级弹性、高性能、高可用、海量存储、安全可靠的数据库服务。
PolarDB-PG分布式版基于PolarDB-PG内核研发,100%兼容开源社区PostgreSQL特性,并引入了分布表、复制表等概念,让用户可以将业务表横向扩展到多个节点上,打破集中式单实例架构下可能存在的数据和性能瓶颈。
▶︎ 技术架构
PolarDB-PG 分布式版集群由计算节点和存储节点两层构成:
- 计算节点(Compute Nodes,简称 CN):负责集群分布式查询计划制定、元数据管理等。
- 数据节点(Data Nodes,简称 DN):负责实际数据分片的存储。
每个计算或数据节点均为一个 PolarDB-PG 集中式实例,内部包含 RW、RO 节点以及 PolarStore 共享存储,保证组件本身的高可用。
▶︎ 架构优势
1. 水平扩展,突破单机瓶颈上限,承载海量 PB 级数据,支撑超高业务并发;支持在线扩容,业务无需停顿即可扩展计算能力。
2. 每个节点为 share-storage 架构,一写多读,天然支持分片计算高可用,既可以通过增加节点 scale out,也可以通过升级 DN 节点规格 scale up。
3. 支持软硬协同的高性能分布式共享存储 PolarFS,使用 ParallelRaft 复制协议,三副本保证存储高可用,但用户侧只计一份费用,且只按实际存储数据计费,成本相较于传统架构主备大幅度降低。
4. PolarFS 支持超高 IOPS,PolarDB-PG 基于 PolarFS 开展了一系列的 IO 优化。
5. 节点秒级备份,支持备份集、PITR(基于时间点的恢复)多种恢复方式。
向量检索能力
PolarDB-PG 的分布式向量检索除了在横向扩展和并行计算的优势外,还支持了丰富的向量自研特性,例如内核自研索引构建加速和向量计算指令集加速特性,在海量向量数据的索引构建和查询方面也有了质的提升。
以L2距离加速特性为例,通过SIMD指令集加速能力,实现较社区计算能力 50% 以上加速特性。
4、PolarDB-PG 的解决方案
PolarDB-PG 提供的不仅仅是一款产品,一个形态,更是一套完整的解决方案。面对钉钉 ONE 功能的挑战,我们进行了密切的协同调优,保障了业务的顺利上线。
挑战:表结构设计
分布式不是简单的某种数据库,更是一种架构层面上的改进,需要结合业务、结合数据库做深度的优化,这样才能达到线性扩展的目的。
业务中消耗最高的 SQL 是向量查询,需要将两张表进行 join,并召回其中和目标向量距离最近的数条数据返回给用户。在 join 的 SQL 中,只有一张表有明确的 WHERE 的条件,可以带来不错的过滤效果,另一张表没有明确的过滤条件,但是数据量相对较小,且写入较小。
经过和客户的讨论,决定将其中的一张固定表做成复制表,另一张表使用上述过滤效果较好的条件作为分区键,将表改造为分布式表,这样这类 SQL 就能够单点路由到指定的分片上,这样每个节点能均匀的分摊计算压力。
挑战:数据库扩容
业务在测试过程和上线过程中,需要对数据库进行持续的扩容,扩容分为两个方面,一个是存储的扩容,一个是计算的扩容。
对于存储的扩容,得益于每个节点本身就是云原生共享存储架构的 PolarDB-PG 节点,下面的存储可以做到自动、无感地扩容,无须进行复杂的传统运维。
对于计算的扩容,分为 CN 和 DN 两类节点扩容:
- CN (计算节点)可以做到完全无感扩容,可以通过自定义地址自动进行负载均衡,可以支持海量的连接进行高并发处理。
- DN(数据节点)大部分时间可以不阻塞读写地进行数据重分布,仅在最后阶段会有数秒的锁表时间。
挑战:高性能数据库
PolarDB-PG 分布式架构是基于 PolarDB-PG 存算分离一写多读架构演进而来,对于单个节点的性能,PolarDB-PG 已经打磨优化多年,内部、底层的每个组件,构筑起了高性能的基础,从而组合成高性能的 PolarDB-PG 分布式数据库。
▶︎ 软硬协同设计的高性能分布式存储PolarStore
PolarStore是高度软硬协同设计的全用户态分布式存储,结合业务负载特点,充分发挥出RDMA、NVMe、Optane、大内存、多核等硬件的性能,进行了IO全链路用户态和ZeroCopy、IO全链路并行执行、全栈组件异步化编程等优化。
▶︎ 持续优化的计算引擎
PolarDB-PG 的计算引擎也持续进行了多年的优化,累积了很多的性能优化功能:
1. IO 的优化:并行的刷脏,批量读/写/扩展,表大小缓存,大表 open/lseek 优化等。
2. 计算的优化:支持 CSN 等功能,更快地处理事务;结合软硬件进行深度优化,使用 PGO、LTO、BOLT 等优化技术,结合 CPU 上的高级指令集功能,优化 on CPU 的计算性能。
3. 调度的优化:在部署上,钉钉推荐功能使用的是企业版的实例。企业版分布式实例的每个节点使用独占的 CPU,不会发生共享争抢,并且会尽可能地部署在同一个 socket 上,减少 CPU 跨 socket 的通信开销;每个 DN 的 RW 会部署在不同的主机上,减少其他全局资源的争抢,并减少爆炸半径。
5、业务展望
作为钉钉One资讯推荐系统的核心数据库,PolarDB-PG展现了卓越的技术实力。它不仅能稳定承载百亿规模的数据,还在向量检索、可见性JOIN等多元混合查询场景中,实现了10w+TPS的顶尖性能,配合其弹性扩展特性,为钉钉One全量功能提供了坚实可靠的支撑。
—— 钉钉相关业务负责人
通过持续的技术协同优化,PolarDB-PG 在压测、灰度阶段展现出卓越性能表现——在实现超高并发量混合负载处理能力的同时,系统资源占用率保持极低水平,这使其能够高效支撑钉钉 ONE 业务场景下的大规模向量召回需求,为智能搜索提供坚实的数据基座。
在未来,钉钉 ONE 会面向大众客户逐步开放,成为办公场景中的得力助手,帮助每个办公者高效地处理工作。作为这些智能交互背后的隐形引擎,PolarDB-PG 凭借其分布式架构优势和深度优化的向量查询处理能力,钉钉 ONE 的每次响应都在毫秒级完成海量数据计算,以稳定可靠的性能表现支撑起钉钉 ONE 的智能交互体验,印证云原生数据库对AI原生应用的强大赋能价值。