假设我必须对表t1和t2进行分区(day,country),并并行运行两个查询,类似于:
INSERT OVERWRITE TABLE T1 PARTITION (day, country) SELECT * FROM T2 WHERE country='DE'
INSERT OVERWRITE TABLE T1 PARTITION (day, country) SELECT * FROM T2 WHERE country='FR'
因此,对于非重叠查询。我不知道这个案子发生了什么?医生说https://cwiki.apache.org/confluence/display/hive/locking#locking-关闭并发我的理解是,第二个查询必须等到第一个查询完成。
1条答案
按热度按时间67up9zun1#
我不认为这是可能的,因为每当您尝试在配置单元中的表上插入覆盖时,该表将处于独占锁定模式。。。这意味着您只能从该表中读取内容,而不能向该表中添加内容。
请参阅以下描述配置单元中锁定机制的链接:https://cwiki.apache.org/confluence/display/hive/locking