CMU15445 Fall 2019项目有哪些具体要求?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4369个文字,预计阅读时间需要18分钟。
前言:经过前面两个实验的铺垫,我终于到了给数据库系统添加执行查询计划功能的时候了。
给定一条SQL语句,我们可以将其中的操作符组合成一棵树,其中每个父节点都对应一个子节点。这棵树中的每个节点都代表SQL语句中的一个操作符。
前言经过前面两个实验的铺垫,终于到了给数据库系统添加执行查询计划功能的时候了。给定一条 SQL 语句,我们可以将其中的操作符组织为一棵树,树中的每一个父节点都能从子节点获取 tuple 并处理成操作符想要的样子,下图的根节点 \(\pi\) 会输出最终的查询结果。
对于这样一棵树,我们获取查询结果的方式有许多种,包括:迭代模型、物化模型和向量化模型。本次实验使用的是迭代模型,每个节点都会实现一个 Next() 函数,用于向父节点提供一个 tuple。从根节点开始,每个父节点每次向子节点索取一个 tuple 并处理之后输出:
实验主要有三个任务:目录表、执行器和用线性探测哈希表重新实现 hash join 执行器,下面会一个个介绍这几个任务的完成过程。
本文共计4369个文字,预计阅读时间需要18分钟。
前言:经过前面两个实验的铺垫,我终于到了给数据库系统添加执行查询计划功能的时候了。
给定一条SQL语句,我们可以将其中的操作符组合成一棵树,其中每个父节点都对应一个子节点。这棵树中的每个节点都代表SQL语句中的一个操作符。
前言经过前面两个实验的铺垫,终于到了给数据库系统添加执行查询计划功能的时候了。给定一条 SQL 语句,我们可以将其中的操作符组织为一棵树,树中的每一个父节点都能从子节点获取 tuple 并处理成操作符想要的样子,下图的根节点 \(\pi\) 会输出最终的查询结果。
对于这样一棵树,我们获取查询结果的方式有许多种,包括:迭代模型、物化模型和向量化模型。本次实验使用的是迭代模型,每个节点都会实现一个 Next() 函数,用于向父节点提供一个 tuple。从根节点开始,每个父节点每次向子节点索取一个 tuple 并处理之后输出:
实验主要有三个任务:目录表、执行器和用线性探测哈希表重新实现 hash join 执行器,下面会一个个介绍这几个任务的完成过程。

