1、商业银行大数据技术下容量管理工作研究与实践徐晟摘 要 生产系统的容量水平是系统运行质量的重要组成,也是商业银行科技运维能力的综合表达之一。这些年来随着信息技术快速开展,各行各业已高度依赖大型、复杂的软硬件系统运作。这些系统在运行过程中,每时每刻产生大量运行数据,如CPU、内存、文件系统、TPS、交易耗时、磁盘IO等。随着系统复杂度急剧增长、根底架构规模愈发庞大,面对海量的运维数据,传统基于手工统计的容量管理方式已无法满足需要,利用大数据、智能运维(AIOps)等技术,将有效促进容量管理向自动化、智能化转变。基于上述背景,文章提出商业银行基于大数据技术的容量管理工作思路和探索实践,供借鉴。关键词
2、 大数据;容量管理;研究doi : 10 . 3969 / j . issn . 1673 - 0194 . 2022. 19. 058中图分类号 F832 文献标识码 A 文章编号 1673 - 0194(2022)19- 0136- 031 容量管理定义在信息效劳领域,国际标准化组织(ISO)推出了基于IT效劳的最正确实践准那么(ISO 20000),其核心是在企业内部建立IT效劳管理体系(ITSM),开展事件管理、问题管理、配置管理、变更管理等标准化效劳流程。ITSM强调人员、流程、技术的有机结合。目前大局部企业的运维管理体系参照了ITSM的设计理念。其中,容量管理(Capacity M
3、anagement)是IT效劳管理体系中的重要组成局部。容量管理指为到达既定的IT效劳水平,对信息系统硬件、软件的IT技术组件性能和容量方面进行的管理活动。容量管理的范畴包含了对信息系统的应用程序、系统软件(操作系统、数据库、中间件)、硬件、IT根底设施资源池(虚拟机、容器、备份、SAN网、存储)、网络和机房场地等方面的性能和容量进行方案、监控、评估及改良工作。容量管理涵盖信息系统性能和容量两方面。其中,性能指信息系统在提供对外效劳时的运行处理效率,容量指信息系统在运行过程中所能承载容纳的最大资源总量。容量管理的目标是为了确保信息系统在运行过程中,其根底软硬件及配套运行环境的性能容量可以满足企
4、业当前和未来的业务开展需要。容量管理总体框架一般涵盖规章制度、组织架构、管理对象、运作流程、技术支撑等方面。文章重点讨论与大数据技术相关的工具平台、智能算法等内容。2 系统架构设计随着大数据技术的广泛运用,容量管理的工作重心已逐渐由原来的“流程效劳转变为“技术管理,即运用技术手段实现技术管理。结合商业银行同业调研情况,在建设容量管理系统时,可以将容量相关数据的存储和计算与具体应用场景解耦,容量数据借助分布式和大数据技术实现统一存储和计算。同时,结合机器学习算法实现容量波动检测、趋势预测等功能。通过API效劳网关进行数据交互,在应用层实现具体的应用场景,这样可以较为灵活地满足个性化管理需要。具体
5、的技术架构如图1所示。在这种建设模式下,容量数据的采集、清洗、计算、存储、分析等是关键技术应用。在企业中,容量数据通常由运维监控工具采集或产生,以往的监控工具由于平台性能、存储容量等因素,往往不会长期保存监控数据,这使得支撑容量管理工作的核心数据资产缺失,只能借助管理流程来补强。这些年来随着大数据技术的出现,正好弥补了这一缺乏。如图2所示,容量管理运维大数据平台由自研组件和开源组件搭建完成,以保证既充分利用开源大数据组件处理丰富的API接口,同时又能够根据各组件使用当中存在的缺乏进行结合实际场景需求的定制优化。数据采集层主要由自研采集组件实现,组件包括采集网关、采集器和采集路由三局部,具有兼容
6、多种平台、采集速率高、采集占用资源可控、支持采集类型丰富、自恢复能力强等特点。数据处理层利用kafka streaming以及spark streaming。kafka作为数据总线确保了数据传输的高效和稳定。自研接口程序能够分发数据至不同存储介质,兼容多种大数据存储。数据存储层分为近现存储和长期存储,近现存储由ES实现,其上封装SPL查询语法,能够实现近期数据(如3个月内)毫秒级响应。长期存储将数据存放到HIVE等数仓中,为离线批量计算提供根底数据。采用MongoDB存储主机应用关联关系和配置信息。数据分析层包含数据分析平台与数据分析算法。Zeppelin支持Python等数据分析语言,能够实
7、现算法构建和模型训练。通过自研算法为运维人员提供灵活的数据分析功能。Tableau能够对接多种数据源,进行快速、实时的数据探索,并形成可视化报告。3 智能算法應用这些年来商业银行数据中心已根本实现了对系统性能和容量数据、系统运行日志、业务日志等数据的采集,并对这些指标设置简单的判断规那么进行监控警告。但是,其中的大多数规那么都是通过固定阈值设置的,因此无法根据容量历史的变化情况和现状进行智能化的判断预警,对容量规划的支撑也较少,且规那么调整需要大量人工干预。本文沉着量管理具体场景出发,结合实践,针对波动检测、趋势预测、容量规划等应用讨论相关的智能运维算法。3.1 波动检测波动检测重点关注系统运
8、行过程中的大幅变化,针对容量指标数据的突增或突降进行捕获和分析。借助波动检测算法,可以从数据中找到不符合预期的系统运行状态,这些数据也被称为异常点或离群点。系统运行波动较多并不能直接得出系统运行异常的结论,可能由于变更、事件、外部原因(比方营销活动)导致,但过多的波动存在运行风险,需要进一步关注和评估。波动检测算法的核心是找出“离群点,也就是分布稀疏且离密度高的群体较远的数据,通常可以使用基于连续数据的无监督学习算法,比方孤立森林、K-Means、DBSCAN等聚类算法。另外针对不同类型指标,波动检测算法的选取也有不同。比方,针对周期型指标,可以选择基于时间序列分解、Holt-Winters算
9、法;针对平稳型指标,可以使用静态阈值、加权移动平均、指数移动平均等算法;针对非平稳型指标,那么可以使用基于极限理论、小波变换、动态阈值等算法进行检测。3.2 趋势预测趋势预测重点关注的是中长期容量数据趋势变化,由于是基于历史数据做出的预测,可能无法预见到事件故障、变更维护、业务营销等特定因素或方案外工作导致的容量趋势变化,预测结论可用于辅助运维决策。常见的趋势预测算法有线性回归、ARIMA、Prophet、LSTM等,可用于对交易量、文件系统使用率、数据库表空间、网络线路流量等容量指标进行预测。其中,线性回归是一种线性模型,其原理是尝试找到一条直线(或一个超平面),使得预测值与真实值之间的误差
10、最小化。ARIMA即差分移动平均自回归模型,是经典且常见的时间序列预测分析方法。ARIMA有三个重要参数(p,d,q),其中p为自回归项数,q为滑动平均项数,d为使之成为平稳序列的差分阶数。Prophet是Facebook开源的一款基于python和R的时序数据预测算法包,通过分析时序数据的周期性(使用傅立叶级数建立周期模型)、趋势性(分段线性拟合)、节假日、异常值等特征来对数据进行预测。LSTM即长短时记忆网络,是一种以递归神经网络(RNN)为根底并改良的深度学习模型,其通过三门(输入门、遗忘门、输出门)来模拟对时序数据前后联系的处理,解决了人工神经网络结构中长时间记忆的问题。3.3 容量规
11、划容量规划需要根据业务需求,对未来做出合理的规划。其可用于:(1)指导信息系统制定容量扩容、缩容方案,以便及时安排软硬件资源采购。(2)评估某类业务场景(或交易链路)上涉及系统的性能容量瓶颈,找到短板并针对性地制定扩容方案。在进行容量规划时,需要充分考虑历史数据并进行推演。以往由于生产环境的系统关联关系极其复杂,容量规划工作多为人工操作,这不仅需要大量人力投入,同时取决于运维人员自身能力。引入容量规划算法的目标,是替代原本依靠经验进行容量规划和测算的方式。容量规划算法基于波动检测和趋势预测算法根底上进行构建,此外还需进一步解决以下两个问题。第一,指标关联问题。根据木桶原理,在大型效劳系统中,只
12、要存在任何一处系统短板,整条交易链路的对外效劳就会受到影响。因此我们需要构建系统指标间的关联关系,并对大量无效的指标联动进行剪枝。指标关联性分析可以使用Pearson线性相关系数,也称线性相关系数、皮氏积矩相关系数,该数值用于衡量两个随机变量之间的线性相关程度。根据取值,可以判断两组随机变量是否具有高度线性相关性。第二,多指标测算问题。比方,对于一条业务场景交易链路,我们需要找出到底是A系统的CPU使用率将在未来到达瓶颈,还是B系统的TPS近期会到达理论极值。然后根据分析结果,提前制定针对性的扩容方案。为了解决这一问题,可以将所有的指标关联关系视作一个集合,使用动态规划方法寻找方程组的最优解,
13、并根据每个指标的上限,定位整条交易链路上的短板和瓶颈。以上讨论了几个主要的容量管理場景和算法应用。需要说明的是,算法落地效果还会受到以下两方面影响:一是数据质量,可通过运维工具总体架构设计、运维数据治理等手段提高数据的准确性和实效性;二是应用场景,尽管算法本身具备通用性,但是不同算法适用于不同的应用场景。算法落地时要结合实际效果进行调整并不断打磨。4 未来展望本文重点阐述商业银行大数据技术下容量管理工作研究与实践。由于容量管理工作依赖大量的生产运行数据,是大数据技术和智能运维(AIOps)落地的重要场景,云计算、5G技术的开展也给容量管理工作带来诸多挑战。随着运维监控、自动化、大数据等工具的不
14、断成熟,容量管理正在逐步向自动化、智能化转变,未来将结合实践不断优化工作机制,主动迎接业务和技术快速开展给运维带来的挑战。主要参考文献1ISO/IEC 20000-1,Service Management Systems - RequirementsS. Information Technology - Service Management,2022.2高效运维社区AIOps标准工作组.企业级别AIOps实施建议白皮书EB/OL.2022-04-13.3P Linnea Rudenius,Moa Persson,Anomaly Detection and Fault Localization An Automated Process for Advertising SystemsD.Chalmers tekniska hogkola,2022.