GBase 8a
性能调优
文章

gbase8a多轮物化场景优化案例

发表于2024-05-31 15:27:01117次浏览1个评论

SQL样例:一般结果集比较大的SQL都可能涉及

分析过程:查看trace,物化过程具体如下

BEGIN Materialization 开始物化

下面关键字是物化轮数和第几轮物化,如图就是总共要做5轮物化,这是第1轮物化

中间重复过程省略,下图是物化结束和物化过程总时间,由于时间紧,好多没有截图,实际有好多地方物化要几十轮,时间要比截图还要长,有100s以上的地方

优化方法:遇到多轮物化,物化时间很长的情况,可以调大gbase_buffer_result参数进行优化,该参数用于保存物化的中间结果,调大可以减少物化轮数,减少物化时间,设置方法如下:

set global gbase_buffer_result=536870912*2;  --大小1G,可根据实际调整,测试单条可尝试设置到16G或32G,但并发情况下不要设置太大,否则可能导致内存不足无法分配的情况。

有多个案例通过该参数进行了优化,其中一个案例由33s优化至20s,一个用例由125s优化至83s,性能提升30%左右,其他提升较小的不计。

评论

登录后才可以发表评论
崔哥发表于 5个月前
自是寻春去校迟,不须惆怅怨芳时。狂风落尽深红色,绿叶成阴子满枝。