PikiwiDB (Pika) 混合存储之批量查询
1 背景 2023 年 11 月发布的 PikiwiDB(Pika)【下文简称 Pika】 v3.5.2 开始支持混合存储,旨在通过缓存热点数据提升查询速度。 Pika v3.5.2 的热数据缓存只实现了对热点 Key 的点查(如get/hget),在后续的 v3.5.3 和 v3.5.4 修复若干 bug 后,对热数据的点查目前已经非常稳定。然而并未支持批量查询(如 mget/hmget etc)。 近期业务侧(360 AI 推荐)反馈批量查询速度比较慢,在 40core CPU/256GiB 内存/2TiB SATA SSD 规格机器上数据量超过 100GiB 时,Pika v3.3.6 30% 批量查询延迟超过 35ms【下文称之为失败率】。业务考虑升级 Pika 到 v3.5.4 版本,使用热数据缓存以提升性能。但由于 Pika 热数据缓存尚未支持批量查询,性能并未改善。 为了满足业务需求,Pika 团队开发了批量查询热数据缓存功能,显著提升了批量查询性能,降低了查询延迟和失败率。 2 原理 以 MGET 命令为例,批量查询热数据缓存采用以下策略: 命中缓存: 首先查询 Red...