通信世界网消息(CWW)随着大数据、云计算、物联网等新技术的发展,电信、互联网、政企等行业应用日新月异,数据呈爆炸式增长并成为战略性资源。据思科VNI预测,全球数据量每年约30%的速度递增,2020年达到惊人的40ZB。
传统存储面临的挑战
面对海量数据,传统存储面临诸多挑战,主要体现在以下方面。
成本高:传统存储硬件使用专有设备,通用性差,设备投资加上后期维护、升级扩容的成本非常高。
性能低:单节点I/O性能瓶颈无法逾越,容量和性能都不易扩展,难以支撑海量数据的高并发低时延场景。
可扩展性差:无法实现快速部署和弹性扩展。
此外,信息安全问题触及到国家和企业的安全命脉,信息安全已经上升为国家战略,IT系统核心技术自主研发的需求十分迫切。
中兴海量云存储平台及其优势
针对传统存储和业界现有存储技术的短板,依托中兴通讯30多年的技术积累,我们研制了分布式海量云存储平台ZXDFS,满足大数据时代的数据存储需求和业务发展需要。总体架构如图1所示,在架构上分为三个层次:硬件节点层、服务端和客户端,其中,服务端和客户端属于软件平台层。
图1 海量云存储平台架构图
中兴ZXDFS在架构、功能和性能等方面进行了大量创新,形成了独特的优势。
去中心化设计,大容量高可靠架构
元数据是分布式文件系统的核心,可靠性和一致性是基本要求,性能和容量是核心的竞争力。业界大部分分布式文件系统都要配置单独的元数据服务器,这样就造成了元数据的瓶颈和可支持文件数量的限制。如图2所示,ZXDFS采用全Active的Share nothing方式去中心化设计,元数据和数据分布在各个节点,每个节点都是元数据服务器同时也是数据服务器。访问文件数据时首先通过一致性Hash算法找到文件所归属的元数据服务器,然后通过元数据服务器获取文件的数据分布情况,再去访问数据块所在的节点完成数据操作。
这样,ZXDFS就提供了灵活强大的扩展能力,单域可支持256个节点,单节点可支持100亿文件。同时有效地消除了元数据访问热点,避免了系统资源争用。
在出现节点故障时,系统能够自动识别故障节点,自动恢复故障节点涉及的数据和元数据,使得单节点的故障不会影响到系统整体的对外服务,完全不影响业务的连续性。
图2 高可靠高扩展的元数据架构
横向伸缩,在线动态扩容
云存储作为后端的数据集中存储平台,必须具备动态伸缩的能力,这样才能满足前端应用系统不断扩展对存储伸缩的需求。ZXDFS采用分域架构实现磁盘/节点/域三个层级的容量和性能的横向(SCALE-OUT)线性扩展,克服单个节点元数据及数据服务造成的访问热点、性能瓶颈以及扩展性受限问题,提升系统整体IO并发性能。
采用全局统一命名空间保证每个存储服务节点具有相同的数据存储能力和系统管理能力,提供海量大并发的读写服务能力。ZXDFS的动态扩展能力体现在性能上的动态扩展和存储空间上的动态扩展两方面,并且这种动态扩展不影响前端应用系统的正常运行,也不增加整个存储云在管理、监控和使用上的复杂性。
高性能,高效数据冗余技术
ZXDFS可根据用户业务需求,自定义热点识别和热点迁移策略,实现冷、热数据在多级存储池之间的双向自动迁移。采用创新的分级收益算法,定期统计文件的访问收益,通过文件大小、文件平均访问间隔、文件访问次数以及文件访问字节数,计算出升级成本和收益的比值,对比值小于升级阈值的文件加入到升级队列中并进行排序。
迁移周期内,根据文件的历史访问收益以及当前访问收益计算文件分级收益,实现数据自动分级迁移。通过配置分级收益算法系数 和收益周期T,使得分级存储或缓存系统的一级存储池命中率保持在80%以上,一级存储池利用率保持在70%以下,内部数据迁移流量与外部数据读写流量比例不超过20%。
ZXDFS采用优化的删码算法和基于Intel CPU SSE指令集,减少CPU占用并大幅提升计算性能。通过无缝融合用户态NFS服务,简化了传统NFS访问模式中的VFS层和FUSE层,单次数据访问减少了两次用户态和内核态的切换开销,大幅提升了NFS接口数据读写效率。利用 DMA 引擎进行数据加速,减少了4次上下文切换所带来的内存拷贝和CPU开销,当传输大量视频数据时,使用该加速技术后性能提升非常显著。
ZXDFS云存储平台支持副本和EC两种数据冗余方式。副本模式下,分布式海量云存储平台以一定大小对文件进行切分并将切分的文件块以多个完全副本方式跨磁盘、跨节点存储。EC模式支持N+M<=16范围内任意的EC比例配置,支持磁盘和存储节点两个不同层次的EC编解码冗余颗粒度。两种冗余方式可根据不同应用场景下对存储可靠性、性能和成本的需要进行灵活配置。
创新的海量小文件存储优化技术