Im Ausführen dieser Abfrage unten auf Spark, aber es funktioniert nicht. Wenn es bei der Stufe 13 ankommt, blockiert es. Und der Speicherplatz erhöht sich, während blockiert wird in der gleichen Phase nichts und dann, wenn die Festplatte voll wird. Etwas stimmt nicht mit der Abfrage. Siehst du, was in der Spark-Abfrage falsch ist?Spark-Abfrage etwas falsch, weil die Verarbeitung in einer Stufe blockiert und bleibt dort blockiert, bis die Festplatte voll
Zunächst erstelle ich einen Blick in hive:
create view q2_min_ps_supplycost as
select
p_partkey as min_p_partkey,
min(ps_supplycost) as min_ps_supplycost
from
part,
partsupp,
supplier,
nation,
region
where
p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = 'EUROPE'
group by
p_partkey;
Dann wird die Abfrage in Funken mit hivecontext verwendet:
select
s_acctbal,
s_name,
n_name,
p_partkey,
p_mfgr,
s_address,
s_phone,
s_comment
from
part,
supplier,
partsupp,
nation,
region,
q2_min_ps_supplycost
where
p_partkey = ps_partkey
and s_suppkey = ps_suppkey
and p_size = 37
and p_type like '%COPPER'
and s_nationkey = n_nationkey
and n_regionkey = r_regionkey
and r_name = 'EUROPE'
and ps_supplycost = min_ps_supplycost
and p_partkey = min_p_partkey
order by
s_acctbal desc,
n_name,
s_name,
p_partkey
limit 100;
Nun, Sie verbinden viele Tische zusammen. Wie groß sind die Tische? Und können Sie einen Screenshot der DAG hinzufügen, damit wir sehen können, was in Phase 13 ist? –