CN117632897A - 动态扩缩容方法及装置 - Google Patents
动态扩缩容方法及装置 Download PDFInfo
- Publication number
- CN117632897A CN117632897A CN202311466382.2A CN202311466382A CN117632897A CN 117632897 A CN117632897 A CN 117632897A CN 202311466382 A CN202311466382 A CN 202311466382A CN 117632897 A CN117632897 A CN 117632897A
- Authority
- CN
- China
- Prior art keywords
- time sequence
- monitoring
- data
- end server
- preset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000008602 contraction Effects 0.000 title claims abstract description 108
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012544 monitoring process Methods 0.000 claims abstract description 427
- 238000005070 sampling Methods 0.000 claims abstract description 35
- 238000003860 storage Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 12
- 230000009467 reduction Effects 0.000 claims description 7
- 230000000007 visual effect Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000012216 screening Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229910002804 graphite Inorganic materials 0.000 description 1
- 239000010439 graphite Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A30/00—Adapting or protecting infrastructure or their operation
- Y02A30/60—Planning or developing urban green infrastructure
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种动态扩缩容方法及装置,包括:按照时间维度访问集群的状态数据,将访问到的时序监控数据存储至时序数据库,时序监控数据包括前端服务器的时序监控数据以及后端服务器的时序监控数据;获取预设采样周期内时序数据库中所存储的前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,后端服务器对应的至少一个第二监控指标下的时序监控数据;根据至少一个第一监控指标下的时序监控数据以及至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对数据仓库所依赖的集群进行扩缩容,实现自动化地扩缩容,能更简单、更高效且及时地对数据仓库所依赖的集群进行扩缩容,进而能够更好地满足扩缩容业务需求。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种动态扩缩容方法及装置。
背景技术
随着城市轨道交通建设的不断发展,城轨智慧应用需求不断增加,为城轨大数据的采集、挖掘、分析和存储能力带来了挑战。在引入新的业务功能或者调整现有的业务流程时,经常遇到随着运算任务的增多,现有的数据仓库规模可以无法满足业务需求。比如数据中间层、数据应用层的数据存储空间不足,或者查询缓慢,此时需要增加数据存储服务。或者,当业务萎缩或者高峰过后,大部分资源可能处于空闲状态,需要进行缩容操作以节约成本。数据仓库存储需要根据需求动态分配和释放存储资源,以实现资源的有效利用和成本的最小化。
相关技术中,扩缩容方面相对较为复杂,需要手动进行管理。在扩缩容时,需要添加新的节点并进行相应的配置和调优,手动调整数据分布和节点负载,并进行相应的数据迁移和重分区操作。此种人工参与的方式费事费力,并且容易出错,灵活性和及时性较差,效率较低。
发明内容
本发明提供一种动态扩缩容方法及装置,用以解决现有技术中传统的人工参与扩缩容的方式容易出错,灵活性和及时性较差,效率较低的缺陷,实现更好地自动化扩缩容。
本发明提供一种动态扩缩容方法,应用于数据仓库动态扩缩容监控***,所述数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,所述数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,所述前端服务器用于响应前端的客户端请求,所述后端服务器用于负责数据的存储和查询执行工作,所述方法包括:
按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;
获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;
根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
根据本发明提供的一种动态扩缩容方法,所述根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过所述数据仓库对应的扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,包括:
在监控到所述至少一个第一监控指标下的时序监控数据满足预设前端服务器扩缩容条件的情况下,对前端服务器进行扩缩容;
或者,
在监控到所述至少一个第二监控指标下的时序监控数据满足预设后端服务器扩缩容条件的情况下,对后端服务器进行扩缩容。
根据本发明提供的一种动态扩缩容方法,所述至少一个第一监控指标包括至少一个性能监控指标、一个前端服务器状态监控指标以及一个元数据一致性监控指标,所述预设前端服务器扩缩容条件包括预设前端服务器扩容条件以及预设前端服务器缩容条件;
其中,所述预设前端服务器扩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第一目标个所述预设采样周期下的时序监控数据高于所述性能监控指标对应的上限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据高于综合性能门限阈值,所述综合性能时序监控数据是对所有的所述性能监控指标下的时序监控数据进行加权求和得到的;
所述元数据一致性监控指标下的时序监控数据高于所述元数据一致性监控指标对应的上限阈值;
所述前端服务器状态监控指标下的时序监控数据为第一预设类型数据,所述第一预设类型数据表征前端服务器实例发生故障;
其中,所述预设前端服务器缩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第二目标个所述预设采样周期下的时序监控数据低于所述性能监控指标对应的下限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据低于所述综合性能门限阈值。
根据本发明提供的一种动态扩缩容方法,所述前端服务器包括主服务器以及备用服务器,所述元数据一致性监控指标下的时序监控数据为所述主服务器的最大元数据日志ID与所述备用服务器的最大元数据日志ID之间的差值。
根据本发明提供的一种动态扩缩容方法,所述至少一个第二监控指标包括至少一个负载监控指标以及一个后端服务器状态监控指标,所述预设后端服务器扩缩容条件包括预设后端服务器扩容条件以及预设后端服务器缩容条件;
其中,所述预设后端服务器扩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第三目标个所述预设采样周期下的时序监控数据高于所述负载监控指标对应的上限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据高于综合负载门限阈值,所述综合负载时序监控数据是对所有的所述负载监控指标下的时序监控数据进行加权求和得到的;
所述后端服务器状态监控指标下的时序监控数据为第二预设类型数据,所述第二预设类型数据表征后端服务器实例发生故障;
其中,所述预设后端服务器缩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第四目标个所述预设采样周期下的时序监控数据低于所述负载监控指标对应的下限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据低于所述综合负载门限阈值。
根据本发明提供的一种动态扩缩容方法,所述方法还包括:
在需对所述数据仓库所依赖的集群中添加新节点进行扩容的情况下,将所述新节点添加至所述集群中,重启所述数据仓库所依赖的集群中的所有节点后。
根据本发明提供的一种动态扩缩容方法,所述方法还包括:
在用户监控界面中按照可视化时序监控数据,所述时序监控数据包括所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据;
在所述时序监控数据达到预设触发报警条件时,通过预设报警通知方式向相应的终端进行报警,其中,所述预设触发报警条件与所述预设报警通知方式是基于所述用户监控界面配置的。
本发明还提供一种动态扩缩容装置,应用于数据仓库动态扩缩容监控***,所述数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,所述数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,所述前端服务器用于响应前端的客户端请求,所述后端服务器用于负责数据的存储和查询执行工作,所述装置包括:
数据访问模块,用于按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;
监控指标模块,用于获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;
扩缩容模块,用于根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述动态扩缩容方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述动态扩缩容方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述动态扩缩容方法。
本发明提供的动态扩缩容方法及装置,应用于数据仓库动态扩缩容监控***,数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,前端服务器用于响应前端的客户端请求,后端服务器用于负责数据的存储和查询执行工作,具体地,数据仓库动态扩缩容监控***通过按照时间维度访问集群的状态数据,将访问到的时序监控数据存储至时序数据库,时序监控数据包括前端服务器的时序监控数据以及后端服务器的时序监控数据;接着获取预设采样周期内时序数据库中所存储的前端服务器的时序监控数据对应的至少一个第一监控指标下的时序监控数据,以及,后端服务器的时序监控数据对应的至少一个第二监控指标下的时序监控数据;最后根据至少一个第一监控指标下的时序监控数据以及至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对数据仓库所依赖的集群进行扩缩容,预设扩缩容策略是根据数据仓库的城轨大数据业务需求制定的,一方面使用前端服务器结合后端服务器的分布式集群架构构建出数据仓库,确保可自动化灵活地进行扩缩容。另一方面针对数据仓库,按照时间维度访问并监控各监控指标下的时序监控数据,并结合预先根据城轨大数据业务需求制定好的预设扩缩容策略进行自动化地扩缩容,能更简单、更高效且及时地对数据仓库所依赖的集群进行扩缩容,进而能够更好地满足城轨大数据数仓的扩缩容业务需求。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图进行简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的数据仓库动态扩缩容监控***部署场景示意图;
图2为本发明提供的动态扩缩容方法的流程示意图;
图3为本发明提供的动态扩缩容装置的结构示意图;
图4为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
需要说明的是,数据仓库指用于存储和管理大量结构化和非结构化数据的仓库,包括数据的组织、索引、存储和查询等功能。扩缩容指根据数据仓库的负载和业务需求,自动调整数据仓库的规模和容量,以适应不断变化的数据处理需求。
相关技术中,数仓往往基于Hive构建,Hive是一个开源的数据仓库基础架构,其在扩缩容方面相对较为复杂,需要手动进行管理。在扩缩容时,需要添加新的节点并进行相应的配置和调优,手动调整数据分布和节点负载,并进行相应的数据迁移和重分区操作。人工参与的方式费事费力,并且容易出错,灵活性和及时性较差,效率较低。
因此本发明为了解决以上问题,参考图1,在一个示例中,提出了基于Doris作为做城轨大数据的数据仓库,具体地,列车控制管理***(Train Control Management System,TCMS)、车载控制器(Vehicle On Board Controller,VOBC)等城轨数据经过数据集成,存储到基于Doris的数据仓库。数据处理引擎对基于Doris的数据仓库的ODS原始层数据进行进一步分析和加工,将计算后的数据存储DWD明细数据层、ADS应用数据层等,以便为上层的智慧城轨应用或者报表分析等提供数据支撑。
Prometheus监控***采集数据仓库的时序监控数据,Grafana可视化工具做监控展示以及触发扩缩容的技术方案,并结合城轨大数据业务需求,制定了扩缩容策略。
需要说明的是,Doris采用了分布式架构,可以将数据分布到多个服务器节点上进行存储和处理。当数据量增加或查询负载增加时,可以通过增加更多的节点来实现横向扩展,从而提高***的容量和吞吐量。扩展时Doris会自动将数据划分并分布到新的节点上,同时也会调整查询计划以利用新节点的计算资源。此外,Doris还可以根据需求随时增加或减少节点数量,而无需中断***的正常运行。
具体地,本实施例中的数据仓库所依赖的集群采用至少一台前端服务器(Frontend Engineer,FE)结合至少一台后端服务器(Backend Engineer,BE)的集群部署策略,FE负责处理前端的客户端请求和提供服务接口,主要负责用户请求的接入、节点管理、元数据集管理以及查询解析。BE负责数据的存储和查询执行工作。
在一个示例中,可以部署3台FE与3台BE,其中,3台FE的服务器作为活动节点,对外提供服务;而另外3台BE的服务器作为备份节点,用于实时同步和存储数据,以保证数据的可靠性和一致性。其中,3台FE中可以分为一台主服务器、一台备用服务器和一台观察者服务器。主服务器通常是指分布式***中最重要的节点,它负责控制整个***、设置并维护全局状态,协调并管理其他节点的工作。备用服务器通常是指分布式***中附属于主节点的节点,它们接受主节点派发的任务或请求,并向其汇报工作进展,保持与主节点的数据同步。观察者服务器通常是指分布式***中某些节点的特殊角色,它们被配置为对***状态进行监视,但并不参与决策或执行任何任务。
Prometheus是一款开源的监控告警***,其中Prometheus Server是其主进程,负责从被监控对象采集指标数据,并将其存储在Prometheus的时序数据库(TSDB)中。对于基于Doris的数据仓库,Prometheus Server通过拉取的方式获取数据仓库所依赖的集群的状态信息。
具体地,基于Doris的数据仓库通过FE和BE的http接口向外提供集群的状态信息,这些数据包括CPU、内存、磁盘、网络等状态信息。Prometheus Server采集到的时序监控信息存入Prometheus的时序数据库(TSDB)中。数据采集的间隔根据计算任务自定义配置。周期性的获取监控指标,并进行分析。
Grafana可视化工具包括Web UI(Website User Interface,网络产品界面),可以连接到多个数据源,包括Prometheus、Graphite等时序数据库。还包括Grafana Server组件以及报警插件,Grafana Server可以通过Prometheus数据源连接到Prometheus的时序数据库,并从中获取指标数据,然后在Web UI上展示出来;报警插件用于在触发报警条件时,进行报警通知。
因此本实施例中,将Grafana Server和Prometheus共同组成一个数据仓库动态扩缩容监控***,帮助用户实现自动实时地对数据仓库监控和追踪等。一方面使用前端服务器结合后端服务器的分布式集群架构构建出数据仓库,确保可自动化灵活地进行扩缩容。另一方面针对数据仓库,数据仓库动态扩缩容监控***按照时间维度访问并监控各监控指标下的时序监控数据,并结合预先根据城轨大数据业务需求制定好的预设扩缩容策略进行自动化地扩缩容,能更简单、更高效且及时地对数据仓库所依赖的集群进行扩缩容,进而能够更好地满足城轨大数据数仓的扩缩容业务需求。
图2为本发明提供的动态扩缩容方法的流程示意图,如图2所示,本发明提供了一种动态扩缩容方法,包括:
步骤201,按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;
具体地,在Prometheus中,可以通过以下步骤按照时间维度访问集群的状态数据,并将所访问到的时序监控数据存储至时序数据库:
使用Prometheus的配置文件,添加需要监控的前端服务器和后端服务器的地址,以及相应的指标抓取规则。如此Prometheus就会按照设定的间隔从目标服务器上采集状态数据。
使用查询语言,通过指定时间范围和相关的标签筛选条件,来查询所需的时序监控数据。例如,可以查询过去5分钟内后端服务器的CPU使用率,并返回过去5分钟内后端服务器的CPU使用率的时序监控数据。还比如,可以查询过去5分钟内前端服务器的查询吞吐量,并返回过去5分钟内前端服务器的查询吞吐量的时序监控数据。
此外需要说明的是,Prometheus本身就是一个内置的时序数据库,因此会自动将采集到的时序监控数据存储起来。数据存储在本地文件***中,具体路径可以在Prometheus的配置文件中进行配置。
此外,为了防止数据过多导致存储不足,Prometheus会定期对数据进行持久化和清理。可以在配置文件中设置保存的时间范围和存储策略,以满足存储需求。
本实施例中,通过配置数据采集、使用查询语言、自动存储至时序数据库等步骤,可以实现按照时间维度访问集群的状态数据,并将所访问到的时序监控数据存储起来。
其中,时序监控数据可以包括以下几个部分:
标识符:每个时序监控数据都有一个唯一的标识符,通常由指标名称和标签组成。标识符用于唯一标识一个监控指标,例如cpu、内存等。
时间戳:记录数据点的时间戳,表示数据点采集的时间。
值:数据点的具体数值,例如CPU使用率、内存占用等。
元数据:包括指标的描述、单位等附加信息。
步骤202,获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;
预设采样周期是指在Prometheus中配置的采样间隔,也称为采样频率。它表示每隔多长时间收集一次时序监控数据,预设采样周期的间隔可以根据计算任务自定义配置。
本实施例中可以根据实际需求,设置所要监控的指标和其对应的阈值。例如,后端服务器CPU负载超过80%时进行扩容,前端服务器请求响应时间超过500ms时进行扩容。
例如,假设在Prometheus中配置了一个预设采样周期为15秒,在这个预设采样周期内,我们监控了一个名为cpu_usage的指标,它用于记录服务器的CPU使用率。
在过去的15秒内,Prometheus会以约15秒的间隔对时序数据库中这个cpu_usage指标进行采样,记录了多个数据点。每个数据点包括时间戳和对应的CPU使用率数值。例如以下所示:
时间戳:XXXX-XX-XX 08:00:00,CPU使用率:30%
时间戳:XXXX-XX-XX 08:00:15,CPU使用率:35%
时间戳:XXXX-XX-XX 08:00:30,CPU使用率:25%
时间戳:XXXX-XX-XX 08:00:45,CPU使用率:40%
这些时间序列数据将按照时间戳的顺序被存储在Prometheus的时序数据库中。通过使用查询语言,我们可以从时序数据库中获取某个指标(如cpu)在某个预设采样周期内的时序监控数据。
本实施例中,可以使用查询语言,通过指定时间范围和相关的标签筛选条件,来监控预设采样周期内所需的第一监控指标和第二监控指标下的时序监控数据。
步骤203,根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
本实施例中,可以根据实际城轨大数据业务需求,制定针对数据仓库所依赖的集群的扩缩容策略,并在第一监控指标下的时序监控数据或第二监控指标下的时序监控数据达到所设定的扩缩容触发条件时,按照所设定的扩缩容策略对数据仓库所依赖的集群进行扩缩容。
本发明实施例中,通过按照时间维度访问集群的状态数据,将访问到的时序监控数据存储至时序数据库,时序监控数据包括前端服务器的时序监控数据以及后端服务器的时序监控数据;接着获取预设采样周期内时序数据库中所存储的前端服务器的时序监控数据对应的至少一个第一监控指标下的时序监控数据,以及,后端服务器的时序监控数据对应的至少一个第二监控指标下的时序监控数据;最后根据至少一个第一监控指标下的时序监控数据以及至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对数据仓库所依赖的集群进行扩缩容,预设扩缩容策略是根据数据仓库的城轨大数据业务需求制定的,一方面使用前端服务器结合后端服务器的分布式集群架构构建出数据仓库,确保可自动化灵活地进行扩缩容。另一方面针对数据仓库,按照时间维度访问并监控各监控指标下的时序监控数据,并结合预先根据城轨大数据业务需求制定好的预设扩缩容策略进行自动化地扩缩容,能更简单、更高效且及时地对数据仓库所依赖的集群进行扩缩容,进而能够更好地满足城轨大数据数仓的扩缩容业务需求。
在一些实施例中,所述根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过所述数据仓库对应的扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,包括:
在监控到所述至少一个第一监控指标下的时序监控数据满足预设前端服务器扩缩容条件的情况下,对前端服务器进行扩缩容;
或者,
在监控到所述至少一个第二监控指标下的时序监控数据满足预设后端服务器扩缩容条件的情况下,对后端服务器进行扩缩容。
本实施例中,制定针对前端服务器和后端服务器的不同预设前端服务器扩缩容条件。
例如,前端服务器扩缩容策略:分析前端服务器的时序监控数据,包括请求响应时间和请求量等指标。当某个指标下的时序监控数据触发扩容条件下,自动启动前端服务器的扩容机制。当某个指标下的时序监控数据触发缩容条件下,自动启动前端服务器的缩容机制。
比如,当某个前端服务器的请求响应时间超过某个阈值(如500ms),就可以启动自动扩容机制,根据业务需求和实际情况,选择添加单台服务器或者按照容器化的方式在现有的服务器中添加多个实例。如果某个前端服务器的请求响应时间持续低于一定阈值(例如200ms)并且请求负载也较低,则可以触发自动缩容。在缩容时,从负载较低的前端服务器中选择一个进行关闭或移除。
例如,后端服务器扩缩容策略:
监控后端服务器的时序数据,包括CPU负载、内存使用率和磁盘I/O等指标。当某个指标下的时序监控数据触发扩容条件下,自动启动后端服务器的扩容机制。当某个指标下的时序监控数据触发缩容条件下,自动启动后端服务器的缩容机制。
比如,当某个后端服务器的CPU负载超过某个阈值(如80%),就可以启动自动扩容机制,可以选择按需新增整机服务器或者按照容器化的方式在原有服务器中增加多个实例来处理更多的请求。如果某个后端服务器的CPU负载持续低于一定阈值(例如30%)并且请求负载也较低,则可以触发自动缩容。在缩容时,从负载较低的后端服务器中选择一个进行关闭或移除。
本发明实施例中,通过针对前端服务器和后端服务器的不同预设前端服务器扩缩容条件,并在前端服务器或后端服务器达到各自的预设前端服务器扩缩容条件分别进行扩缩容,一方面通过不同的扩缩容策略,可以根据实际负载情况动态分配服务器资源,通过根据实时监控数据自动进行扩缩容,可以保证***在负载增加或减少时能够自适应地调整资源配置,从而提高***的可用性和稳定性,避免资源浪费和额外的运维成本,另一方面,通过自动监控和触发扩缩容机制,可以减轻运维人员的工作负担,降低人为错误的风险,并且能够更及时地响应***负载变化,提高运维效率。
在一些实施例中,所述至少一个第一监控指标包括至少一个性能监控指标、一个前端服务器状态监控指标以及一个元数据一致性监控指标,所述预设前端服务器扩缩容条件包括预设前端服务器扩容条件以及预设前端服务器缩容条件;
其中,所述预设前端服务器扩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第一目标个所述预设采样周期下的时序监控数据高于所述性能监控指标对应的上限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据高于综合性能门限阈值,所述综合性能时序监控数据是对所有的所述性能监控指标下的时序监控数据进行加权求和得到的;
所述元数据一致性监控指标下的时序监控数据高于所述元数据一致性监控指标对应的上限阈值;
所述前端服务器状态监控指标下的时序监控数据为第一预设类型数据,所述第一预设类型数据表征前端服务器实例发生故障;
其中,所述预设前端服务器缩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第二目标个所述预设采样周期下的时序监控数据低于所述性能监控指标对应的下限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据低于所述综合性能门限阈值。
本实施例中,性能监控指标是用于衡量前端服务器在处理请求和执行操作时的性能表现的度量指标,比如响应时间、吞吐量、并发用户数、错误率等。前端服务器状态监控指标用于衡量前端服务器是否发生故障。元数据一致性监控指标用于衡量多个前端服务器节点之间的医院数据一致性。
为了便于理解,对此举例说明:
前端服务器的第一监控指标:元数据一致性、99th百分位数查询延迟、查询吞吐量、请求吞吐量、前端服务器节点状态。其中,99th百分位数查询延迟(latency_99th)表示有99%查询执行的延迟时间都小于等于该值,用于衡量整体的查询延迟的性能;查询吞吐量(qps)为统计周期内前端服务器执行的查询量,单位为ops/s,以此来衡量周期内的查询负载情况;请求吞吐量(rps)为统计周期内的接受连接请求的量,单位为ops/s,用于衡量这个***的整体负载情况;元数据一致性指标(consist)用于衡量前端服务器节点之间的元数据的一致性,当该指标超过一定上限阈值时候,会出现数据不一致的情况,需要将异常前端服务器节点删除,扩充一个新的前端服务器节点。前端服务器节点状态(fe_status)用于衡量前端服务器是否发生故障,前端服务器节点可用时该指标值为1,否则为0,当前端服务器状态监控指标的值为1,即表征前端服务器实例发生故障,则需进行扩容。
在一个示例中,性能监控指标以及前端服务器状态监控指标的具体计算方式如下:
fe_status=sum(up{group="fe"}==0)
latency_99th=sum(doris_fe_query_latency_ms{quantile="0.99"})
qps=sum(rate(doris_fe_query_total{group="fe"}[t]))
rps=sum(rate(doris_fe_request_total{group="fe"}[t]))
其中,t表示采样周期;sum为求和函数,用于统计一个集群内的监控数据的总数值;avg为求同一集群内平均值的函数;rate用与计算时间序列数据的速率;up为状态检测指标(节点可用时该指标值为1,否则该指标值为0);{}内表示为监控数据的筛选条件;doris_fe_query_latency_ms为查询延迟;doris_fe_query_total为查询请求;doris_fe_request_total为接收的操作请求。
需要说明的是,当各性能指标持续低于下限阈值时,对节点进行缩容。当性能指标持续高于可接受的上限阈值时,对节点进行扩容。此外除了单一性能指标超过阈值之后会触发扩缩容之外,还需要评估集群整体的性能,综合性能指标为各相关性能指标按照影响因子进行权重分配之后相加得到。例如参考下表1,表1为前端服务器的各指标阈值。
表1:前端服务器的各指标阈值
本发明实施例中,通过以上条件触发机制可以自动化及时发现潜在的性能问题和故障,并采取相应的扩缩容措施来优化***的性能、提高可靠性和稳定性。有助于提升***性能、保障数据一致性、快速响应故障以及实现自动化的资源管理,从而提高***的可靠性、可用性和性能表现,并提升用户体验。
在一些实施例中,所述前端服务器包括主服务器以及备用服务器,所述元数据一致性监控指标下的时序监控数据为所述主服务器的最大元数据日志ID与所述备用服务器的最大元数据日志ID之间的差值。
需要说明的是,本实施例中的前端服务器的部署策略为部署至少一台主服务器、至少一台备用服务器和至少一台观察者服务器。其中,主服务器用于控制整个***的工作流程和状态,并指导备用服务器的工作。备用服务器负责执行具体的任务并向主服务器汇报进展,而观察者服务器则专门监测***状态,以识别故障并提供反馈。
因此本实施例中的元数据一致性监控指标用于评估主服务器以及备用服务器之间元数据的同步状态。它衡量了每个备用服务器与主服务器之间元数据的差异程度,从而判断是否存在数据不一致的情况。
在该指标中,计算方法是通过比较主服务器的监控值与每个备用服务器的相应监控值的差异来确定异常节点。具体而言,对于每个主服务器,将主服务器的监控值减去该从节点的监控值,如果差值超过预设的阈值,则认为该备用服务器是异常节点。
具体地,本实施例中使用doris_fe_max_journal_id:最大元数据日志ID来衡量备用服务器是否为异常节点,其中,元数据日志是用于记录Doris***中关键操作的日志文件。这些操作包括表的创建、删除、重命名等元数据变更操作,以及数据加载和数据删除等数据变更操作。元数据日志的目的是保证Doris***的元数据一致性和持久性。doris_fe_max_journal_id代表当前节点上所记录的元数据日志中最大的ID。它可以用作判断元数据同步状态的指标之一。通过比较主服务器的doris_fe_max_journal_id与每个备用服务器的相应监控值,可以评估它们之间的元数据同步情况,并发现潜在的数据不一致问题。
本发明实施例中,通过元数据一致性监控指标,可以及时发现***中主服务器以及备用服务器之间的元数据一致性问题。从而实现在备用服务器异常时,可及时自动响应故障,从而提高***的可靠性。
在一些实施例中,所述至少一个第二监控指标包括至少一个负载监控指标以及一个后端服务器状态监控指标,所述预设后端服务器扩缩容条件包括预设后端服务器扩容条件以及预设后端服务器缩容条件;
其中,所述预设后端服务器扩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第三目标个所述预设采样周期下的时序监控数据高于所述负载监控指标对应的上限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据高于综合负载门限阈值,所述综合负载时序监控数据是对所有的所述负载监控指标下的时序监控数据进行加权求和得到的;
所述后端服务器状态监控指标下的时序监控数据为第二预设类型数据,所述第二预设类型数据表征后端服务器实例发生故障;
其中,所述预设后端服务器缩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第四目标个所述预设采样周期下的时序监控数据低于所述负载监控指标对应的下限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据低于所述综合负载门限阈值。
本实施例中,负载监控指标是用于衡量后端服务器在执行数据的存储和查询时的负载压力的监控指标,比如CPU使用率、内存使用率、硬盘I/O使用率等。后端服务器状态监控指标用于衡量后端服务器是否发生故障。
为了便于理解,对此举例说明:
后端服务器的第二监控指标:CPU利用率、物理内存利用率、本地磁盘占用率、后端服务器节点状态。其中CPU利用率(cpu_use)为在采样周期内CPU的空闲时间与总的CPU时间的比值;物理内存使用率(mem_use)为一个集群中的所有BE端的内存分配的平均值;本地磁盘占用率(disk_use)为整个集群的已经使用的磁盘容量(总容量-可使用容量)与总容量的比值。前端服务器节点状态(be_status)用于衡量后端服务器是否发生故障,后端服务器节点可用时该指标值为1,否则为0,当后端服务器状态监控指标的值为1,即表征后端服务器实例发生故障,则需进行扩容。
在一个示例中,负载监控指标以及后端服务器状态监控指标的具体计算方式如下:
be_status=sum(up{group="be"}==0)
cpu_use=(sum(rate(doris_be_cpu{mode="idle"}[t])))/(sum(rate(dor is_be_cpu[t])))
mem_use=avg(doris_be_memory_allocated_bytes)
disk_use=sum(doris_be_disks_total_capacity/sum(doris_be_disks_total_capacity)-sum(doris_be_disks_avail_capacity)/sum(doris_be_disks_total_capacity)
其中,t表示采样周期;sum为求和函数,用于统计一个集群内的监控数据的总数值;avg为求同一集群内平均值的函数;rate用与计算时间序列数据的速率;up为状态检测指标(节点可用时该指标值为1,否则该指标值为0);{}内表示为监控数据的筛选条件;doris_be_cpu表示为BE的CPU相关监控指标,每个逻辑核的各项数值;doris_be_memory_allocated_bytes表示为BE进程物理内存大小;doris_be_disks_local_used_capacity表示为已使用的磁盘空间;doris_be_disks_total_capacity表示为磁盘总容量;doris_be_disks_state表示为磁盘状态;doris_be_max_disk_io_util_percent表示为最大IO UTIL的磁盘的数值。
需要说明的是,当各负载指标持续低于下限阈值时,对节点进行缩容。当负载指标持续高于可接受的上限阈值时,对节点进行扩容。此外除了单一负载指标超过阈值之后会触发扩缩容之外,还需要评估集群整体的负载,综合负载指标为各相关负载指标按照影响因子进行权重分配之后相加得到。例如参考下表2,表2为后端服务器的各指标阈值。
表1:后端服务器的各指标阈值
本发明实施例中,通过上条件触发机制可以自动化及时发现潜在的负载问题和故障,并采取相应的扩缩容措施来优化***的负载、提高可靠性和稳定性。从而提高***的可靠性、可用性和性能表现,并提升用户体验。
在一些实施例中,所述方法还包括:
在需对所述数据仓库所依赖的集群中添加新节点进行扩容的情况下,将所述新节点添加至所述集群中,重启所述数据仓库所依赖的集群中的所有节点后。
本实施例中,在进行任何扩容的操作之前,需要先确保新节点的已经正确配置并且与现有的节点具有相同的配置和版本。进一步地,在进行扩容时,将新节点添加至集群中,自动重启集群中现有的所有节点,以使更改生效并确保新的和旧的节点都在集群中正确地功能运行。
本发明实施例中,通过增加新节点,可以提高集群的计算和存储能力,从而支持更高的并发和负载,通过重启集群中的所有节点后,实现清理缓存、优化配置等操作,从而提高***的性能表现。
在一些实施例中,所述方法还包括:
在用户监控界面中按照可视化时序监控数据,所述时序监控数据包括所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据;
在所述时序监控数据达到预设触发报警条件时,通过预设报警通知方式向相应的终端进行报警,其中,所述预设触发报警条件与所述预设报警通知方式是基于所述用户监控界面配置的。
如图1所示,本实施例中还会在Grafana可视化工具的用户监控界面中展示前端服务器的第一监控指标下的时序监控数据以及后端服务器的第二监控指标下的时序监控数据,来辅助用户监测***的运行情况。
同时,用户可以在用户监控界面上配置预设触发报警条件。当时序监控数据达到这些预设条件时,***会触发报警通知。例如,如果第一监控指标超过某个阈值,或者第二监控指标出现异常波动,***会判定为触发报警条件。
预设报警通知方式是根据用户在用户监控界面进行的配置而确定的。通常,可以通过以下方式进行报警通知:短信、邮件、手机推送通知等。用户可以根据自己的需求选择合适的通知方式。
本发明实施例中,通过以上的配置和设置,用户可以方便地监控时序数据,并能够及时获得报警通知,以便在***出现异常时能够及时采取措施进行处理和修复。这样可以提高***的可靠性和稳定性,保证***的正常运行。
下面对本发明提供的动态扩缩容装置进行描述,本发明提供的动态扩缩容装置应用于数据仓库动态扩缩容监控***,所述数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,所述数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,所述前端服务器用于响应前端的客户端请求,所述后端服务器用于负责数据的存储和查询执行工作。下文描述的动态扩缩容装置与上文描述的动态扩缩容方法可相互对应参照。
图3为本发明提供的动态扩缩容装置的结构示意图,如图3所示,本发明提供了一种动态扩缩容装置,包括:数据访问模块310,用于按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;监控指标模块320,用于获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;扩缩容模块330,用于根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
本发明提供的动态扩缩容装置,通过按照时间维度访问集群的状态数据,将访问到的时序监控数据存储至时序数据库,时序监控数据包括前端服务器的时序监控数据以及后端服务器的时序监控数据;接着获取预设采样周期内时序数据库中所存储的前端服务器的时序监控数据对应的至少一个第一监控指标下的时序监控数据,以及,后端服务器的时序监控数据对应的至少一个第二监控指标下的时序监控数据;最后根据至少一个第一监控指标下的时序监控数据以及至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对数据仓库所依赖的集群进行扩缩容,预设扩缩容策略是根据数据仓库的城轨大数据业务需求制定的,一方面使用前端服务器结合后端服务器的分布式集群架构构建出数据仓库,确保可自动化灵活地进行扩缩容。另一方面针对数据仓库,按照时间维度访问并监控各监控指标下的时序监控数据,并结合预先根据城轨大数据业务需求制定好的预设扩缩容策略进行自动化地扩缩容,能更简单、更高效且及时地对数据仓库所依赖的集群进行扩缩容,进而能够更好地满足城轨大数据数仓的扩缩容业务需求。
本发明提供的装置是用于执行上述各方法实施例的,具体流程和详细内容请参照上述实施例,此处不再赘述。
图4为本发明提供的电子设备的结构示意图,如图4所示,该电子设备可以包括:处理器(Processor)401、通信接口(Communications Interface)402、存储器(Memory)403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行动态扩缩容方法,该方法包括:按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的动态扩缩容方法,该方法包括:按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的动态扩缩容方法,该方法包括:按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种动态扩缩容方法,其特征在于,应用于数据仓库动态扩缩容监控***,所述数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,所述数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,所述前端服务器用于响应前端的客户端请求,所述后端服务器用于负责数据的存储和查询执行工作,所述方法包括:
按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;
获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;
根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
2.根据权利要求1所述的动态扩缩容方法,其特征在于,所述根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过所述数据仓库对应的扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,包括:
在监控到所述至少一个第一监控指标下的时序监控数据满足预设前端服务器扩缩容条件的情况下,对前端服务器进行扩缩容;
或者,
在监控到所述至少一个第二监控指标下的时序监控数据满足预设后端服务器扩缩容条件的情况下,对后端服务器进行扩缩容。
3.根据权利要求2所述的动态扩缩容方法,其特征在于,所述至少一个第一监控指标包括至少一个性能监控指标、一个前端服务器状态监控指标以及一个元数据一致性监控指标,所述预设前端服务器扩缩容条件包括预设前端服务器扩容条件以及预设前端服务器缩容条件;
其中,所述预设前端服务器扩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第一目标个所述预设采样周期下的时序监控数据高于所述性能监控指标对应的上限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据高于综合性能门限阈值,所述综合性能时序监控数据是对所有的所述性能监控指标下的时序监控数据进行加权求和得到的;
所述元数据一致性监控指标下的时序监控数据高于所述元数据一致性监控指标对应的上限阈值;
所述前端服务器状态监控指标下的时序监控数据为第一预设类型数据,所述第一预设类型数据表征前端服务器实例发生故障;
其中,所述预设前端服务器缩容条件包括以下至少一项:
存在至少一个所述性能监控指标在连续第二目标个所述预设采样周期下的时序监控数据低于所述性能监控指标对应的下限阈值;
所有的所述性能监控指标对应的综合性能时序监控数据低于所述综合性能门限阈值。
4.根据权利要求3所述的动态扩缩容方法,其特征在于,所述前端服务器包括主服务器以及备用服务器,所述元数据一致性监控指标下的时序监控数据为所述主服务器的最大元数据日志ID与所述备用服务器的最大元数据日志ID之间的差值。
5.根据权利要求2所述的动态扩缩容方法,其特征在于,所述至少一个第二监控指标包括至少一个负载监控指标以及一个后端服务器状态监控指标,所述预设后端服务器扩缩容条件包括预设后端服务器扩容条件以及预设后端服务器缩容条件;
其中,所述预设后端服务器扩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第三目标个所述预设采样周期下的时序监控数据高于所述负载监控指标对应的上限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据高于综合负载门限阈值,所述综合负载时序监控数据是对所有的所述负载监控指标下的时序监控数据进行加权求和得到的;
所述后端服务器状态监控指标下的时序监控数据为第二预设类型数据,所述第二预设类型数据表征后端服务器实例发生故障;
其中,所述预设后端服务器缩容条件包括以下至少一项:
存在至少一个所述负载监控指标在连续第四目标个所述预设采样周期下的时序监控数据低于所述负载监控指标对应的下限阈值;
所有的所述负载监控指标对应的综合负载时序监控数据低于所述综合负载门限阈值。
6.根据权利要求1至5任一项所述的动态扩缩容方法,其特征在于,所述方法还包括:
在需对所述数据仓库所依赖的集群中添加新节点进行扩容的情况下,将所述新节点添加至所述集群中,重启所述数据仓库所依赖的集群中的所有节点后。
7.根据权利要求1至5任一项所述的动态扩缩容方法,其特征在于,所述方法还包括:
在用户监控界面中按照可视化时序监控数据,所述时序监控数据包括所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据;
在所述时序监控数据达到预设触发报警条件时,通过预设报警通知方式向相应的终端进行报警,其中,所述预设触发报警条件与所述预设报警通知方式是基于所述用户监控界面配置的。
8.一种动态扩缩容装置,其特征在于,应用于数据仓库动态扩缩容监控***,所述数据仓库动态扩缩容监控***用于对数据仓库所依赖的集群的状态数据进行监控,所述数据仓库所依赖的集群采用至少一台前端服务器结合至少一台后端服务器的集群部署策略,所述前端服务器用于响应前端的客户端请求,所述后端服务器用于负责数据的存储和查询执行工作,所述装置包括:
数据访问模块,用于按照时间维度访问所述集群的状态数据,将访问到的时序监控数据存储至时序数据库,所述时序监控数据包括所述前端服务器的时序监控数据以及所述后端服务器的时序监控数据;
监控指标模块,用于获取预设采样周期内所述时序数据库中所存储的所述前端服务器对应的至少一个第一监控指标下的时序监控数据,以及,所述后端服务器对应的至少一个第二监控指标下的时序监控数据;
扩缩容模块,用于根据所述至少一个第一监控指标下的时序监控数据以及所述至少一个第二监控指标下的时序监控数据,通过预设扩缩容策略对所述数据仓库所依赖的集群进行扩缩容,所述预设扩缩容策略是根据所述数据仓库的城轨大数据业务需求制定的。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述动态扩缩容方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述动态扩缩容方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311466382.2A CN117632897A (zh) | 2023-11-06 | 2023-11-06 | 动态扩缩容方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311466382.2A CN117632897A (zh) | 2023-11-06 | 2023-11-06 | 动态扩缩容方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117632897A true CN117632897A (zh) | 2024-03-01 |
Family
ID=90031250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311466382.2A Pending CN117632897A (zh) | 2023-11-06 | 2023-11-06 | 动态扩缩容方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117632897A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118138591A (zh) * | 2024-05-07 | 2024-06-04 | 苏州万店掌网络科技有限公司 | 一种节点管理方法、装置、设备及存储介质 |
-
2023
- 2023-11-06 CN CN202311466382.2A patent/CN117632897A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118138591A (zh) * | 2024-05-07 | 2024-06-04 | 苏州万店掌网络科技有限公司 | 一种节点管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107733986B (zh) | 支持一体化部署及监控的保护运行大数据支撑平台 | |
CN103067297B (zh) | 一种基于资源消耗预测的动态负载均衡方法及装置 | |
CN102882909B (zh) | 云计算服务监控***及方法 | |
CN110287081A (zh) | 一种服务监控***和方法 | |
CN111339175B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN104965861A (zh) | 一种数据访问监控装置 | |
JP2009129134A (ja) | ストレージ管理システム、性能監視方法及び管理サーバ | |
CN117632897A (zh) | 动态扩缩容方法及装置 | |
CN103533058A (zh) | 面向HDFS/Hadoop存储集群的资源监控***及方法 | |
CN111314158B (zh) | 大数据平台监控方法、装置及设备、介质 | |
CN112865311B (zh) | 一种电力***消息总线监视方法和装置 | |
CN110659180A (zh) | 基于集群技术的数据中心基础设施管理*** | |
CN109800133A (zh) | 一种统一监控告警的方法、一站式监控告警平台及*** | |
CN117331794A (zh) | 基于大数据的应用软件监控分析***及方法 | |
CN112149975B (zh) | 一种基于人工智能的apm监控***及监控方法 | |
CN114253806A (zh) | 一种接入层日志收集分析预警*** | |
CN116560893B (zh) | 一种计算机应用程序运行数据故障处理*** | |
CN111078494B (zh) | 一种Caché数据库监控方法及服务器 | |
CN103226572B (zh) | 一种基于数据压缩的可扩展的监控方法及*** | |
CN111414355A (zh) | 一种海上风电场数据监测存储***及方法、装置 | |
CN115883376A (zh) | 一种基于平台实时访问量的节点动态扩容方法及*** | |
CN116126415A (zh) | 一种基于场景的上云组件配置推荐方法及*** | |
Yongdnog et al. | A scalable and integrated cloud monitoring framework based on distributed storage | |
CN116126621A (zh) | 大数据集群的任务监控方法及相关设备 | |
CN116048932A (zh) | 一种高性能计算集群运行效率评价方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |