光一样的少年|向大数据异构系统的神威并行存储系统( 四 )


3.2I/O转发服务I/O转发服务是高性能计算存储系统中重要的组成部分 , 系统中多个目标的实现依赖于该服务 。 I/O转发服务的主要功能是缓存管理、I/O请求转发和服务高可用 。
缓存管理包括基于SSD的存储缓存管理和基于内存的存储缓存管理 。 基于SSD器件的特性 , 虽然其数据访问性能高 , 但其擦写次数有限 。 因此 , 神威并行存储系统基于内存缓存方式来构建分布式数据缓存系统 , 由于SSD相对独立 , 所以可以灵活加入或者去除 , 以防SSD失效引起系统故障 。 并且 , SSD的缓存空间统一到内存缓存空间进行管理 , 使得分布式数据缓存的缓存对象统一化 , 降低了管理的复杂度 。 在数据访问频繁的应用中 , 分布式数据缓存机制加速效果明显 。
I/O请求转发功能是转发服务器最主要的功能 , 系统规模非常庞大 , 一个转发服务节点要负责600多个计算节点的I/O请求的转发 , 转发服务节点的调度效率和时延非常重要 , 尤其是I/O调度的均衡性 。 应用使用的I/O转发服务节点的数量和性能限制了它从存储系统获得的总体性能 。 系统最初使用静态I/O转发 , 一个转发服务节点为一组固定的计算节点提供服务 。 这种方法有以下几个问题 。
首先 , 来自不同作业的I/O请求容易在I/O转发服务节点上发生冲突 。 I/O干扰降低了转发服务节点的性能 。 这主要是由LWFS服务的线程模型造成的 。 LWFS服务使用固定数量的工作线程来处理I/O请求 , 并赋予元数据操作更高的优先级 。 此模型有助于降低并行文件系统的压力和缩短元数据操作的时延 。 但它也有一些副作用:高优先级请求(元数据操作)会阻塞低优先级请求(读/写操作);高时延请求可能会阻止所有其他请求 。 在实际使用中 , 性能损失可能达到90%左右 。
其次 , 在静态映射中 , 应用程序的I/O需求不总是与转发资源的容量相匹配的 , 这导致应用程序不能充分利用SWGFS的性能 。 在调查了一些优秀的应用程序之后 , 笔者发现 , 对于一些运行在大量计算节点上的作业 , 会有许多I/O转发服务节点为它们提供服务 , 这些作业使用1-1I/O模式向存储系统写入数据或从存储系统读取数据 , 而许多N-NI/O模式的小规模I/O密集型作业的性能受到较少I/O转发服务节点的限制 。
针对上述问题 , 系统采用了动态转发资源分配机制 。 该机制在重新启动时自动评估一个作业的I/O需求 , 并为该作业分配相应的I/O转发资源 , 以避免I/O转发资源利用不足或过度以及受其他作业的I/O干扰等情况的出现 。 为了实现这个目标 , 首先使用性能监控工具从历史运行中提取I/O模式和性能指标;然后 , 计算转发资源的需求 , 并生成关于当前系统使用情况的资源分配提示;最后 , 将提示传递给作业调度程序 , 以进行重新映射 。 上述过程对于应用程序和用户来说是透明的 。 在真实系统中部署该机制后 , 一些应用程序的I/O性能提高了18.9倍 。
另外 , 服务高可用功能是存储系统高可用的重要组成部分 , 系统引入服务冗余和在线替代机制 , 在某个转发服务发生故障时 , 系统选出合适的冗余服务进行在线替换 , 通过数据操作重放机制使得整个替换过程对于应用是透明的 , 在转发服务恢复后 , 对系统的I/O通路表进行更新 , 并将新的I/O请求负载分配到该转发服务节点 。
3.3后端存储SWGFS“神威·太湖之光”后端存储部署SWGFS 。 SWGFS基于Lustre文件系统 , 主要由3个部分组成:元数据服务(metadataservice , MDS)、对象存储服务(OSS)和客户端 。 SWGFS系统架构如图6所示 。
【光一样的少年|向大数据异构系统的神威并行存储系统】SWGFS最主要的设计目标是数据的高可用性 , 为此系统采用了多网络通路冗余、流量控制、数据冗余等高可用技术 。 然而在支持大数据应用的过程中 , SWGFS在多个方面具有明显的局限性:一是在高性能计算中 , 文件系统客户端仅需提供POSIX语义支持 , 但在大数据应用中 , 由于POSIX接口的一致性要求 , 增加了很多分布锁协议网络传输和处理开销 , 这对于大数据应用而言是不必要的 , 严重拖慢了大数据应用的处理速度;二是SWGFS的数据冗余机制与大数据框架下的数据冗余机制不匹配 , 两者有冲突和重复;三是元数据服务节点配置的内存大 , 文件元数据信息完全可以加载到内存 , 通过多元数据服务节点的分布式缓存减少磁盘访问 。
为此 , 系统对SWGFS的设计进行了改进:一是在对象存储服务的基础上增加面向大数据应用的无锁大文件访问接口 , 以提升对大数据应用的支持 , 避免通用POSIX文件接口的低效性;二是提供大块数据访问和对象存储访问接口 , 优化数据冗余方式;三是构建基于内存的元数据缓存 , 并设计日志和刷新机制 , 以保证元数据的高速访问和一致性 。
4结束语本文对“神威·太湖之光”的并行存储系统进行了介绍 , 并从高性能计算应用和大数据应用两个方面对存储系统的需求和面临的挑战进行了分析 , 并且对系统架构设计进行了改进、对I/O转发服务的I/O调度进行了优化 , 对分布式缓存和系统高可用措施进行了改进 , 使得并行存储系统可以很好地应对当前高性能计算和大数据应用的挑战 。 在当前的工作中 , 重点是提高应用程序I/O性能和系统的可用性 。 在未来的工作中 , 笔者计划开展针对多种I/O模式的研究 , 以更好地支持大数据应用 。
《大数据(BigDataResearch , BDR)》双月刊是由中华人民共和国工业和信息化部主管 , 人民邮电出版社主办 , 中国计算机学会大数据专家委员会学术指导 , 北京信通传媒有限责任公司出版的期刊 , 已成功入选中文科技核心期刊、中国计算机学会会刊、中国计算机学会推荐中文科技期刊 , 并被评为2018年国家哲学社会科学文献中心学术期刊数据库“综合性人文社会科学”学科最受欢迎期刊 。
关注《大数据》期刊微信公众号 , 获取更多内容


推荐阅读