华为云云数据库GaussDB案例:调整中间表存储方式_云淘科技

现象描述

在GaussDB中行存表天然的使用行执行引擎,列存表天然的使用列执行引擎。如果一个SQL语句涉及的表既有行存表又有列存表,系统会自动选择行执行引擎。由于列执行引擎的性能(除indexscan相关的算子)比行执行引擎性能要好很多,因此一般建议使用列存表。特别是对一些中间结果集转储的表,一定要分析清楚,使用合适的表存储类型。

某局点测试过程遇到如下的执行计划,客户希望将性能提升至3s内返回结果。

优化分析

经过分析发现计划走了行引擎。根本原因是:临时计划表input_acct_id_tbl和中间结果转储表row_unlogged_table使用了行存表。

修改这两个表为列存表之后,性能提升至1.6s。

父主题: 实际调优案例

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家