一、扩容之困:非结构化数据爆炸下的传统架构局限
过去两年间,业务系统中的非结构化数据量从三百TB急剧增长到接近三点五PB。这些数据来源多样——用户上传的证件照片、系统产生的监控录像、应用生成的日志归档、第三方交换的数据文件等。每种数据都有自己的生命周期和访问特征,但它们共享一个困境:传统存储架构难以高效应对持续扩容的需求。
第一个痛点是资源孤岛现象严重。每个业务团队在早期各自申请独立的存储集群,互不共享。A业务的对象存储集群容量使用率达到百分之八十五,频繁触发扩容告警;而B业务的集群由于业务调整,实际占用不到百分之三十,大量存储空间被闲置却无法挪用。运维团队在多个管理控制台之间反复切换,无法形成统一的资源视图。更棘手的是,某些集群扩容时需要采购特定型号的设备,采购周期动辄数周,而业务侧的写入压力每日都在增加。
第二个痛点是扩容操作伴随高风险。传统方式下,扩容往往意味着需要停止写入、重新划分数据分布、迁移部分分片。在整个过程中,一旦发生网络抖动或元数据不一致,可能导致部分数据暂时不可用。尤其是在存储利用率逼近容量上限时,剩余空间碎片化严重,新写入数据的分布效率下降,进一步加剧了性能抖动。运维团队不得不长期维持较低的利用率阈值来换取稳定性,但这反过来又放大了资源浪费。
第三个痛点是跨地域数据调度能力缺失。业务系统部署在多个数据中心,每个中心独立建设存储集群。当一个中心的存储压力过大时,无法将冷数据或备份数据调度到其他中心闲置的存储资源上。数据只能固化在写入时所在的集群中,无法跟随访问热点的变化而流动。这种僵化不仅影响资源效率,也制约了多活架构的演进。
这些困境指向一个明确的方向:需要从“集群独占”转向“资源池化”,从“被动扩容”转向“统筹调配”。
二、池化架构:天翼云存储作为统一底座的设计思路
解决上述问题的核心思路是打破业务与存储资源之间的固定绑定关系,构建一个逻辑统一、物理分散的全域存储资源池。天翼云存储在这个架构中扮演了两个关键角色:一是作为核心的数据存储底座,承担大部分非结构化数据的持久化存放;二是作为跨地域资源调度的纽带,通过其统一命名空间能力实现多数据中心的数据协同。
整个池化架构分为三个层次。最底层是物理资源层,由部署在不同机房的存储节点构成,包括自建的高性能存储集群和天翼云存储的各类存储桶。这一层保持物理分散,以降低单点故障的影响半径。
中间层是资源抽象与调度层,这是整个方案的核心。该层通过一个统一的存储网关,将所有底层存储资源注册到同一个资源池中,并为每个存储节点维护实时容量、性能水位、健康状态以及网络延迟等多维元数据。调度层向上层业务暴露统一的API接口,业务方不再感知数据具体存放在哪个物理集群,只需指定数据分类、预期访问频率和容灾等级等策略参数。
最上层是业务接入层,各业务系统通过标准协议挂载该存储网关,原有的数据写入路径只需要少量改造。接入层还承担数据源的打通工作,对于历史遗留的分散存储位置,通过后台迁移任务将存量数据逐步纳入资源池管理。
选择天翼云存储作为关键底座,基于其在扩容灵活性、跨域复制能力和成本控制方面的综合优势。天翼云存储支持按实际使用量计费,无需提前预留大量容量,这恰好契合非结构化数据持续增长但增长曲线难以精确预测的场景。同时其内建的多区域互联能力使得不同数据中心的存储节点可以纳入同一个命名空间,为全域统筹调配提供了基础设施层面的支持。
三、部署方案打磨:面向持续扩容的关键设计
在资源池化架构确定后,部署方案的具体打磨集中在三个关键设计上:弹性切片策略、冷热分层调度以及无中断扩容机制。
弹性切片策略解决了数据分布不均的问题。在传统固定分片方式下,一旦分片数量设定后就难以更改,当某个分片的数据量远超预期时,该分片所在的存储节点会成为性能瓶颈。我们设计了一种动态切片机制:每个逻辑桶在创建时只分配较小的初始分片数,随着数据量增长,系统自动对热点分片进行分裂操作。分裂过程中,原有分片中的一部分数据按哈希范围重新分配到新分片上,整个过程对业务写入无阻塞。天翼云存储底层支持无缝的分片扩展,上层调度器只需要更新元数据路由表即可完成。这使得扩容不再是预先规划大容量,而是随数据增长逐步消耗资源,极大提升了资源利用率。
冷热分层调度降低了整体扩容压力。并非所有非结构化数据都需要存放在高性能介质上。调度层在接收写入请求时,依据业务传入的数据热度标签,自动选择合适的目标层级。热数据优先落在就近数据中心的高性能存储上,保证读写性能;温数据直接存入天翼云标准存储;冷数据则进入归档存储。当数据热度发生变化时——例如一个频繁访问的报表文件在三个月后几乎无人问津——调度层自动触发跨层迁移,将数据从高性能层下沉到标准存储甚至归档层。这套机制使得真正需要频繁扩容的只有热数据层,而热数据层在全量数据中的占比不到百分之十五,大幅降低了扩容的频率和成本。
无中断扩容机制是保证业务连续性的底线。在传统存储集群中,添加新节点往往需要触发数据再平衡,期间部分分片会暂时处于只读状态。我们在调度层设计了两阶段扩容流程。第一阶段是资源注册,新存储节点上线后以“待命”状态加入资源池,不立即承载数据写入。第二阶段是权重调整,调度器逐步提高新节点在路由权重中的比例,新写入的数据按新权重分布到包括新节点在内的所有可用节点上。旧数据的再平衡则在后台以极低优先级进行,并且可以设置带宽上限,避免影响在线业务。这种“写入优先、历史延后”的策略保证了扩容操作期间业务完全无感知。
四、数据源打通与全域统筹调配实践
池化架构的价值最终体现在数据源打通后的全域统筹调配能力上。我们分三个阶段完成了这项工作。
第一阶段是存量数据源的纳管。业务系统中存在多个历史遗留的文件存储位置,包括本地磁盘目录、NFS共享卷以及不同时期采购的对象存储集群。我们为每个数据源部署了一个轻量级的接入代理,该代理负责将本地存储空间注册到统一的资源池中,并向调度层报告容量与健康信息。原有的业务代码无需修改,仍按原有路径写入,但读取路径经过调度层处理后可实现跨源路由。这一兼容设计大大降低了迁移风险。
第二阶段是跨业务资源共享。当A业务的存储集群容量告急时,运维人员通过调度层控制台将B业务的闲置存储节点临时划入共享资源池,并设置容量配额和优先级策略。调度层自动将A业务的新增冷数据路由到这部分共享资源上,而A业务的热数据仍保留在原集群以保证性能。当B业务自身存储需求回升时,调度层自动停止对共享资源的写入,并在一段冷却期后逐步回收资源。整个过程无需人工干预数据搬迁,完全依赖调度层的动态路由能力。
第三阶段是实现多数据中心间的数据流动。依托天翼云存储的跨域复制能力,我们将部署在不同地域的数据中心存储资源纳入同一个资源池。调度层为每个数据副本维护位置信息,并依据访问来源自动选择最近的可用副本。当某个数据中心的总存储压力超过阈值时,调度层将其中访问频率较低的冷数据异步复制到其他数据中心的天翼云存储桶中,然后在本地区域释放空间。从业务视角看,数据仍然通过原来的接口访问,调度层自动处理副本位置的切换。这种透明的数据流动使得各数据中心的存储资源可以动态平衡,避免了一地告急而另一地闲置的局面。
五、成效评估与演进方向
方案全量上线并稳定运行四个月后,我们从资源利用率、扩容效率和成本控制三个维度进行了评估。
资源利用率方面,全域存储资源池的整体平均利用率从改造前的百分之四十一提升到百分之七十八。资源孤岛基本消除,闲置容量可以被随时调拨给真正需要的业务。即便在利用率达到百分之七十五以上时,由于调度层的动态路由和分层机制,性能敏感型业务仍未出现明显抖动。
扩容效率方面,新增存储容量的上线时间从平均两周缩短到四个小时。新采购或新开通的存储节点完成基础配置后,通过调度层的注册流程即可加入资源池并开始承接写入。后台的数据再平衡任务不再阻塞扩容操作,业务的扩容诉求可以在当天内得到响应。
成本控制方面,由于资源利用率翻倍,相当于在不新增硬件采购的情况下获得了接近翻倍的有效容量。同时冷热分层调度使大量低频数据自动沉降到天翼云归档存储,进一步拉低了单位数据的平均存储成本。综合测算,同等数据规模下的年度存储总成本下降了约百分之四十三。
展望未来演进,计划在三个方面继续深化。一是引入更智能的调度算法,不再依赖静态的阈值策略,而是通过分析业务写入模式的历史数据,预测各业务的容量增长曲线,主动进行资源预留或弹性伸缩。二是将存储资源池化与数据处理流程结合,允许在数据存放位置就地执行轻量级的预处理任务,减少数据搬移带来的网络开销。三是进一步扩大天翼云存储的覆盖范围,将边缘节点的存储资源也纳入统一池化体系,为边缘计算场景提供一致的存储体验。
非结构化数据的浪潮远未结束,存储架构必须从被动响应扩容需求转向主动、智能、弹性的资源调配。池化不是一项技术选型,而是一种架构思维的转变——从管理机器到管理容量,从关注设备到关注数据本身。