wenn ich diese SQL ausführen, dauert es etwa eine halbe Stunde und es ist inakzeptabel. Die Quellentabelle hat 20M Datensätze.Rang() 20M Datensätze in Bienenstock
Mit jedem Rang() erstellen Sie einen mapreduce-Job, der 7 Minuten lang ausgeführt wird, wobei alle Daten in einem Reduzieren enthalten sind. Wie optimiert man diese SQL? Können diese Rank MapReduce parallel laufen?
create table tmp.xxxx as
SELECT t.end_user_id,
t.pm_net_amt,
t.parnt_ordr_num,
rank() over(order by t.pm_net_amt) pm_net_amt_rank,
rank() over(order by t.parnt_ordr_num) parnt_ordr_num_rank,
rank() over(order by t.cat_lvl3_num) cat_lvl3_num_rank,
rank() over(order by t.discount_rate) discount_rate_rank
from bi_tmp.bbbbbb t;
Der Parameter hive.exe.parallel ist bereits auf TRUE und hive.exe.parallel.thread.number = 8 gesetzt. –