一种基于历史负载和即时负载的openGauss数据库并行优化方法技术

技术编号:41497769 阅读:32 留言:0更新日期:2024-05-30 14:41
本发明专利技术涉及一种基于历史负载和即时负载的openGauss数据库并行优化方法。本方法包括:分析openGauss数据库的历史负载数据,确定不同时间段的数据库负载水平和并发度需求;预判当前节点的资源负载状况,优化器根据预判结果生成相应的物理执行计划;计算该物理执行计划所需要的工作线程数量,判断当前的procs数组中是否有足够分配的元素;获取当前节点的即时负载状况,若与预判结果相符则进入执行器按照物理执行计划执行查询。本方法通过分析历史负载数据预判当前节点的资源负载状况,动态调整并发度的数量,高负载期降低并发度,减少高负载期使用并行查询带来的性能退化;低负载期提高并发度,增加并行查询的数量提高查询效率。

【技术实现步骤摘要】

本专利技术属于数据库并行方法,尤其涉及一种基于历史负载和即时负载的opengauss数据库并行优化方法。


技术介绍

1、opengauss是一款开源的关系型数据库管理系统,它具有多核高性能、全链路安全性、智能运维等企业级特性。opengauss内核早期源自开源数据库postgresql,融合了华为在数据库领域多年的内核经验,在架构、事务、存储引擎、优化器及arm架构上进行了适配与优化。但是,在实际使用过程中许多用户发现,opengauss数据库仍存在一定的不足,需要进一步完善。

2、通常来说,数据库执行的流程包括解析sql、分析、优化、执行等步骤。图1所示为opengauss数据库的查询执行流程,首先解析器(parser)解析,然后把查询结果传给分析器(analyzer)进行语义分析,之后是优化器(optimizer)根据语义分析生成的查询树生成物理执行计划,最后执行器按照物理执行计划执行查询。

3、我们知道,opengauss支持smp并行,即在单个节点上利用多个cpu核心并行执行查询计划,从而提高查询效率。在生成物理执行计划时,本文档来自技高网...

【技术保护点】

1.一种基于历史负载和即时负载的openGauss数据库并行优化方法,其特征在于,所述方法通过引入并分析历史负载数据获知openGauss数据库的高负载时间段和低负载时间段,根据前步分析结果预判当前节点的资源负载状况,并据此动态调整并发度的数量,若当前节点处于高负载期,则降低并发度,减少高负载期使用并行查询带来的性能退化;若当前节点处于低负载期,则提高并发度,通过增加并行查询的数量提高查询效率。

2.根据权利要求1所述的基于历史负载和即时负载的openGauss数据库并行优化方法,其特征在于,所述方法包括:

3.根据权利要求2所述的基于历史负载和即时负载的open...

【技术特征摘要】

1.一种基于历史负载和即时负载的opengauss数据库并行优化方法,其特征在于,所述方法通过引入并分析历史负载数据获知opengauss数据库的高负载时间段和低负载时间段,根据前步分析结果预判当前节点的资源负载状况,并据此动态调整并发度的数量,若当前节点处于高负载期,则降低并发度,减少高负载期使用并行查询带来的性能退化;若当前节点处于低负载期,则提高并发度,通过增加并行查询的数量提高查询效率。

2.根据权利要求1所述的基于历史负载和即时负载的opengauss数据库并行优化方法,其特征在于,所述方法包括:

3.根据权利要求2所述的基于历史负载和即时负载的opengauss数据库并行优化方法,其特征在于,步骤s1中还包括:根据opengauss数据库的历史负载数据分析结果以及获知的高负载时间段和低负载时间段,确定不同时间段的并发度阈值。

4.根据权利要求2所述的基于历史负载和即时负载的opengauss数据库并行优化方法,其特征在于,步骤s1中所述的opengauss数据库的历史负载数据来自opengauss数据库的日志文件或监控数据;针对opengauss数据库的历史负载数据的分析方法采用统计方法或机器学习方法。

5.根据权利要求2所述的基于历史...

【专利技术属性】
技术研发人员:陈允文何小栋
申请(专利权)人:广州海量数据库技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1