0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于FDP SSD的ROCKSDB写放大优化

三星半导体和显示官方 来源:三星半导体和显示官方 2026-03-23 09:16 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

基于FDP SSD的ROCKSDB写放大优化

作为SSD的关键指标,写放大(WriteAmplification,WA)始终是SSD领域待攻克的技术难题之一。其本质表现为SSD的实际物理写入量超过主机原始请求写入量。这一现象的根本原因在于NAND闪存介质必须以块(BIoCK)为单位进行擦除,而主机端的写入请求往往以页(Page)为单位分散分布于多个块中。当某块内有效数据占比低于阔值时,SSD控制器启动垃圾回收(Garbage Collection,GC)机制,将尚存的有效数据搬运至新擦除的块中,同时释放原块以供复用,这一过程必然产生额外的写入量。这些额外的写开销不仅影响系统整体性能,导致吞吐量下降和延迟升高,还会缩短SSD的使用寿命。

这一挑战推动了SSD领域的一个重要研究方向一数据放置技术。SSD数据放置技术是通过硬件与软件的深度协同设计,对主机数据在SSD介质中的物理布局进行优化的技术方案,其核心在于通过降低GC的触发频率,从根本上抑制写放大(Write Amplification,WA)效应的产生机制。

NVMev2.1规范所定义的灵活数据放置(Flexible Data Placement,FDP)技术,既从底层闪存管理层面显著减少无效GC操作引I发的超额写入流量,又通过FDP的控制指令集降低了上层存储栈的适配复杂度。此外,FDP还具有向后兼容能力,能够复用当前的软件栈,最终在解决写放大问题与软件生态兼容性之间建立了技术平衡点。FDP突破了传统SSD被动式数据管理的局限,通过向主机公开设备资源信息,并提供数据分类放置接口,使主机能够根据数据特性(如冷/热数据)主动将数据分类放置在SSD上不同的存储单元中。这一机制实现了数据的分流隔离和存储单元的精细化布局,从根本上解决了不同特性数据混合存储导致的的余搬移问题。关于FDP技术的实现机制的深度解析,可参考我们发布在ODCC官网上的《FDPSSD技术与应用白皮书》。

Linux虚拟文件系统(VFS)从版本4.13起,定义了文件生命周期的管理机制,分别为SHORT(短周期),MEDIUM(中周期),LONG(长周期)和EXTREME(超长周期)。应用可通过fcntI(2)系统调用对文件显式的指定上述生命周期等级。此外,VFS还定义了NOT_SET和NONE两种类型,NOT_SET为VFS默认类型,表示当文件没有被显示声明生命周期时的类型。

NONE表示文件不关联任何生命周期属性的配置。该机制与FDP SSD相结合时,可将不同生命周期的文件映射至FDP内部预设数据流中降低写放大效应。

RocksDB是Meta公司开源的一款高性能嵌入式键值对存储系统,其核心架构基于Log-StructuredMerge-Tree(LSM-Tree)算法设计,采用分层存储结构进行数据管理,通过追加写(Append-only)与合并(Compaction)两大核心机制实现高吞吐与低延迟特性。其中,SSTable(Sorted String Table),是RocksDB持久化存储的核心文件,以键值对有序序列的形式存储数据,并按层级(Level)进行组织。较新的数据存储在Levelo中,较老的数据随着合并(Compaction)过程逐步归并在编号更高的Level中。

ROCkSDB默认的数据分类策略是将文件的层级特性映射为VFS的文件生命周期标识,具体表现为:预写日志(WAL)文件被标记为SHORT;LeVelO和LeVel1的SSTable文件被标记为MEDIUM;LeVeI2的SSTable文件被标记为LONG;LeVeI3及更高层级的SSTable文件则被标记为EXTREME;其它文件(包括MANIFEST、CURRENT、检查点日志等)未进行显式生命周期标记,默认保留为NOT_SET标识。

通过对ROockSDB的数据分类策略进行系统性分析,我们发现SSTable文件在LSM-Tree层级中的生命周期存在显著的阶段性分布特征:位于LevelO至Level3的SSTable文件具有相对较短的驻留周期,而Level4以及上的文件则展现出最长的存活时间。基于这一观测结果,本实验摒弃了RoCkSDB原生的数据分类策略,转而提出一种优化的分类方案。即WAL文件标记保持不变,将LeVeI03文件标记为MEDIUM,LeVel4文件标记为LONG,LeVeI5及以上文件标记为EXTREME,其余未归类文件统一标记为NOT_SET。如表1所示:

wKgZPGnAlQ6AFNhcAACbDjD-rKI989.png

表 1:RocksDB 分类策略对比

我们采用FDPSSD(型号U.2PM9D3a,7.68TB容量),针对优化前后的ROCkSDB分类方案进行了对比测试。通过YCSB基准测试工具对2亿条记录进行数据加载(Load)与更新(Update)操作,全面评估不同分类策略的表现。测试结果表明,RocksDB的原生分类方案在FDPSSD上的WAF相比普通SSD降低了约8%,而优化后的分类方案将WAF显著降低30%。此外,优化后的分类方案使每秒操作数(OPS)提升了10%,同时p99.9延迟得到了55%的改善。

wKgZPGnAlSyALDJvAAFQlD60AvM494.png

图1. RocksDB 在关闭 FDP,开启 FDP 使用原生分类策略和优化分类策略的 WAF 对比

wKgZPGnAlVuAQpJgAAFLwyyc95c873.png

图 2. 写放大和 SSD 容量利用率的相关性

wKgZO2nAlZaAectMAAH-FciJQy4331.png

图3.ROCKSDB在关闭FDP,开启FDP使用优化分类策略的性能对比

除了在文件系统层面支持FDPSSD外,我们还为ROCKSDB开发了基于FDPSSD的端到端解决方案。ROCKSDB通过抽象封装API支持多种存储后端,我们开发了RoCkSDB扩展插件一TorFS。该插件通过深度集成FDP特性,实现了面向FDPSSD的数据分流。在IO调度层,依托xNVMe开源库实现多路径IO的支持。为促进生态发展,TorFS提供了标准化IO接口,允许第三方开发者集成定制化的10路径。

wKgZO2nAlbSAIlmgAAE3IeBMTRA478.png

图 4. TorFS 架构

基于TorFS的端到端方案进行测试,测试结果表明,RocksDB成功实现了对写放大效应的显著抑制,其写放大因子(WAF)值近乎趋近于理论极限的1,同时系统性能指标达到最优水平,展现出低延迟、高吞吐量与稳定持久化的综合优势。

wKgZPGnAlc6AFck1AAGzwa3btrk947.png

图5.RocksDB使用TorFS端到端解决方案的写放大和性能

上述实验证实,通过对数据生命周期管理,FDP技术显著提升了SSD的性能与寿命指标。我们期待将这项技术及优势带给整个超大规模数据中心。我们致力于将这一技术及优势推广至超大规模数据中心生态系统,以实现存储架构中数据布局与底层介质特性的深度适配。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11807

    浏览量

    219508
  • SSD
    SSD
    +关注

    关注

    21

    文章

    3147

    浏览量

    122588
  • 数据库
    +关注

    关注

    7

    文章

    4078

    浏览量

    68524

原文标题:科技之心|优化数据库写入:FDP SSD 的新思路

文章出处:【微信号:sdschina_2021,微信公众号:三星半导体和显示官方】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SSD是什么意思,什么是SSD

    、SONY等一大批国外实力厂家的不断开发研究,SSD市场已经全面开花了。不过不要担心,中国第一款SSD已经由深圳亿正存储科技公司于2007年1月1日宣布研发完成,并可以大批量进行生产,而且读与速度均大于
    发表于 03-25 16:20

    SSD优化

    一、确定你的电脑运行在AHCI模式优化SSD的第一步首先就是要确保你的磁盘读写模式为AHCI,一般来讲如果你的电脑是windows7系统,只需要在安装系统前进入BIOS设置下磁盘读写模式为“AHCI
    发表于 12-24 02:22

    SSD1289寄存器函数

    ;}这是一个例程的关于SSD1289寄存器的一个函数,有两点不明白:1、这个 (u32)0x6c000000中的0x6c000000代表什么,为什么有这个数字,难道涉及SSD1289的寄存器地址范围?2
    发表于 03-21 21:12

    基于全HDD aarch64服务器的Ceph性能调优实践总结

    rocksdb的调优是对放大,读放大,空间放大之间的权衡。7 总结本文介绍了基于全HDD aarch64服务器的Ceph性能调优实践,希望
    发表于 07-05 14:26

    面向多目标优化的自适应SSD缓存系统

    SSD(solid state drive)为代表的新型存储介质在虚拟化环境下得到了广泛的应用,通常作为虚拟机读写缓存。起到优化磁盘I/O性能的作用.已有研究往往关注SSD缓存的容量规划,依据缓存
    发表于 12-26 17:13 0次下载
    面向多目标<b class='flag-5'>优化</b>的自适应<b class='flag-5'>SSD</b>缓存系统

    全面优化SSD,浪潮智能全闪存储G2-F满足企业关键业务需求

    ,从全闪存存储架构、效率、可靠性等方面进行了全面优化,将闪存技术与企业级高可靠数据存储平台深度融合,满足了IO密集型企业关键业务的数据存储需求。 擦写寿命限制及放大先天弱点,挑战全闪存存储系统 相对传统机械磁盘,
    发表于 02-23 15:37 602次阅读

    怎么使用SSD才能避免越越慢?

    江湖传言:SSD越慢。没错,其实这是有科学依据的:可用闪存空间富裕时,SSD是无需做GC的,因为总有空闲的空间可写。SSD使用早期,由于没有触发GC,无需额外的读写,所以速度很快。
    的头像 发表于 06-02 10:58 5881次阅读
    怎么使用<b class='flag-5'>SSD</b>才能避免越<b class='flag-5'>写</b>越慢?

    SSD中有个重要参数,就是放大

    小方块时,每个小方块的平均有效数据为180/216 = 0.83,一个闪存块上的有效数据为0.83*9 = 7.5,也就是一个闪存块上面平均有7.5个小绿块和1.5个小红块。为了1.5个用户数据方块,需要写9个方块的数据(原有7.5个有效数据,加1.5个用户数据),
    的头像 发表于 07-24 15:39 1w次阅读
    <b class='flag-5'>SSD</b>中有个重要参数,就是<b class='flag-5'>写</b><b class='flag-5'>放大</b>

    SSD 上使用 btrfs 文件系统的相关优化

    btrfs 文件系统有对 SSD 进行优化,在挂载参数中加入 ssd 即可。该参数不会自动启用 TRIM/discard。
    发表于 04-27 14:06 3238次阅读

    读、、擦除是SSD对NAND的三大基本操作

    通过一系列的介绍和实验验证,我们看到了TRIM的价值和实现原理。在TRIM的帮助下,NVMe SSD的GC等操作效率更高,进而达到降低放大,提高产品性能和寿命的效果。
    的头像 发表于 04-28 11:39 1.2w次阅读

    Rocksdb原理简介

    Rocksdb作为当下nosql中性能的代表被各个存储组件(mysql、tikv、pmdk、bluestore)作为存储引擎底座
    的头像 发表于 06-01 17:17 1782次阅读
    <b class='flag-5'>Rocksdb</b>原理简介

    下一代ZNS?浅谈FDP在企业级SSD应用前景

    ,通过系统侧的主动垃圾回收(Garbage Collection,简称GC),将SSD内的GC削减到0。一方面,可以减少系统和SSD两层GC带来的放大和读写冲突,延长盘片使用寿命,也
    的头像 发表于 10-12 15:55 3728次阅读
    下一代ZNS?浅谈<b class='flag-5'>FDP</b>在企业级<b class='flag-5'>SSD</b>应用前景

    KIOXIA推出全新开源软件,提升RocksDB中闪存存储的寿命和性能

    支持灵活数据放置(FDP)的SSD,公司将在即将召开的Open Compute Project (OCP)全球峰会上展示这一技术进展。 在4驱动器RAID 5配置中,Kioxia的这款新插件将
    的头像 发表于 10-13 11:15 489次阅读

    FDP61N20 N - 通道UniFET™ MOSFET:性能解析与应用探讨

    FDP61N20 N - 通道UniFET™ MOSFET:性能解析与应用探讨 一、引言 在电子设计领域,MOSFET作为关键的功率器件,广泛应用于各类电源和开关电路中。Fairchild
    的头像 发表于 04-15 10:10 80次阅读

    onsemi FDP2614 N-Channel MOSFET:高性能与可靠性的完美结合

    FDP2614 是一款采用 onsemi 先进 POWERTRENCH 工艺生产的 N - Channel MOSFET。该工艺经过精心优化,在保持出色开关性能的同时,有效降低了导通电阻。其额定
    的头像 发表于 04-15 10:55 116次阅读