首页 > 行业资讯 > 城商行10亿级以上影像数据平台基于分布式对象存储方案架构设计及实践

城商行10亿级以上影像数据平台基于分布式对象存储方案架构设计及实践

时间:2023-11-24 来源: 浏览:

城商行10亿级以上影像数据平台基于分布式对象存储方案架构设计及实践

原创 twt社区 twt企业IT社区
twt企业IT社区

talkwithtrend

talkwithtrend.com社区(即twt社区)官方公众号,持续发布优秀社区原创内容。内容深度服务企业内各方向的架构师、运维主管、开发和运维工程师等IT专业岗位人群,让您时刻和国内企业IT同行保持信息同步。

收录于合集
【摘要】 近年来,银行等金融行业的业务类型逐步从传统信息金融向互联网金融、智能金融转型,业务线上化、移动化和场景化的业务占比越来越高,非结构化数据在进行快速增长。结合实际业务场景和技术调研,最终全行影像平台场景采用了分布式对象存储。本文主要对现有全行影像平台系统所存在的问题进行了分析,简述了分布式存储的技术选型原则、现场POC测试情况分析,以及生产环境架构方案设计和运维经验分享。

【作者】dragon1220 (社区ID) 就职于某银行金融科技部,存储工程师。主要负责存储实施方案设计及存储设备管理。比较擅长集中式存储、分布式存储整体架构方案制定,存储容灾建设等方面。

一、背景介绍

近年来,金融科技从传统信息金融向互联网金融转型,到逐步向智能金融进行转型,5G、云计算、大数据、AI等新技术、新应用的蓬勃发展,各金融单位业务线上化、移动化和场景化的业务占比越来越高,银行等金融行业内部的非结构化数据在进行快速增长,如视频、语音、图片、文件等。

在2020年之前,我行的存储架构以集中式存储为主,承载的业务类型为虚拟化平台、集中式数据库、非结构化数据存放、共享文件等场景。针对我行某些业务场景,原来的存储不具备灵活扩展能力、不适用保存海量数据、数据接口类型单一等问题逐渐凸显了出来。经过对业务类型的分析,我行业务需求主要集中在对现有影像平台系统改造。

在2020年时,我行全行影像平台系统存放的非结构化文件数量已经超过十二亿,逐渐形成了海量非结构化数据。我行使用的集中式存储保存文件上限为20亿,在应对这种海量非结构化数据时,已经接近了性能及使用瓶颈。同时,业务文件的检索效率也会随着文件数量的增加而降低。

二、设备选型

经过对上述场景业务需求的分析,这类系统对存储的需求均为IO读写稳定,并发流量大,可靠性高,易于扩展,适用于保存海量非结构化数据。结合实际业务场景,全行影像平台场景我们计划采用分布式对象存储。

为了验证方案可行性,我行于2020年对7家业内主流分布式存储厂商进行了现场POC测试,测试内容主要包括存储设备的功能性、稳定性、性能、S3接口兼容性、大数据接口兼容性、技术能力等测试场景。具体的测试场景详见详见如下示意图。

在POC测试正式开始之前,我们提前做了如下几个准备:

1、由于分布式存储的架构特点及数据写入逻辑,为真实模拟验证存储在正常承载业务后的性能及稳定性表现,进行稳定性及性能测试前,我们根据不同硬件厂商提供POC设备的容量,提前对其导入了测试数据,数据量在4亿至6.5亿个文件,使测试使用bucket使用率均在65%以上,即处在了一个较高的使用水位上。文件大小为共有9类,在4KB至10MB之间。

2、为真实模拟验证存储在正常承载业务后的扩展能力,在进行稳定性测试、性能测试、存储节点在线增加或移除测试时,各个硬件厂商均需要对测试使用的bucket打开双中心同步复制,并施加高IO压力。

3、为真实模拟验证存储在正常承载业务后对存储在硬件故障发生时稳定性和可靠性,在进行稳定性测试、存储节点在线增加或移除测试时,各个硬件厂商均需要对测试的存储施加高IO压力,要求存储整体压力负载压力不低于60%。

经过对7家存储设备厂商的现场POC测试,结合业务实际需求,经过对测试结果的分析,华为分布式存储设备在我们测试中比较关注的几个测试项中,测试结果较为理想,主要为如下几个方面。

1、S3接口兼容性测试。在S3对象存储接口测试中,华为存储可通过原生S3 API接口或华为提供的对象存储接口示例完成与现有业务测试场景的对接。

2、大数据组件支持能力测试。在HDFS接口测试中,华为存储在大数据组件spark、hive、yarn、hudi等的测试场景中各测试项均测试通过。

3、存储集群性能测试。在性能测试中,华为存储整体的性能结果为最优。尤其是在小文件混合(64KB及以下场景)读写测试中,华为存储的优势尤为明显。

4、集群可靠性测试。高可用性测试中,在硬盘故障、存储节点故障、交换机故障、单条网络链路等故障场景中,华为存储整体的测试结果为最优。尤其是在存储集群进行存储节点扩容时,单个存储节点发生故障的场景,在故障发生时,华为存储集群的IO读写虽短时间内出现了抖动,但并未中断,随即恢复正常,后续并未出现性能下降的情况。

5、集群设备芯片兼容性。华为分布式存储同一集群可支持不同型号和类型的芯片混合部署,方便后续进行的设备扩容升级及国产化改造。

三、 方案规划及经验分享

基于POC测试结果及实际业务需求,我们最终选定了使用华为OceanStor Pacific分布式存储来搭建我行全行影像平台及数据技术中台的数据底座。在进行方案设计及配置选型时,整体的设计方案和思路如下:

针对全行影像平台,由于其为我行重要应用系统,在进行方案设计时,我们采用了双中心冗余架构,即在生产中心及同城中心分别搭建了一套8节点的X86架构分布式存储集群,EC纠删码等级为6+2,启用存储协议为S3对象。其中生产中心存储集群做为服务端对外提供业务,同城中心存储集群做为备份端使用。

近年来,我们对全行影像平台使用的生产及同城2套华为分布式存储集群进行了扩容,2套存储集群各扩容了2个和原有存储节点不同型号的X86芯片存储节点。在整个扩容操作中,业务层无感知。

这两套存储集群自2021年下半年投产至今,运行稳定,性能表现情况良好。经过这2年来对存储设备的规划及日常的维护操作,我有如下几点经验总结如下,仅供大家参考。

在应用系统改造层面:

由于全行影像平台为生产正在运行的应用系统,且历史数据量较大。为了适配新建的分布式对象存储集群,全行影像平台应用做了如下改造。

1、新业务数据的写入,落入新建分布式对象存储集群中。

2、历史数据的读取,优先从对象存储中读取;若未读取到,则去原存储中进行读取。

3、新配置4台数据迁移服务器,在业务闲时逐条将原存储中数据迁移至新建分布式对象存储集群,并同步更新数据库中保存的文件路径。整个迁移时长近5个月,共计完成了大小近150TB、超12亿个文件的数据迁移工作。

4、在数据迁移时,对数据量较大的应用场景(例如事后监督、信贷系统等)及有明确数据保存周期的应用场景(例如冠字号系统等)创建了专用bucket,这样可通过存储bucket自身的生命周期管理策略实现部分应用数据生命周期管理的功能。

在硬件选型和实施层面:

1、存储节点配置选型

首先是数据保护方式的选择。经过实际性能测试发现,在分布式对象场景下,存储使用的副本及EC纠删码两种数据保护方式,在性能上的表现整体误差在10%以内。结合硬件设备实际的得盘使用率,建议在分布式对象场景下优先选择EC纠删码数据保护方式,这样在可兼顾到性能的同时设备也能得到充分利用,性价比相对高一些。

其次是存储规格选型。存储的硬盘故障在我们日常存储故障统计中,占比超过90%,所以存储硬盘的选择也是需要考虑到的。从数据盘大小角度来说,分布式存储绝大部分选择的HDD盘都比较大,大小从6TB,8TB至16TB,18TB等。从数据保护方式来说,虽然无论是副本或者EC纠删码均可容忍多块硬盘同时发生故障,但从新换硬盘数据重构时间来说,实际情况是更换使用率达到60%的单块6TB HDD盘时,数据重构大概需要24个小时,这其实也一定程度上增加了存储集群运行的风险。因此我个人建议是用于重要业务系统场景的尽量选择小容量HDD盘,用于备份归档场景业务系统场景的则可选择大容量HDD盘。而且从性能的角度来说,在总容量需求相同的情况下,HDD盘的大小越小,配置硬盘的数量也越多,可提供的整体集群性能也就更好一些。

2、存储实施规划

分布式存储从设备实施的角度来看,多台多硬盘服务器所构建成的一个软件定义存储资源池。与服务器不同的是,分布式存储集群需要的功能性网段会更复杂一些。例如我们在实际的实施中,分别要使用到BMC网络、管理网络、业务网络、存储集群网络以及双中心复制网络。建议在实施时,提前对网络进行规划,并为未来可能进行扩展的存储集群,预留足够的地址数量,存储集群内部交换机端口,以及设备摆放的机柜位置。在实施时,要提前确认业务数据的具体流向及负载大小。

在备份容灾方面,在进行架构规划时,我们规划的是双中心主备架构,双中心的硬件配置完全一致,主中心对外提供服务,备中心做为备份集群。在双中心数据备份层面,对生产环境分配的全量bucket均做了双中心数据的异步复制,增量数据同步间隔为5分钟。应用系统访问存储的S3接口为域名方式访问,存储域名通过行内统一的DNS服务器进行解析。这样在进行双中心存储集群主备切换时,无需在客户端更改配置,通过修改DNS服务器域名解析指向,并切换双中心存储集群的主备关系,即可实现双中心存储集群的切换。

3、存储集群的异构兼容性

在进行技术选型时,个人建议要考虑到同一个存储集群内硬件设备的异构兼容性,要确认后续扩容、新老设备替换、硬件架构更迭等方案的可操作性。

由于2020年,搭配国产芯片的分布式存储并未在金融行业大规模使用,我们在选型时还是优先选择的X86架构。但我们在当初选型时,考虑到了国产分布式存储产品是否支持不同类型CPU混合部署,是否能实现业务系统底层数据在不同存储池之间进行数据迁移迁移。我行在进行存储集群规划设计时,也已经提前为未来硬件架构的更迭及新老替换做了准备,即业务数据由非信创存储节点向信创存储节点逐步实现数据迁移做了准备。在实际验证中,我们在用的存储集群可将新增的ARM节点创建一个新的硬盘池,和原有X86节点硬盘池并列,在上层配置中使这两个硬盘池属于同一个存储池,业务数据可通过存储集群自身的数据负载均衡能力,将业务数据平均分布在两个硬盘池中。这样的话,存储集群整体对外仍是同一个业务接口,业务系统无需进行改造即可实现“一池多芯”的分布式存储架构。今年,针对我行的大数据分布式集群场景,我们通过在线扩容信创存储节点的方式,已经实现了分布式存储“一池多芯”架构,即26个X86节点+21个信创节点。

四、总结

我行采用华为分布式存储OceanStor Pacific作为数据底座,对全行影像平台系统的底层存储进行了替换。华为分布式存储用灵活的弹性扩展能力和优异的性能,为我行能够持续为用户提供优质体验奠定了坚实的基础。

1、应用更高效

针对影像平台业务场景,相比以往,我行影像平台系统底层存储升级后,网络带宽、数据处理效率、文件存取速度较以往提升了数倍,可有效地保证多个上层应用(如贴原数据、数据打标签等)同时并行处理,处理影像小文件的时间由数十毫秒降低至数毫秒,客户体验大幅提升。

2、部署更可靠

通过部署生产主站点和同城备份站点的容灾方案,存储系统可以提供全天候7*24小时的连续稳定服务。配合上每个站点的弹性EC保障,在满足6个9(99.9999%)可靠性的同时,实现不低于75%的资源利用率。

3、数据更稳定

在海量多样性的数据下,倘若下层存储底座无法提供稳定的高性能,上层应用会因性能波动造成客户使用的“卡顿”,比如柜面办理业务时的凭证采集。华为分布式存储在单桶100亿对象的数据量下,在影像平台典型业务场景中,系统始终能保持稳定不低于3.6GBps的业务带宽及22000Tps的处理效率,保障高质量的用户体验。

本文协作专家:

钟振国  某城商行 工程师

王玮 某城商行 工程师

佘昀  某城商行 工程师

ljm327 某城商行 工程师

周中秋 某城商行 工程师

本文顾问专家:

刘振国 某银行 资深专家

点击文末 阅读原文 ,可以到原文下留言交流

觉得本文有用,请 转发、点赞 或点击 “赏” ,让更多同行看到

 资料/文章推荐:

  • 某银行重要交易系统基于高端全闪信创存储两地三中心架构设计及应用实践

  • 农商行本地数据中心基于华为NAS双活实践

欢迎关注社区  “存储”技术主题  ,将会不断更新优质资料、文章。地址: https://www.talkwithtrend.com/Channel/179

下载 twt 社区客户端 APP

长按识别二维码即可下载

或到应用商店搜索“twt”

长按二维码关注公众号

*本公众号所发布内容仅代表作者观点,不代表社区立场 ;封面图片由版权图库授权使用

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐