GBase新闻

专注于数据库软件产品和服务,致力于成为用户最信赖的数据库产品供应商

GBASE金融应用指南9 | 性能调优

发布时间:2024-07-10

为帮助金融机构做好分布式分析型数据库产品的选型,推广在金融行业部署应用分布式分析型数据库的成功经验,GBASE南大通用在北京金融科技产业联盟的指导下编写《南大通用GBase 8a金融应用指南》。《指南》深入介绍了分布式分析型数据库从选型规划、开发设计规范、数据安全高可用,直至运维优化的部署全过程,并介绍了GBase 8a MPP Cluster在国家政策性银行和国有大行的代表性部署案例。

GBASE南大通用将陆续推出系列文章,分享解读《指南》内容,希望能够对广大金融用户的数据库选型提供借鉴帮助,助力科技金融的高效实施和高质量发展。本篇是系列文章的第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语句改写优化