原文:跟我一起读postgresql源码(三)——Rewrite(查询重写模块)

上一篇博文我们阅读了postgresql中查询分析模块的源码。查询分析模块对前台送来的命令进行词法分析 语法分析和语义分析后获得对应的查询树 Query 。在获得查询树之后,程序开始对查询树进行查询重写处理。 这一篇文章我们进入查询重写模块源码的阅读。还记得上一篇文章的那张函数调用关系图么 不记得没关系,我再放一遍。 上次的查询分析模块走了 这些步骤。而查询重写模块即如上图的标记所示,函数pg r ...

2016-11-14 20:06 0 2935 推荐指数:

查看详情

跟我一起postgresql源码(五)——Planer(查询规划模块)(下)

上一篇我们介绍了查询规划模块的总体流程和预处理部分的源码查询规划模块再执行完预处理之后,可以进入正式的查询规划处理流程了。 查询规划的主要工作由grouping_planner函数完成。在具体实现的时候,针对postgresql中独有的继承表,程序使用inheritance_planner函数 ...

Fri Nov 25 15:12:00 CST 2016 2 2912
跟我一起postgresql源码(四)——Planer(查询规划模块)(上)

时间一晃周末就过完了,时间过得太快,不由得让人倍加珍惜。时间真是不够用哈~ 好的不废话,这次我们开始看查询规划模块源码吧。 查询规划部分的在整个查询处理模块应该是在一个非常重要的地位上,这一步直接决定了查询的方式与路径,很大程度上影响了数据库查询查询性能。因此这一块代码量也很大,我也会花 ...

Tue Nov 22 05:46:00 CST 2016 2 2259
跟我一起postgresql源码(一)——psql命令

进公司以来做的都是postgresql相关的东西,每次都是测试、修改边边角角的东西,这样感觉只能留在表面,不能深入了解这个开源数据库的精髓,遂想着看看postgresql源码,以加深对数据库的理解,也算是好好提高自己。 但是目标很性感,现实很残酷,postgesql的源码都已经百万级 ...

Tue Nov 01 06:05:00 CST 2016 5 8801
跟我一起 linux 源码 01】boot

计算机启动流程在我的上一个学习计划《自制操作系统》系列中,已经从完全不知道,过渡到了现在的了如指掌了,虽然有些夸张,但整个大体流程已经像过电影一样在我脑海里了,所以在看 linux 源码的这个 boot 部分时,几乎是看到的地方即使自己写不出,也知道它究竟在做什么,以及下一步可能要做什么,真的特别 ...

Fri May 15 04:51:00 CST 2020 0 1022
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM