查询在Cloudera Cluster上的Impala中:
涉及两个表,一个5亿,另一个9亿
查询:
create table Citz0063.${VERSION}_pas_prev_ah partitioned by (date_pull) stored as parquet as
select pas.acct_num, max(ah.date_pull) as prev_ah_date_pull,pas.date_pull
from Citz0063.v201810_pas_test pas
inner join Citz0063.v201810_ah01 ah on ah.id_acct=pas.acct_num and cast(ah.date_pull as int)<=cast(pas.date_pull as int)
group by pas.date_pull,pas.acct_num;
结果有4亿条记录。
在执行查询期间,我注意到该计划中有13个阶段,其中一个阶段生成一个140亿行的表。
非常感谢。任何建议/线索都表示赞赏。