GBase 8a
其他
文章

南大通用GBase 8a金融应用指南系列9-性能调优

GBase社区管理员
发表于2024-07-10 14:19:1793次浏览0个评论

本篇是系列文章的第9期,介绍数据库系统的性能调优。

 

性能调优贯穿在项目的各个阶段中,从规划系统的逻辑架构就已经开始了优化之路,逐步经过系统逻辑架构设计->仓库模型设计->数据模型设计->SQL开发->数据库参数调整->业务调度,逐级优化,从宏观到微观,优化难度则由易到难,调整难度由难到易。

 

1、性能分析

通常项目设计和开发完成后,会进行正式上线前的测试和试用阶段,在这个过程中通过集群监控工具可以观察业务执行性能是否达标。如果存在性能不达标的业务sql,可通过查看不达标sql语句的执行计划和trace日志来判断可优化的关键点,根据这些关键点选择参数优化、模型调优和SQL优化的方法来提升性能。

 

2、参数优化

GBase 8a产品提供了各服务的配置参数供用户根据业务执行情况对集群灵活调优。观察需要调优的业务sql特征,根据这些特征在下面列出的参数种类中选择匹配的种类,在GBase 8a的《参数手册》中浏览该类参数章节,选择合适的参数调整测试,如:

SQL优化参数、SQL语法控制参数、内存相关参数、线程相关参数、资源管理相关参数、GBase 8a运行机制相关参数、数据传输相关参数等。

 

3、模型调优

需调优的sql在查询计划或者trace日志中表现出下列现象,则需进行模型调优:

• sql涉及的表数据量大且在集群各节点分布不均,出现数据倾斜

• 表关联的中间结果集过大

 

模型调优包括

• 修改表类型(hash分布表、随机分布表、复制表)

• hash分布表重新选择hash分布列

• 基于列存的宽表设计和预处理优化,即将大表关联提前进行预处理成宽表,原来的基于大表多表关联的查询转化为基于预处理结果表的单表查询

• 数据优化,数据排序入库

• 数据压缩优化,设置合适的压缩模式

 

4、SQL优化

需调优的sql经检查模型合理,可进一步进行SQL调优,一般在查询计划或者trace日志中出现下列现象,可进行SQL调优:

• 数据类型隐式转换较多

• 表的关联顺序不合理

 

SQL调优包括:

• 表结构优化,如数据类型调整

• 索引优化

• SQL语句改写优化


 

评论

登录后才可以发表评论