重定义对象存储,为 AI、大数据及 HPC 应用打造高性能全闪方案

携手英特尔,百度智能云私有云存储 ABC Storage 推出高性能全闪对象存储解决方案

引言:

  • “基于全闪方案的高性能对象存储解决方案,是百度智能云助力私有云用户应对海量非结构化小文件存储挑战,在 AI 训练等应用场景中获取更佳效果的得力手段。

  • 全新英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘的组合,帮助我们这一方案在稳定性、IOPS 等方面达成了更优的性能表现,并通过与新一代英特尔® 至强® 可扩展处理器的配合,更好地诠释了我们“处理一切、存储更多”的创新方向,助力百度智能云 ABC Storage 高性能全闪对象存储解决方案充分释放潜能。”

  • 百度智能云私有云存储团队

author-image

作者

作为全球 IT 和互联网行业的领先企业,百度智能云* 正将其在公有云存储领域多年来积累的技术与经验输出到私有云,作为实施其 ABC(AI、Big Data、Cloud)战略的重要举措。在这一进程中,百度智能云敏锐地发现:人工智能(Artificial Intelligence,AI)训练、大数据处理以及高性能计算(HPC)等前沿技术领域,正成为私有云发展的重要方向。而与此密切相关的面向海量数据,尤其是海量非结构化小文件的高性能存储,也就成为了它推进存储技术转化创新的一大突破点。

构建面向海量非结构化小文件的高性能存储方案并非易事—传统文件存储系统在应对急剧增长的文件数量,以及面对“读写混合”等访问请求时,会有较大的性能损耗;同时,机械硬盘(Hard Disk Driver,下简称 HDD)等传统存储介质,在每秒读写次数(Input /Output Operations Per Second,IOPS)上也并不尽如人意。因此,在公有云存储领域获得巨大成功的百度智能云,需要结合既有经验,探寻全新的私有云高性能存储之路。

通过与英特尔公司开展深入技术合作,百度智能云* 导入了全新的英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘,并以它们为核心硬件基石,打造出了 ABC Storage 私有云全闪对象存储解决方案。如图一所示,新方案同时在存储性能和规模两个维度实现了突破,能更有效地应对海量非结构化小文件存储带来的挑战,而且这一结论已在一线用户的实地测试与部署中获得了验证。

图一 新方案同时在存储性能和规模两个维度实现突破

海量数据,特别是非结构化数据的爆炸式增长,正为企业信息化和数字化进程,以及相关 IT 技术的高速、持续演进提供源动力。预计到 2025 年,全球数据总量将达 163ZB(Zettabyte,十万亿亿字节)1。利用数以亿计的数据文件,众多技术团队得以在计算机视觉、语音识别、金融风控等技术上获得突破。因此,对海量数据的高效管理、处理和利用,已成为企业在数字化时代保持领先优势的核心竞争力。

但传统存储系统在应对海量非结构化小文件存储时,一直面临着艰巨挑战。一方面,随着文件数量的急剧增多,传统文件存储系统的性能难免会出现波动和下降;另一方面,块存储、文件存储等存储方式在小文件存储性能上又并不占优。同时,AI 等新应用在读写性能上,对存储系统也有着更高的要求。

作为全球领先的互联网企业,百度在搜索等领域的巨大成功早已为人熟知。1,000 亿+ 的网页、2,000PB(Petabyte,千万亿字节)的存储数据以及 100PB 的日处理数据2,让百度深谙海量非结构化小文件存储带来的技术挑战,经过多年历练,其旗下百度智能云提出了 BOS 对象存储、CFS 文件存储等一系列先进、成熟的存储解决方案,并在公有云存储领域实现了广泛部署,对 20 余个用户量过亿的互联网产品提供了有力支撑,其中不乏百度网盘* 这样的明星级产品。

随着百度智能云 ABC 战略的进一步深入,百度智能云开始将公有云存储上的先进技术与丰富经验输出到私有云领域。通过与英特尔公司开展深入合作,百度智能云引入了英特尔® 傲腾™ 固态盘、基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘等高性能存储产品,共同构建了全新的 ABC Storage 全闪对象存储解决方案,并在 AI 训练、媒资管理等应用领域成功实现落地部署。

解构 ABC Storage 高性能全闪解决方案

在图像识别等 AI 训练应用场景中,训练数据集中的文件往往有着惊人的数量。在百度智能云此前构建的一个测试场景中,由 200 台高性能服务器组成的 AI 训练集群,其应对的训练数据为 100 亿个文件2,而这些文件每一个往往都是数十 KB 的小文件。同样,在媒资管理、无人驾驶、视频服务等互联网热门应用领域,系统所需存储和处理的文件数量,也常以亿为单位。

文件数量的急剧上升,会带来存储系统 IOPS 性能的下降与波动,对于传统文件存储方式而言更是如此。在以网络附加存储(Network Attached Storage,NAS)为代表的文件存储系统中,文件是通过层级目录方式来存储,目录、索引和数据被保存在存储介质的不同位置上。因此一次文件访问至少要经历三次随机访问才能完成。当系统中存储的普遍是小文件时,同样的存储容量意味着更多的文件数量,系统就会面临更大的随机访问压力。此外,文件存储系统目前通常采用 Hash 树、B+ 树等算法来对目录进行管理和索引,这些算法在检索文件数量过亿的大目录时,效率和性能都会出现明显下降。

在某些应用场景中,“一读多写”、“读写混合”等访问模式,又进一步加剧了性能上的挑战。常见文件 I/O 过程是由“打开”、“寻找”、“读”/”写”、“关闭”等操作组成,位于“读”或 “写” 操作之前的 “打开” 操作对系统时间和资源的占用最大,因此在“读写混合”这样的访问模式中,系统会反复的执行“打开”操作,当出现海量并发操作时,大量的系统资源就会被浪费,造成性能损耗。传统 HDD 在 IOPS 性能上的不足和随机读写上的短板,也进一步阻碍了存储系统的性能提升。囿于机械限制,即便是性能较为出色的 HDD,其随机读写性能也仅为数百 IOPS3。在处理小文件时,由于各个文件的目录、索引和数据存储位置不同,HDD 需要重复不断地寻址与定位,效率更为低下。

有鉴于此,百度智能云从软、硬件两方面着手来应对以上挑战。在软件方面,借助公有云领域积累的深厚经验,百度智能云将 ABC Storage 高性能对象存储引擎引入方案,使其在数据生命周期管理、数据保护策略、高效检索、IB 网络和 RDMA 支持以及灵活的权限管理机制等方面均有着过人的优势。借助对象存储在扁平化部署、高效能检索以及 EB(Exabyte,百亿亿字节)级扩展能力等方面的独特优势,ABC Storage 高性能对象存储引擎现在可为私有云用户提供面向海量非结构化小文件存储的高性能解决方案。

图二 基于高性能对象存储解决方案的 AI 训练流程

以 AI 训练应用场景为例,如图二所示,AI 训练是由数据采集、清洗、标记、Resize、建模、训练、评估以及预测等一系列环节构成,每一个环节都涉及对存储系统的读、写、检索等操作。尤其是在训练和评估过程中,系统会根据 PaddlePaddle*、Caffe*、Tensorflow* 等深度学习框架的需要,对模型进行参数优化和校验。这一过程中,数据会被反复地执行高并发迭代吞吐,为训练系统的满负荷运行提供充足的数据“燃料”。

ABC Storage 高性能对象存储引擎为上述全流程提供了统一的对象存储接口,并结合存储引擎优化经验,解决了海量文件场景下底层 IO 放大等问题,使存储系统获得了稳定的性能输出,帮助 AI 应用有效提升数据利用效率。同时,面对训练过程中的读写混合操作(持续读操作中插入一定量写操作,读写混合比为 9:1 或 8:2),引擎也进行了进一步优化,保障读写混合场景下,系统性能不受影响。

针对以上的一系列优化方案,由百度智能云团队进行的一项测试结果表明,新的解决方案在文件数量不断增长时,始终有着稳定的性能表现。该测试共配置了 4 个存储节点。服务器均配置 4 路英特尔® 至强® 处理器 E5-2620 v4 / 2.10GHz(共 32 内核 64 线程)、128GB DRAM 内存以及 7 块 4TB SATA 固态盘(注:这一测试主要验证软件方案,还未配置英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘的组合)。测试中,团队将 4k 文件导入后,以 500 的并发量执行“随机读”操作。

测试结果如图三所示,当测试文件数量逐渐从 1 亿增长到 80 亿时,系统的每秒查询率(Query Per Second,QPS)和延迟性能波动始终保持在 5%4 以内。

图三 百度智能云 ABC Storage 对象存储解决方案性能稳定性测试结果

来自英特尔® 存储产品的性能“加力”

为 ABC Storage 高性能对象存储引擎配备优异的硬件设施,也是新方案获得成功,或者说在性能上更上一层楼的关键,百度智能云将目光放在了性能更为卓越的固态盘产品上。与 HDD 不同,固态盘特有的物理特性使其几乎没有寻道时间和旋转延迟,因而在 IOPS 性能上远胜 HDD。通过与英特尔进行深入技术合作,百度智能云引入了英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘这一组合,为 ABC Storage 全闪对象存储解决方案提供了强有力的硬件支撑。

性能、容量与成本似乎一直是全闪存储方案中矛盾的几方面。固态盘性能越高,价格愈昂贵,用户所能得到的容量也越有限。为解决高昂成本与容量不足的问题,很多解决方案不得不采用“高性能固态盘+传统 HDD”的搭配,由此造成了性能上的短板。英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘这一组合的出现,则是破解这种短板的良方。

作为英特尔在固态盘产品线上的高端成员,英特尔® 傲腾™ 固态盘采用了创新的 3D XPoint™ 存储介质、并搭配了先进的系统内存控制器、接口硬件和软件技术,在低延迟、高稳定等多维度均有上佳表现。以新方案所采用的英特尔® 傲腾™ 固态盘 DC P4800X 为例,其具有高达 55 万 IOPS 的随机读写能力,低至 10 微秒的读写延迟5可更好地应对多用户、高并发场景,帮助方案获得更强的性能表现。同时,其优异的写入寿命(Drive Writes Per Day,DWPD)表现,也能赋予存储系统更长的生命周期,确保更佳的经济性。

而新方案中采用的英特尔® 固态盘 D5-P4320 系列,则有效地解决了对“大容量”的需求。英特尔领先的 64 层 3D NAND 技术,可帮助这一 QLC 固态盘单盘容量冲到 7.68TB(Terabyte,万亿字节)之高,以充分满足海量数据的存储需要。同时,其随机读取的 IOPS 也高达 42.7 万6,通过与新一代英特尔® 至强® 金牌 6142 处理器搭配,尤其适用于 AI 训练等应用场景中“一写多读”的性能需求。

在 ABC Storage 全闪存储解决方案中,英特尔® 傲腾™ 固态盘 DC P4800X 被部署在存储系统的缓存(Cache)、元数据管理(MDS)以及日志系统等核心区域。众所周知,提高数据缓存的性能与命中率,将为存储系统带来更高的 IOPS,而元数据作为对象存储的“灵魂”,为其部署更高效的存储硬件也会带来更高的整体收益。ABC Storage 全闪存储解决方案就利用英特尔® 傲腾™ 固态盘作为缓存,优化读取效率和同步时延,有效提升了元数据的处理效率。

基于 QLC 技术的英特尔® 固态盘 D5-P4320 系列则成为大容量数据存储的主力,在 ABC Storage 解决方案中,每台存储服务器均部署 4 块该型固态盘,按单个文件 15KB 计算,接近 30TB 的存储容量,使文件存储总量可达 20 亿之多。更重要的是,基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘的高性价比,使这一固态盘组合的引入,在帮助解决方案保证高性能的同时,也有效降低了系统的总体拥有成本(Total Cost of Ownership, TCO)。来自百度智能云的内部测算数据显示,新的高性能全闪解决方案可以让 TCO 降低 60%2

百度智能云团队在英特尔的支持下,对 ABC Storage 全闪存储解决方案的性能表现进行了详细的评估与测试。基准测试架构如图四所示:ABC Storage 存储集群由 5 台存储服务器构成,每台存储服务器均配置 2 路英特尔® 至强® 金牌 6142 处理器(共 32 内核 64 线程),256GB DRAM 内存。测试中使用一块750GB 的英特尔® 傲腾™ 固态盘 DC P4800X 和 4 块 7.68TB 英特尔® 固态盘 D5-P4320,共同构成全闪存储方案。同时,系统使用 40GbE 网络与计算平台相连。

图四 ABC Storage 全闪存储解决方案基准测试架构

测试采用了专业的云存储性能测试工具 COSBench*,对不同大小数据包在读写操作时的吞吐率、带宽、平均响应时间等性能指标进行了详细测试。通过对测试结果(详见表一)分析可知,英特尔® 傲腾™ 固态盘与基于英特尔® 3D NAND QLC 技术的英特尔® 固态盘组合后,可充分满足 AI 训练等应用场景对于存储系统的性能要求。(注:表一为 ABC Storage 基础版的基准性能指标,ABC Storage 高性能版在该测试环境下可以输出更高的性能。)

表一 ABC Storage 全闪存储解决方案在 COSBench 上的基准性能测试结果4

前景与展望

作为百度智能云 ABC 战略的重要实践成果,ABC Storage 高性能全闪对象存储解决方案通过在存储性能和存储规模两方面的提升,为 AI 训练、大数据分析和高性能计算等私有云应用场景提供了强劲可靠的存储支撑能力。现在,这一解决方案已在多个行业用户处进行了实地测试与部署,并获得一致好评。来自一线的反馈表明,方案为用户提供了千亿级的文件数量支持,分钟级的敏捷交付能力以及 11 个 4 的数据可靠性,帮助用户提高业务效率 1-3 倍2

与英特尔开展的深度技术合作,引入英特尔领先的存储、计算产品和技术,无疑是该解决方案获得成功的重要因素。在未来,双方还计划开展更多的技术合作,来优化方案的性能表现,并将更多的英特尔相关产品与技术引入方案;同时,双方也计划将基于全闪方案的高性能对象存储解决方案扩展到更多的应用场景中,使海量数据真正转化为推动IT技术发展和企业数字化转型的强力引擎。

百度智能云全新解决方案实现的优势:

·         ABC Storage 高性能对象存储引擎为 AI 训练、高性能计算等应用场景提供了统一的对象存储接口,并提供了稳定的性能输出,即便在文件数量急剧增长时,QPS 和延迟等性能指标依然保持稳定;

·         ABC Storage 高性能对象存储引擎借助有针对性的优化工作,可帮助存储系统在面临海量数据读写、一写多读、混合读写等场景时,保持良好的性能表现;

·         英特尔® 傲腾™ 固态盘与基于英特尔® QLC 3D NAND 技术的英特尔® 固态盘的组合,既帮助 ABC Storage 全闪对象存储解决方案实现了优异的性能,也可帮助用户大大降低 TCO。