1、UStore:面向新型硬件的统一存储系统屠要峰1,2韩银俊2金浩2陈正华2陈兵11(南京航空航天大学计算机科学与技术学院南京211106)2(中兴通讯股份有限公司南京210012)()UStore:Unified Storage System for Advanced HardwareTuYaofeng1,2,HanYinjun2,JinHao2,ChenZhenghua2,andChenBing11(College of Computer Science and Technology,Nanjing University of Aeronautics and Astronautics,Nan
2、jing 211106)2(ZTE Corporation,Nanjing 210012)AbstractTheexplosivegrowthofdatascalehasmadedistributedstoragewidelyused.Foralongtime,distributedstoragedirectlyusesthelocalfilesystemtoaccesslocalstorageresources.Withtheemergenceofhigh-performanceNVMe SSD,PMEM(persistent memory),and heterogeneous accele
3、ration devices,it is difficult for the local filesystemtogivefullplaytothefeaturesandperformanceadvantagesofnewhardware.ManyexistingresearcheshaveoptimizedandimprovedtheperformanceaccordingtothehardwarecharacteristicsofSSDorPMEMatthesoftwarelevel.However,thesestudieshavepoorcompatibilityandscalabili
4、ty,cannotflexiblyadapttochangesinthehardwareenvironment,and lack a unified solution for new kinds of hardware.A unified storage system UStore that iscompatiblewithmultiplestoragemediaisproposed,whichcanflexiblyselectstoragemediaaccordingtobusinessscenarios,andoptimizethecombineddesignoftypicalhardwa
5、resuchasPMEM,KVSacceleratorcards,andNVMeSSDs,andmakefulluseofitshardwarecharacteristicstomeetmultipleneeds.Throughametadatadesigndecoupledfrom the physical storage medium,UStore can adapt to the performance and atomic update ability of differenthardwares,andrealizeaflexiblemetadatamanagementstrategy
6、;throughtheefficientdatamanagementmechanismandupdatestrategy,thelogfreedataatomicwriteguaranteeisrealized,andthewriteamplificationandperformancejitteroftheexistingsystemareeliminated.TheexperimentalresultsshowthatcomparedwithBlueStore,UStores4KBrandomreadperformanceisimprovedby3.2,andthe4KBrandomwri
7、teperformanceisimprovedby8.2.Underthreetypicalhardwarecombinations,UStoreshowsmatchingdataaccesscharacteristics,givingfullplaytothecharacteristicsandperformanceofstoragehardware.Key wordspersistentmemory(PMEM);NVMeSSD;distributedstorage;metadata;atomicwrites摘要数据规模的爆发式增长使得分布式存储广泛应用,长期以来分布式存储直接使用本地文件系
8、统访问本地存储资源,随着高性能 NVMeSSD、持久内存(persistentmemory,PMEM)、异构加速设备的出现,本地文件系统难以发挥新型器件的特性和性能优势.现有很多研究针对 SSD 或者 PMEM 的硬件特性在软件层面进行优化和改进.然而,这些工作兼容性和扩展性差,不能灵活适配硬件环境变化,缺乏面向新型硬件的统一解决方案.提出了一种兼容多种存储介质的统一存储系统 UStore,可根据业务场景灵活选择存储介质,并针对 PMEM、KVS 加速卡、NVMeSSD 等典型硬件进行组合设计优化,充分利用其硬件特性,满足多层次的业务需求;通过一种与物理存储介质形态解耦的元数据设计,使其适应不
9、同硬件的性能收稿日期:2022-06-11;修回日期:2022-10-10基金项目:国家重点研发计划项目(2021YFB3101100)ThisworkwassupportedbytheNationalKeyResearchandDevelopmentProgramofChina(2021YFB3101100).通信作者:韩银俊()计 算 机 研 究 与 发 展DOI:10.7544/issn1000-1239.202220503JournalofComputerResearchandDevelopment60(3):525538,2023和原子更新能力差异,实现灵活的元数据存储策略;通过高效
10、的数据管理机制和更新策略,实现无日志的数据原子写保证,消除了现有系统的写放大以及性能抖动等问题.实验结果表明,相比于 BlueStore,UStore的 4KB 随机读性能提升了 3.2 倍,4KB 随机写提高了 8.2 倍,3 种典型硬件组合下 UStore 表现出与之相匹配的数据访问特征,充分发挥了存储硬件的特性和性能.关键词持久性内存;NVMeSSD;分布式存储;元数据;原子写中图法分类号TP316近年来,随着云计算、移动互联和物联网技术的快速发展,数据规模呈爆发式增长,传统的存储系统已经无法满足不断增长的海量数据存储需要,大容量高性能分布式存储已经成为数据中心的必备.长期以来,大多数分
11、布式存储直接使用本地文件系统如 XFS(extentsfilesystem),EXT4(fourthextendedfilesystem)等访问本地存储资源.比如 GlusterFS,HDFS直接使用本地文件系统作为其后端存储,早期分布式文件系统 Ceph 的 FileStore 也是基于本地文件系统 XFS 进行本地存储的访问.本地文件系统成熟稳定,充分利用了文件和对象天然的映射关系,利用操作系统页缓存机制缓存数据,利用 inode 节点缓存机制缓存元数据,同时从操作系统层面保证了磁盘的隔离性.但这种架构也有明显的局限性1,主要是事务一致性难以保证,元数据管理低效,以及缺乏对新型硬件的支持.
12、由于这些弊端,Ceph 在 Jewel 版本引入了 BlueStore 作为后端存储.BlueStore 将对象数据的存放方式改为直接对裸设备进行指定地址和长度的读写操作,不再依赖本地文件系统提供的 POSIX接口.同时,BlueStore 引入了 RocksDB 数据库保存元数据和属性信息,包括对象的集合、对象、存储池的omap 信息和磁盘空间分配记录等.BlueStore 有效避免了数据和日志的双写,提升了元数据的操作效率,使得本地 I/O 性能得到了较大的提升.但 BlueStore 在小 I/O 的处理上依然需要写日志到 RocksDB 中,同时 RocksDB 的使用引入了序列化和反
13、序列化以及compaction 带来的开销.持久内存(persistentmemory,PMEM)、硬件加速的 KVS(key-valuestore)等新型存储形态的出现为本地存储带来了新的机遇.PMEM 具有低时延、非易失、字节寻址等特性,但是目前商用的 PMEM 也存在着读写不对称等不足,PMEM 比固态硬盘(solidstatedrive,SSD)容量小且单位存储成本更高,在大容量高性能存储场景下,存储的数据规模和扩展性受限,因此PMEM 适合用来存储元数据和小数据.KVS 规范为存储设备定义了标准 APIs,基于 FPGA 硬件的 KVS 在实现 CPU-offload 的同时,利用超
14、级电容保证崩溃一致性,可以有效减少类似 RocksDB 在处理事务过程中带来的写放大和 compaction 的开销,具有较好的性能表现,同样适合于元数据的存储.基于 Flash 的 SSD由于存在着磨损不均衡、垃圾回收(garbagecollection,GC)开销及长尾延时等问题,不适合海量小文件频繁读写的元数据管理,而更适合存储大块的数据对象.研究者针对新型硬件的存储系统做了大量的研究和优化.然而,现有基于新型硬件的存储系统大多是对某种硬件单一场景的优化,其优化机制和应用场景存在较大差异,普遍存在兼容性和扩展性差的问题,无法灵活适配多种硬件配置的不同组合,例如基于 SSD 优化的存储系统
15、无法很好地适配 PMEM 的读写特性.针对上述问题,本文提出并实现了一种适配多种新型硬件的统一存储 UStore,通过不同存储介质特性的组合优化设计,灵活构建性价比更优的本地存储系统.本文的主要贡献有 3 个方面:1)实现了一个兼容 PMEM、KVS 加速卡、NVMeSSD 等多种存储介质的统一存储系统 UStore,并可根据业务场景灵活选择存储介质;针对PMEM+NVMeSSD,KVS+NVMeSSD,NVMeSSD 这 3 种常用场景,结合PMEM 和 NVMeSSD 硬件特性进行组合设计优化,满足多层次的业务需求.2)提出一种高效的数据布局和管理方法,利用易失的空闲空间管理和写时重定向(
16、redirectonwrite,ROW)技术,实现了无日志的数据更新方法,减少写放大和管理开销,提升了数据的访问性能.3)提出一种与物理存储介质形态解耦的元数据管理机制,能够高效地适配不同存储硬件介质和接口;设计了一种面向数据原子写优化的元数据结构,利用 PMEM,NVMeSSD 等新型硬件的写入原子性实现高效的元数据原子更新.1相关工作现有研究在本地存储优化设计、基于 PMEM 的526计算机研究与发展2023,60(3)存储优化、基于 SSD 的存储优化等方面做了很多有益尝试,以充分发挥新型存储器件的特性和性能优势,提升存储系统性能.1)基于 PMEM 的存储优化.传统的存储栈冗长的 I/O 路径和诸如页缓存等机制严重影响 PMEM 的特性和性能.PMFS2是英特尔公司提出的持久内存文件系统,采用 8B 原地更新和细粒度日志机制保证元数据更新的原子性,采用 undo 日志和写时复制混合的方式保证数据的一致性.NOVA3是一个基于混合易失/非易失主内存的日志结构文件系统,充分利用 PMEM 的优势提供更强的一致性和原子性保证,支持元数据、数据和 mmap 三种操作的原子性保证.NOV