原文:跟我一起读postgresql源码(六)——Executor(查询执行模块之——查询执行策略)

时光荏苒,岁月如梭。楼主已经很久没有更新了。之前说好的一周一更的没有做到。实在是事出有因,没能静下心来好好看代码。当然这不能作为我不更新的理由,时间挤挤还是有的,拖了这么久,该再写点东西了,不然人就怠懒了。不过这回,我准备写的精简些,一方面我想偷点懒省点时间,二来毕竟写太长大家也不一定爱看。 之前我说过的查询分析,查询重写和查询规划都是相当于是对查询的 编译 。那么编译完了就应该按照既定的策略去执 ...

2017-07-10 16:10 5 2090 推荐指数:

查看详情

跟我一起postgresql源码(七)——Executor(查询执行模块之——数据定义语句的执行)

1.数据定义语句的执行 数据定义语句(也就是之前我提到的非可优化语句)是一类用于定义数据模式、函数等的功能性语句。不同于元组增删査改的操作,其处理方式是为每一种类型的描述语句调用相应的处理函数。 数据定义语句的执行流程最终会进入到ProcessUtility处理器,然后执行语句对应的不同处理 ...

Thu Jan 04 21:33:00 CST 2018 0 1013
跟我一起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源码(三)——Rewrite(查询重写模块)

上一篇博文我们阅读了postgresql查询分析模块源码查询分析模块对前台送来的命令进行词法分析、语法分析和语义分析后获得对应的查询树(Query)。在获得查询树之后,程序开始对查询树进行查询重写处理。 这一篇文章我们进入查询重写模块源码的阅读。还记得上一篇文章的那张函数调用关系图 ...

Tue Nov 15 04:06:00 CST 2016 0 2935
跟我一起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