Join 如果有两个以上的表,bucketing有何帮助。(配置单元排序合并Bucket连接)

Join 如果有两个以上的表,bucketing有何帮助。(配置单元排序合并Bucket连接),join,hive,partitioning,apache-tez,Join,Hive,Partitioning,Apache Tez,我们知道map join和SMBM join如何减少执行时间(消除reduce阶段,即消除洗牌) 例:用于两个表之间的联接 从中选择a.col1、b.col2 a.col1=b.col1上的连接b (两个工作台在col1上扣入相同数量的铲斗) 但是当在不同的列上连接3个或更多的表时 例: 选择a。col1,b.col3,c.col2,d.日期从 a连接b在a.id=b.id连接c在a.state=b.state连接d在c.date=d.date 类似这样的场景,如果我们不想将查询拆分为多个较小的

我们知道map join和SMBM join如何减少执行时间(消除reduce阶段,即消除洗牌)

例:用于两个表之间的联接 从中选择a.col1、b.col2 a.col1=b.col1上的连接b (两个工作台在col1上扣入相同数量的铲斗)

但是当在不同的列上连接3个或更多的表时

例: 选择a。col1,b.col3,c.col2,d.日期从 a连接b在a.id=b.id连接c在a.state=b.state连接d在c.date=d.date

类似这样的场景,如果我们不想将查询拆分为多个较小的查询,bucketing将有多大帮助