Qumulo体系结构白皮书

640?wx_fmt=png

Qumulo在2017年入围Gartner魔力象限,仅两年就成为了该领域的领导者。

640?wx_fmt=jpeg

Qumulo的创始人一共3人,他们都是Isilon的大牛。Isilon一共有62项专利,他们三人就拥有55项。

张克诚,本篇文章的译者,原Panasas Technical and Business Development Manager。在HPC存储领域里,Panasas不可小觑。

经过译者授权,微信公众号“乐生活爱IT”首次转发这篇满是干货的译文。另外前面有些信息和图片,来自西瓜哥 高端存储知识的《2年就成为Gartner魔力象限领导者的Qumulo有啥特别?》

---译文开始---

Qumulo FileFabric (QF2) 支持本地部署和跨云部署,百亿级文件支持,极高扩充能力的文件存储。

 

 

640?wx_fmt=png

 

QF2由软件和服务两部分组成,可根据预算灵活取舍。

 

640?wx_fmt=png

 

核心是运行在QF2集群中的节点上的软件,包括强大的实时分析、容量限额、连续复制和快照。而其他的存储系统仅仅包含集成的实时文件元数据聚合。

 

QF2文件系统构建在Qumulo Scalable Block Store (SBS)之上,SBS采用海量扩充分布式数据库原理并且面向文件数据优化。SBSQF2的数据块层,提供简单部署和极度可靠的底部支撑。因此SBS也给了文件系统海量扩充能力、优化的性能及数据保护。

 

另外,QF2还提供基于云的监控、趋势分析作为可选模块,与之伴随的还有综合用户支撑模块。云监控包括类似磁盘故障这样事故的前瞻探测以便事件真正发生前解决故障。对过去使用过程趋势分析的访问可以帮助用户节省成本优化存储使用流程。

 

核心软件可以运行在公有云上,也可以运行在数据中心中工业标准硬件平台上,Qumulo当前运行在自己的QC系列白牌机服务器上,也运行在HPE阿波罗服务器上。

 

事实上,QF2与硬件无关,可以期待更多的OEM支撑。

 

QF2纯软件方式意味着对昂贵、私有硬件如NVRAMInfiniBand交换机、私有闪存等没有依赖,取而代之的是QF2依靠HDDSSD的标准firmwareQF2中的SSDHDD的组合使用实现了冷热数据自动分层,因此,QF2实现了在二级存储的价格上提供闪存的性能。

 

QF2也可以在公有云上创建(当前是AWS),基于云的QF2集群中的节点运行本地部署相同的软件,不同于其他面向云的文件存储系统,QF2运行在公有云上也没有性能和容量的硬限制。两者都可以借助增加节点(计算实例和块存储)来实现增加。

 

在公有云上运行时,QF2使用云的块存储的方式与SSD/HDD相结合的本地部署方式类似,QF2用低延迟块存储做高延迟块存储的Cache。

 

在每一个QF2集群的节点上,核心软件在Linux的用户态运行,内核模式是仅仅用于与特定硬件相关的设备驱动程序。

 

用户态运行也意味着可以部署自己的重要协议,如:SMBNFSLDAPAD。所以NFS是以系统服务的方式运行并且有自己的用户、组的概念,分离于借以运行的底部的操作系统。

 

用户态运行也改善了可靠性。作为独立的用户态进程,QF2与其他系统部件隔离,避免了其他部件引起的内存故障带来的影响,并且QF2开发的过程采用了高级内存校验工具,实现了内存相关的代码故障在软件正式发放前的前期探测。借助于软件升级双分割策略,Qumulo可以自动的升级操作系统和核心软件以保证快速和安全可靠。你可以简单的重新启动QF2而不必重启OS、节点或集群。

 

海量可扩充的文件和目录

 

当有海量文件时,目录结构和文件属性本身变成了大数据,直接结果是像treewalks这样的顺序处理(传统存储的基础)变得计算上不在可行。相反,查询一个大的文件系统并且管理它就需要并行和分布式算法的新的方法。

 

QF2具备这个独特的能力。设计部署的原理类似于现代、大规模、分布式数据库。带来的直接效果是文件系统具有无可匹敌的扩充特性。相比照的是传统存储没有具备这个扩充能力。

 

640?wx_fmt=png

 

文件系统位于虚拟化的块层SBS之上。在QF2中,耗时的保护、重构、以及判定SBS层中哪个数据在哪个磁盘上的工作位于文件系统之下。

 

SBS中虚拟化的被保护的块的功能是本文件系统的一个重大优势。传统存储系统没有SBS,保护实现在文件层面上,或者混合的RAID组上,那样会带来严重的问题,比如,很长的重构时间、小文件的低效存储、以及较大的磁盘布局管理开销。没有虚拟化的块层,传统存储系统也必须在元数据层实施数据保护,这个附加的复杂度限制了这些系统优化分布式处理这些目录数据结构和元数据的能力。

 

对于文件和目录的扩充能力,QF2文件系统强化使用了被称为B-trees的索引数据架构。B-trees特别适用于读写海量数据块的系统,因为他们属于“浅”数据结构,在数据量增加时最小化了每个操作的IO请求的数量。以B-trees为基础,当数据量增加时读或者插入数据块的运算开销增长非常缓慢。所以,B-trees对文件系统和大型数据库索引来说非常完美。

 

在QF2中,B-trees是基于块的,每个块4096字节。以下是B-tree的结构。

640?wx_fmt=png

 

每个4K块可能含有指针指向其他的4K块。该例的分叉因子为3,分叉因

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值