深夜加班时,盯着屏幕前那些缓慢爬升的数据库查询进度条,深圳一家科技公司的架构师刘钢想到了几年前参加软件定义存储峰会时的情景-1。没想到如今,被称为“3D NAND SQL”的技术正成为解决这些难题的关键。


01 数据爆发的困境

数据正在以前所未有的速度增长,这已经不是什么秘密了。企业每天面临着海量数据需要处理和分析的挑战,数据库性能瓶颈越来越成为技术团队头疼的问题。

传统数据库架构依赖闪存(SSD)作为持久化存储,但这些存储设备存在先天限制:写入速度慢、寿命有限、延迟不可预测-4

在自动驾驶系统中,毫秒级的延迟可能引发碰撞事故;在工业自动化生产线上,数据处理的不确定性会导致设备停机-4。这些场景直指一个核心问题:数据库如何在保证数据一致性的同时,提供可预测的低延迟响应?

数据库专家Joy Arulraj和Andrew Pavlo直言:“当我们2013年开始这个项目时,它像是一个登月计划。我们不确定NVM技术能否见到曙光,但英特尔终于在2019年开始发货NVM设备。”-6

02 传统数据库架构的根本问题

传统数据库管理系统主要分为两类:面向磁盘的数据库和面向内存的数据库-6

面向磁盘的数据库沿袭了1970年代初期关系型数据库的设计思想,基于两级存储层次结构:快速但易失的字节可寻址内存用于缓存,以及速度较慢、非易失的块可寻址设备用于永久存储-6

这些系统悲观地假设事务可能访问不在内存中的数据,因此会遭受长时间延迟以从磁盘检索所需数据。

它们采用传统技术,如复杂的并发控制方案来克服这些限制-6

随着制造技术的进步,单台计算机上的DRAM容量大幅增加。但面向磁盘的系统并非为全部或大部分数据完全存储在内存中而设计。结果是,它们的许多传统组件已被证明会阻碍事务处理工作负载的可扩展性-6

03 新一代数据库的曙光

存储级内存正在从实验室走向生产环境,其技术演进不仅关乎存储介质革新,更推动着数据库系统向“内存计算持久化”和“存储计算分离”两大范式迁移-2

3D NAND SQL的核心思想是在内存层次结构中引入非易失性DIMM作为持久写缓存,吸收从DRAM到SSD的大量写入-9

这项技术被称为NV-SQL,它通过基于重新更新间隔的准入策略来确定哪些写入频繁的页面有资格缓存在NVDIMM中-9。其新颖之处在于页面热度仅基于页面的LSN(日志序列号)。

研究发现,位于NVDIMM中的页面在崩溃时可能违反页面操作一致性,并提出了如何使用每页更新标志检测不一致页面以及如何使用重做日志修复这些页面的方法-9

04 性能突破的实质

3D NAND SQL演示了类似ARIES的日志记录和恢复技术如何优雅地扩展以支持NVDIMM数据的缓存和恢复-9

通过将写入密集的重做缓冲区和DWB放置在NVDIMM中,它消除了提交时的日志强制写入和WAL协议,进一步减少了对存储的写入-9

实际测试结果表明,使用真实NVDIMM设备运行的NV-SQL原型在写入密集型OLTP基准测试中,事务吞吐量比具有更大DRAM的普通MySQL高出数倍-9

05 存储技术的两极化发展

近年来,新兴存储硬件技术呈现出两极分化的发展趋势:追求更高性能或追求更低成本-7。相应地,采用这些技术的数据系统通常要么被优化为快速但昂贵,要么被优化为廉价但缓慢。

以英特尔傲腾技术和QLC 3D NAND技术为代表,通过3D XPoint或高密度SLC闪存实现了接近DRAM的延迟和远超NAND的耐用性-2

行业正在采取一种不同方法:通过设计一个本地利用两层快速和低成本存储技术的存储引擎,在性能和成本之间实现帕累托最优平衡-7

06 混合存储架构的创新

研究人员设计并实现了PrismDB,这是一种新颖的键值存储,同时利用了现代NVMe存储技术的两个极端:3D XPoint和QLC NAND-7

这项研究的主要贡献是如何在两个不同的存储层之间有效迁移和压缩数据。灵感来自于日志清理的经典成本效益分析,开发了一种新的多层存储压缩算法-7

该算法平衡了快速存储中热对象回收空间的好处与慢速存储中压缩I/O的成本-7

当大多数请求从DRAM或NVM提供服务时,瓶颈从I/O转移到了CPU。PrismDB采用分区、无共享架构,最小化线程之间的同步量-7

07 技术挑战与未来

尽管前景广阔,但3D NAND SQL技术的推广仍面临多个挑战。成本敏感性是首要问题,当前SCM单价仍是NAND SSD的3-5倍-2

生态系统成熟度也不足,部分数据库软件需要修改内核以完全释放性能,如MySQL 8.0对持久化内存的支持仍在完善中-2

热管理问题也需关注,高密度SCM模块在持续高负载下可能产生局部过热,需要改进散热设计-2

未来随着CXL协议的普及,SCM将实现CPU、GPU、DPU的共享内存池化,进一步消除数据搬运开销-2。同时,SCM与存算一体芯片的融合,可能催生新一代超低延迟数据库硬件架构-2


在自动驾驶激光雷达数据处理场景中,面对每秒1.5GB点云数据需在50ms内完成处理的挑战,采用eXtremeDB/rt与TFTL组合后,平均处理延迟稳定在18ms,连续72小时无超时-4。3D NAND SQL背后的存储级内存技术正在重新定义数据访问的速度极限,其演进已成为高端数据库标配存储层的关键驱动力-2