近日,知乎最大的风控业务数据库集群,基于阿里云瑶池数据库完成了云原生技术架构的升级。此次升级不仅显著提升了系统的高可用性和性能上限,还大幅降低了底层资源成本。这一里程碑式的进展标志着知乎数据库架构在云原生技术领域迈出了重要一步,同时也为未来业务的持续增长奠定了坚实的技术基础。
作为一款国民级的高质量内容社区应用,知乎为了保障平台的健康平稳运行,需要实时对海量数据进行异常分析和实施风控措施。这些风控数据具有以下几个显著特点,为其存储和传输带来了巨大挑战:
- 数据结构复杂:不同类型的风控数据字段差异较大,通常需要用 JSON 这类灵活的数据格式进行封装存储。同时,还需要支持对 JSON 中的部分字段进行实时查询和动态更新操作。
- 单条数据存储空间大:为了方便后续追溯与分享,风控数据往往包含了完整的上下游链路信息,导致每条记录的内容非常丰富,单条数据大小常常超过 1MB。写
- 入突发峰值高:在热点事件或遭遇黑产流量攻击时,风控数据的写入量会瞬间暴涨数倍甚至更高,对系统的瞬时写入能力提出了极高的要求。
这些特点使得风控数据的处理远比普通业务数据更加复杂。知乎风控业务原有的数据库技术架构基于自建 ETL 链路 + 自建分布式数据库组合,但随着业务规模的持续增长,这套架构逐渐暴露出一些不足和隐患:
- 性能瓶颈:自建的 ETL 链路在处理 JSON 类型数据时逻辑复杂,效率低,尤其在面对突发流量时,经常出现数据同步延迟,影响了整体服务的稳定性。
- 高可用能力不足:当上下游数据源发生故障并进行高可用切换(HA)时,现有架构无法自动完成链路切换与联动恢复,导致系统在异常情况下的容错能力和恢复效率大幅下降,进一步增加了业务中断的可能性。
正如知乎反作弊业务研发负责人蔡熠坤所言:“每次突发业务高峰,现有架构的同步能力都逼近临界点,业务团队不得不通过手动执行脚本来应急处理。如果这种情况持续下去,业务风险将越来越大。”
为了快速排解业务风险,”长痛不如短痛“,知乎业务研发团队、知乎数据库架构团队联合阿里云瑶池数据库技术专家团队一起深入业务场景讨论技术架构改进方案,最终决策通过升级到“PolarDB+DTS”的一站式云原生架构方案上,从根本上解决这个问题。
01、云原生数据库PolarDB为业务高速增长护航
1. 存算分离,弹性扩展:阿里云瑶池旗下的云原生数据库PolarDB采用存算分离架构,计算与存储资源可独立扩展,灵活适配知乎风控场景的需求:存储持续增长,查询计算量相对固定,大幅提升了资源利用率。面对突发业务峰值,PolarDB支持分钟级计算资源扩容,快速提升集群性能。
2. 性能优化,写入提速:针对频繁的大字段读写操作,PolarDB优化了写入流程,去除了索引写锁,采用批量空间分配和无锁写入技术,支持多个大字段同时写入,实现整体数据同步性能提升3倍以上。
3. 简化逻辑,业务提效:利用PolarDB的生成列特性,在JSON数据写入时可自动解析并提取所需值存储到独立列中,同时支持JSON数据的部分更新能力,大幅简化了原有复杂的JSON处理逻辑。
4. 数据分区,容量扩展:为应对数据容量持续增长,PolarDB通过数据分区提升单实例容量上限,并支持跨分区全局索引,确保分区不影响检索效率。其中,最大单表数据量几百TB、数据记录行数几百亿行。
5. 资源节省,成本优化:借助PolarDB的SmartSSD硬件压缩技术,数百TB的数据迁移后压缩至原存储空间的40%,显著降低存储成本。此外,按需计费模式避免了自建数据库预留空间的固定投入,进一步优化了成本。
6. 全面托管,全链路监控:PolarDB提供秒级快照备份、故障自动恢复以及一键版本升级等功能,显著降低了运维复杂度。同时,PolarDB实现了从计算存储资源、数据库引擎内核到代理层的全链路监控,能够支持快速发现并精准定位问题。
02、DTS云原生架构简化复杂数据链路的迁移和同步
在数据迁移过程中,阿里云瑶池旗下的数据传输服务DTS(Data Transmission Service)发挥了重要作用:
1. 支持异构数据库迁移:DTS内置数据处理脚本,能够从多源异构数据库中提取数据并统一转换为JSON格式。这一能力有效解决了异构数据源间库表结构和数据类型不一致的问题,实现了多数据源实时同步到PolarDB同一张表的目标,显著提升了数据整合效率。
2. 支持表级过滤和脚本化配置:DTS提供表级数据过滤功能,可高效拆解任务,并通过脚本化配置实现灵活管理。结合其无感升降配能力,实现了根据数据库负载动态调整任务运行状态,在确保源库性能不受影响的前提下,以最高速率完成数据同步。
3. 支持异构数据校验:为保障迁移过程中的数据一致性,DTS提供了精准、高效的数据校验机制。通过指定排序键、构建类型映射关系以及本地排序等技术手段,DTS成功克服了异构数据库中唯一键不匹配、列类型不一致等问题,确保了数据的最终一致性。
03、未来展望:云原生技术赋能业务创新
从之前的MongoDB上云,到现在的自建ETL+分布式数据库集群升级至云原生数据库PolarDB+DTS,知乎的反作弊存储架构完成全面云原生架构升级。项目从方案沟通、迁移实施、落地验证等整个过程中,阿里云项目团队、知乎反作弊研发团队及数据库架构团队一起紧密配合,实现了业务零故障的平滑迁移。
此次数据库架构升级不仅解决了当前的业务风险问题,还为接下来的业务增长奠定了坚实基础。借助PolarDB提供的多项云原生企业级特性,包括:Serverless、多主集群、IMCI(列存索引)、冷数据归档、ePQ(弹性并行查询)、无感秒切、GDN(全球数据库网络)等能力,使知乎具备持续降低运维和开发成本的能力,让业务研发团队将更多资源投入到产品创新和服务优化中,从而进一步提升用户体验。
展望未来,阿里云与知乎进一步深化合作,充分发挥云原生技术优势,助力知乎在用户体验、内容创新和平台治理等方面实现新的突破。双方将携手打造更加安全、高效的在线内容生态,共同推动行业的技术进步与发展。