n路排序 - 合并 - 连接算法效率

时间:2015-03-03 18:20:17

标签: database algorithm sorting

执行n路sort-merge-join与按顺序执行双向sort-merge-join是否有优势?

是否存在双向连接可能更有效的情况?

谢谢!

1 个答案:

答案 0 :(得分:2)

n路合并连接将需要较少的数据传递才能完成排序。在外部排序的情况下,每次通过大小的次数是您必须执行的I / O量。如果您的运行时间受I / O限制,那么减少I / O肯定是好的。例如,当http://vkundeti.blogspot.com/2008/03/tech-algorithmic-details-of-unix-sort.html指出时,标准的Unix排序实用程序会因此而进行16路合并。因此,在1次传球中,它会执行4次传球,这意味着整个速度是4倍。

但是双向合并连接更容易编码,并且可以减少比较。