Advertisement

Hive的连接方法

阅读量:

Hive的三种join方式:

复制代码
    Common/Shuffle/Reduce Join(正常/一般情况)
    Map Join(大小表join、不等值join、结合union all) 
    SMB(Sort-Merge-Buket) Join(大表join大表)

Shuffle Join

Shuffle Join是一种高效的关联操作,在Hive数据库中被称为Common Join或Reduce Join操作。当两侧的数据量都非常庞大时,该方法会将具有相同键值对的数据进行合并,并最终完成数据的整合。

• Map阶段:
o 提取源数据集进行映射操作,在Map任务中使用Join条件指定键值结构,并将关联后的结果作为输出;同时在输出结果中标识对应来源表的信息以便后续处理;
• Shuffle阶段:
o 采用哈希算法对键值对进行分组,并将它们分配到对应的reducer节点;通过哈希运算实现跨表数据的分区处理;
• Reduce阶段:
o 基于键值对执行关联操作,并利用Tag字段区分不同来源的数据特征;通过Tag信息实现跨表数据的有效识别与整合;

Map Join

该操作在Map阶段完成表之间的联结,并无需进入Reduce阶段即可完成;通过避免Shuffle环节中产生的大量数据传输开销从而提升了整体效率;同时该技术可作

全部评论 (0)

还没有任何评论哟~