前言
GooseFS是由腾讯云推出的一款分布式缓存计划,次要针对包含须要缓存减速的数据湖业务场景,提供基于对象存储COS服务的近计算端数据减速层。
GooseFS 基于开源大数据缓存计划 Alluxio 进行设计和研发。相较于开源计划,GooseFS 提供了更多要害个性,稳定性和性能优化;同时深度交融了腾讯云生态,对接了腾讯云TKE、EMR等计算服务,为用户提供开箱即用的能力。
缓存减速和数据本地化GooseFS提供的重要能力之一。
- GooseFS 能够与计算节点混合部署进步数据本地性,利用高速缓存性能解决存储性能问题,进步读写对象存储 COS 文件的效率。
- GooseFS 能够提供近计算端的分布式共享缓存,下层计算利用能够通明地、高效地从远端存储将须要频繁拜访的热数据缓存到近计算端,减速数据 I/O 性能。
- GooseFS 提供了感知元数据 Table 的能力,可能减速大数据场景下列出文件列表( List ),重命名文件( Rename )等元数据操作的性能。此外,业务能够按需抉择HDD, SSD,NVME SSD 等不同的存储介质,均衡业务老本和数据拜访性能。
本文介绍了GooseFS读写元数据时的体现,并与HDFS进行比照;同时也测试了在混合读写状况下GooseFS在性能体现上的稳定性。
01 测试体现
咱们应用NNBench进行测试。NNBench是HDFS官网自带的用于测试NameNode性能的工具。因为它应用的是规范的FileSystem接口,因而能够应用它来测试GooseFS服务端的性能。在测试计划上,咱们在GooseFS和 HDFS 上创立雷同的数据集,察看TPS值,比照GooseFS性能体现状况。
咱们应用了1台EMR标准型S2机器(CPU:8核,内存:32GB,高效云盘:100G x 1)作为GooseFS集群的Master节点,3台EMR标准型S5机器(CPU:16核,内存:64GB,高效云盘:100G x 5)作为Worker节点,同时将GooseFS集群缓存策略设置为wPolicy=MUST_CACHE,rPolicy=CACHE。
1. Write测试
大数据场景中须要频繁创立文件,咱们首先比拟了写入文件的性能,因为本次测试次要目标是验证元数据性能体现,因而文件大小抉择了0字节。测试后果如下所示:
能够看到,在集群的环境配置,maps等都雷同的状况下:
(1)GooseFS在加载元数据的比hdfs性能至多晋升20%。
(2)数据量减少的时候GooseFS解决数据等性能晋升更显著。
这个次要是因为GooseFS采纳文件粒度锁,能够并发创立文件。而HDFS是全局锁,相当于程序做创立操作。因而写申请QPS减少的时候,GooseFS性能晋升更显著。
2. List测试
Write测试次要测试高并发下元数据服务单点写入、单点查问的性能。然而,文件列表导出(ls/ls -R)操作、文件大小统计(du/count)操作也是用户应用频率较高的操作,这些命令的执行工夫,反馈了元数据服务遍历操作的执行效率。在测试计划上,为了保障HDFS和GooseFS测试数据的一致性,咱们采纳雷同的数据集,执行雷同的操作,测试GooseFS和HDFS元数据服务遍历操作的执行效率。
数据集分两个场景:
(1)多层级数据:50w数据,目录层级4层。
(2)单层级数据:单个目录下10w文件。
相干测试后果体现如下:
能够看到,GooseFS减速数据I/O性能。提供了感知元数据的能力,可能减速大数据场景下列出文件列表List等元数据操作的性能。尤其在多层级的数据中性能减速更加显著。
3、SliveTest测试
SliveTest位于hadoop的test包中,代码构造清晰,其次要性能是通过大量map制作多种rpc申请,检测Namenode的性能。咱们能够设定map数量,每个map发动的rpc申请次数,每一种rpc操作占总操作的百分比,以及读写数据量、block size等配置。测试master混合拜访状况下各类申请的qps。
在测试计划上,设置RPC申请(读:60%,写:40%)模仿混合拜访下,HDFS和GooseFS解决数据的性能。咱们将RPC设置为:append 10% create 10% delete 10% mkdir 5% rename 5% read 30% ls 30%。
相干测试后果体现如下:
能够看到,Master在混合拜访状况下,GooseFS整体性能体现优于HDFS。
基于下面几个测试,GooseFS采纳文件粒度锁及list开启了并发优化,在SliveTest这种混合读写(多读少写)的场景中,GooseFS解决事物的能力显著优于HDFS。
02 总结
GooseFS提供了可预测的资源划分和资源应用,使得系统管理员能够对外提供稳固的性能保障。此外,GooseFS能够给共享存储资源的计算集群带来显著的性能收益。
GooseFS提供近计算端的分布式共享缓存,下层计算利用能够通明地、高效地从远端存储将须要频繁拜访的热数据缓存到近计算端,减速数据 I/O 性能。
对于更多GooseFS请返回:https://cloud.tencent.com/doc...