gpt4 book ai didi

sorting - Hive 数据记录的顺序是否对连接表很重要

转载 作者:行者123 更新时间:2023-12-04 14:25:10 25 4
gpt4 key购买 nike

我想知道连接两个表时数据记录的顺序是否重要(性能方面)?
附言我没有使用任何 map-side join 或 bucket join。

谢谢!

最佳答案

一方面,顺序无关紧要,因为在 shuffle join 期间,映射器并行读取文件,文件也可能在几个映射器之间拆分,反之亦然,一个映射器可以读取几个文件,然后映射器输出传递给每个映射器 reducer 。而且即使数据已排序,由于并行性,它也不会按顺序读取和分发

另一方面,排序根据数据熵改进压缩。类似的数据可以更好地压缩。因此,按顺序压缩的文件更小,并且在连接查询执行期间读取速度更快。这可能会提高连接速度,因为如果数据在加载期间按过滤列排序并启用 PPD,则映射器将更快地读取数据并且 ORC 中的内部索引可以高效工作。排序和压缩后的文件大小可以减少 3 倍甚至更多,这将导致映射器减少 3 倍。

当您编写和排序一次并读取多次时,排序是高效的。

关于sorting - Hive 数据记录的顺序是否对连接表很重要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47404937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com