暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss训练营学习心得--SQL查询优化

原创 小文子 2022-05-16
559

        很幸运有机会参加8小时玩转openGauss训练营活动,这次活动讲解内容从概述到基本功能使用,再到优化、高可用、灾备等等;说实话,如果没有数据库基础,没有一点点工作经验的话,别说玩转了,也别说8小时了,给8天也不一定搞得懂。课堂时间短而枯燥,对于小白来说,如听天书,所以,课下又自己找了些资料区反复观看。

        对于开发来说,比较关注SQL查询优化这部分内容,感觉逻辑和之前Oracle数据库中学习的基本差不多,所以拿出来记录总结一下。

        从课件中可以看出,应用提交SQL之后:

        首先,openGauss会解析SQL的语法、语义、权限等等;

        然后,对SQL进行逻辑优化改写操作;

        再然后,进行物理优化阶段,即通过优化器进行成本估算,选择合适的执行计划;

        最后,根据执行计划执行SQL,并返回给客户端结果。

        在上述步骤中最关键的便是选择执行计划了,与Oracle一样,首先去查找数据库中与该SQL相关的对象的统计信息,根据统计来估算选择什么样的表连接方式,什么样的表访问方式等等;最后输出一个合理的执行计划;如E-ROWS , COST 等等指标都是执行计划输出的关键内容,也是开发人员分析判断和优化SQL时的重要依据。那么,在数据库中的统计信息的正确性必然是SQL优化的关键咯。

         对于初学者,或者初级开发人员,可能只关注我写的SQL有没有实现业务想要查询的数据,并不关注SQL的执行效率,所以也没有SQL优化的这个概念。在此写出来,希望自己也希望各位正在成长的小白or初级开发人员or其他相关人员,在学习过程中,能够逐渐深入,知其然,知其所以然。

 



最后修改时间:2022-05-16 20:58:12
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论