人
已阅读
已阅读
APP开发人员必须掌握的数据库优化技能
来源:lexintech.com 发布时间:2019-05-17
在一个APP开发项目中,数据库设计和开发是相当重要的工作。对于一个数据库开发人员来说,数据库中最难以理解的模块,就是优化器。
作为APP开发团队中的数据库开发人员,如果对优化器不够了解,那他在对数据库数据库调优的过程中就会很难做好。从对优化器的掌握程度上来判断,数据库开发人员对优化器的理解大致可以分成以下几个层次。
一:粗浅了解,比如知道优化器分为逻辑优化和物理优化,了解一些逻辑优化的方法,知道执行计划的来源,能看懂优化器产生的执行计划。
二:详细了解,在粗浅了解的基础上,能够根据自己对优化器的了解,调整出优化器“喜爱”的 SQL 语句,并且对于产生的执行计划的优劣一目了然,知其然更知其所以然。
三:深度了解,需要对优化器的每个细节有清楚的认知,在我们写出一个 SQL 语句之后,可以庖丁解牛式地在脑海中浮现出语句在优化器中的优化过程,清楚地知道每个细节的实现过程。
要想达到层次一只需要阅读一些基础理论即可,通常,数据库初学者对优化器的了解都处于这个层次,但这种了解对于实际应用的意义不大。而要想达到层次三则需要细致地解读优化器的源代码,虽然作为数据库专家是必须要掌握到这一层的,但这个过程又过于“艰辛”。
而大多数数据库从业人员游走在两者之间,大家的目标无非是在数据库调优过程中手到擒来地使用优化器查询,也就是这里的层次二。
那么,有没有办法在不分析数据库内核源代码的情况下,从数据库使用者的角度出发,结合外在的系统表信息、参数信息、执行计划信息反向把优化器的原理讲清楚,从而确保大家进阶到层次二,掌握优秀的数据库开发人员必备的核心技能优化器呢?
答案是肯定的,通过深入的挖掘数据库的元数据、参数、执行计划,再结合数据库优化器的相关理论,一定能把优化器的实现说清楚。
- 上一篇:ToB产品和ToC产品之间的差别
- 下一篇:APP产品设计关于删除操作的处理