pg如何保存中间结果

来源:互联网 发布:淘宝客服如何提高业绩 编辑:程序博客网 时间:2024/05/07 08:01

在作查询执行时,不知道中间结果如何保存,无法知道每个字段是什么类型, 尤其是作了sum,max等聚集函数后, 返回的字段完全不在系统的属性定义里面, 因此对于一个中间结果,需要一个描述这个tuple的数据结构.

在pg里面, 一条tuple使用TupleTableSlot保存, 它每个字段的信息是由TupleDesc保存. 注释中表明TupleTableSlot可以表示四种类型的tuple,其中前两种是物理上的tuple, 即对应于磁盘文件中的页, 存放在buffer中.另外两种还不知道是什么情况.

疑问:

  1. pg是如何根据TupleDesc获取TupleTableSlot中的某个列的
  2. pg中如何保存query中的谓词,并且进行对元组进行评估的
原创粉丝点击