分布式海量云存储平台的技术创新及应用

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介:

随着大数据、云计算、物联网等新技术的发展,电信、互联网、政企等行业应用日新月异,数据呈爆炸式增长并成为战略性资源。据思科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编解码冗余颗粒度。两种冗余方式可根据不同应用场景下对存储可靠性、性能和成本的需要进行灵活配置。

创新的海量小文件存储优化技术

ZXDFS采用在元数据层聚合、数据存储层聚合技术,成功攻克海量小文件模型(LOSF)下存储空间利用率低及访问性能低下的痛点。典型的文件大小和分布模型下,应用本创新后IOPS性能比原来提升了4倍,数据存储空间利用率提升近2倍。

根据局部相关性原理,将业务上处在同一路径下的多个的逻辑文件进行聚合,减少文件句柄的占用,降低了磁盘的碎片化且提升空间利用率;同时针对海量小文件模型(LOSF)的数据和元数据采用创新的读写缓存优化技术,将原来产生大量耗时的文件打开、磁盘随机IO、元数据读取与加载等操作转换为对缓存中聚合后的文件数据和元数据的偏移操作,大幅提升了小文件访问效率以及磁盘空间利用率。

快速部署,维护便捷

支持一键式自动化批量安装、升级和巡检,大大缩短安装、升级、巡检周期,提升系统可维护性。支持磁盘故障数据自动快速重构恢复,不需人工干预,只需定期更换坏盘,大大降低磁盘维护工作量。

应用实践

中兴分布式海量云存储平台在全球各地承载着大量的电信及政企业务应用,包括中国电信、中国移动、中国联通、央视的IPTV CDN系统,以及视频监控、媒资存储、信令检测、彩信、WAP、139邮箱、云盘、统一存储资源池等,其中中国移动南方基地存储资源池达到13.6PB容量、存储上百亿文件,实现了大规模成熟商用。

总结

中兴分布式海量云存储平台使用通用X86架构硬件,具有大容量、高性能、高扩展性和易管理等方面的突出优势,为大数据时代的社会、经济、生活提供基础技术平台支撑,实现了无所不在的数据存储服务。

本文转自d1net(转载)

相关文章
|
9月前
|
负载均衡 测试技术 调度
大模型分布式推理:张量并行与流水线并行技术
本文深入探讨大语言模型分布式推理的核心技术——张量并行与流水线并行。通过分析单GPU内存限制下的模型部署挑战,详细解析张量并行的矩阵分片策略、流水线并行的阶段划分机制,以及二者的混合并行架构。文章包含完整的分布式推理框架实现、通信优化策略和性能调优指南,为千亿参数大模型的分布式部署提供全面解决方案。
2550 4
|
10月前
|
消息中间件 监控 Java
Apache Kafka 分布式流处理平台技术详解与实践指南
本文档全面介绍 Apache Kafka 分布式流处理平台的核心概念、架构设计和实践应用。作为高吞吐量、低延迟的分布式消息系统,Kafka 已成为现代数据管道和流处理应用的事实标准。本文将深入探讨其生产者-消费者模型、主题分区机制、副本复制、流处理API等核心机制,帮助开发者构建可靠、可扩展的实时数据流处理系统。
849 4
|
9月前
|
机器学习/深度学习 监控 PyTorch
68_分布式训练技术:DDP与Horovod
随着大型语言模型(LLM)规模的不断扩大,从早期的BERT(数亿参数)到如今的GPT-4(万亿级参数),单卡训练已经成为不可能完成的任务。分布式训练技术应运而生,成为大模型开发的核心基础设施。2025年,分布式训练技术已经发展到相当成熟的阶段,各种优化策略和框架不断涌现,为大模型训练提供了强大的支持。
1077 0
|
10月前
|
JSON 监控 Java
Elasticsearch 分布式搜索与分析引擎技术详解与实践指南
本文档全面介绍 Elasticsearch 分布式搜索与分析引擎的核心概念、架构设计和实践应用。作为基于 Lucene 的分布式搜索引擎,Elasticsearch 提供了近实时的搜索能力、强大的数据分析功能和可扩展的分布式架构。本文将深入探讨其索引机制、查询 DSL、集群管理、性能优化以及与各种应用场景的集成,帮助开发者构建高性能的搜索和分析系统。
617 0
|
安全 JavaScript 前端开发
HarmonyOS NEXT~HarmonyOS 语言仓颉:下一代分布式开发语言的技术解析与应用实践
HarmonyOS语言仓颉是华为专为HarmonyOS生态系统设计的新型编程语言,旨在解决分布式环境下的开发挑战。它以“编码创造”为理念,具备分布式原生、高性能与高效率、安全可靠三大核心特性。仓颉语言通过内置分布式能力简化跨设备开发,提供统一的编程模型和开发体验。文章从语言基础、关键特性、开发实践及未来展望四个方面剖析其技术优势,助力开发者掌握这一新兴工具,构建全场景分布式应用。
1149 35
|
分布式计算 Java 大数据
Java 大视界 —— 基于 Java 的大数据分布式计算在气象数据处理与天气预报中的应用进展(176)
本文围绕基于 Java 的大数据分布式计算在气象数据处理与天气预报中的应用展开,剖析行业现状与挑战,阐释技术原理,介绍其在数据处理及天气预报中的具体应用,并结合实际案例展示实施效果。
|
运维 监控 Linux
WGCLOUD运维平台的分布式计划任务功能介绍
WGCLOUD是一款免费开源的运维监控平台,支持主机与服务器性能监控,具备实时告警和自愈功能。本文重点介绍其计划任务功能模块,可统一管理Linux和Windows主机的定时任务。相比手动配置crontab或Windows任务计划,WGCLOUD提供直观界面,通过添加cron表达式、执行指令或脚本并选择主机,即可轻松完成任务设置,大幅提升多主机任务管理效率。
Java 大视界 -- 基于 Java 的大数据分布式存储在视频监控数据管理中的应用优化(170)
本文围绕基于 Java 的大数据分布式存储在视频监控数据管理中的应用展开,分析管理现状与挑战,阐述技术应用,结合案例和代码给出实操方案。
|
11月前
|
存储 负载均衡 NoSQL
【赵渝强老师】Redis Cluster分布式集群
Redis Cluster是Redis的分布式存储解决方案,通过哈希槽(slot)实现数据分片,支持水平扩展,具备高可用性和负载均衡能力,适用于大规模数据场景。
748 2
|
11月前
|
存储 缓存 NoSQL
【📕分布式锁通关指南 12】源码剖析redisson如何利用Redis数据结构实现Semaphore和CountDownLatch
本文解析 Redisson 如何通过 Redis 实现分布式信号量(RSemaphore)与倒数闩(RCountDownLatch),利用 Lua 脚本与原子操作保障分布式环境下的同步控制,帮助开发者更好地理解其原理与应用。
806 6

热门文章

最新文章