Merge Join合并的过程

SMJ合并匹配记录的方法是,设结果集set1,set2内有已排序记录

set:   1 ,1,2,2,3,4,,6

=(做相等的smj)

set2: 2,2,3,3,4,5,6,6

装载排好序的两个结果集中的第一个 lowest col 数据。然后比较大小,

如果相等的话 就做笛卡尔积,然后把结果放到 输出缓存中。

如果假设set1的 lowest col比 set2的lowest col要小的话,那么就把set1的lowet col 数据丢弃掉。然后读取下一个loweset col 数据集(一定比上一个数据大)。

然后比较如果相等的话 就再做笛卡尔积,然后要把结果放到缓存中,如果缓存满了就flush,输出到客户端。

如果这时set2的lowest col 小了,那么久丢弃掉set2的 lowest col,然后要去读取 set2中 的下一个lowest col,然后要做比较。

直到两边的数据都弄完了才行。
标签: 暂无标签
shengbinqian

写了 3 篇文章,拥有财富 57,被 1 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

成为第一个吐槽的人

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈