GBase 8a
性能调优
文章
GBASE8A sql优化建议
发表于2024-12-31 10:32:1639次浏览0个评论
1.尽量不用游标
游标的操作类似将每行的值取出来,做一系列处理。如果可以去掉游标,改成一条包含多个相关子查询的SQL,性能将大大提升。
2.尽量使用VARCHAR不用CHAR
CHAR的空格可能影响性能;
CHAR和VARCHAR的关联会导致关联不正确。
3.尽量使用UNION ALL尽量不用UNION
由于UNION操作需要进行一次去重,去重对于性能影响很大,尽量保证相同数据只入库一次,不同表间无重复数据,进行UNION ALL性能会很大提升。
4.避免超大结果集的直接返回
对于查询结果集达到1万以上,尤其是百万、千万的结果集,应避免结果集的直接返回,将原始select修改为insert select,即将查询结果插入到一个结果表中或者在客户端输出时要加-q参数。
5.高精度DECIMAL可能使性能变慢
如果系统升级前使用的是低精度decimal,则升级后的高精度decimal可能使得性能变慢,这是由于高精度decimal的关联,取值等操作均要耗费更多的资源,但是这种性能变慢是正常的,只要在一个合理可接受的范围内,就不需要考虑这个问题。
评论
登录后才可以发表评论
热门帖子
- 12025-12-01浏览数:182764
- 22023-05-09浏览数:25062
- 42023-09-25浏览数:18526
- 52020-05-11浏览数:17529