spark-sql --master yarn --driver-memory 10G --executor-memory 20G --executor-cores 20 --num-executors 20
(Я подал заявку на ресурс выше. Прошу прощения за то, что я не подал заявку на ресурсы на пропорциональной основе ...)
sql следующим образом:
select 'ADDRESS',count(a.pid)
FROM (SELECT pa.pid
FROM dmgr.ex_p10ids_address pa
WHERE pa.pt IN ('20200227')
AND pa.src_sys = 'APP0001'
AND pa.endtime = '99991231999'
AND pa.idtype NOT IN ('00')
AND certificate_type(pa.idtype, 'P10IDS') <> '0') a
LEFT JOIN (SELECT pr.apid, pr.pid
FROM p10ids_riskcon pr
WHERE pr.classcode NOT IN
('26371100', '26371200', '26371300', '13770100', '26376000')) b
ON a.pid = b.apid
OR a.pid = b.pid;
- принимает 6 часов, 33 минуты, 15se c.
две таблицы sr c имеют разный порядок величин:
select count(1) from (SELECT count(pa.pid)
FROM dmgr.ex_p10ids_address pa
WHERE pa.pt IN ('20200227')
AND pa.src_sys = 'APP0001'
AND pa.endtime = '99991231999'
AND pa.idtype NOT IN ('00')
AND certificate_type(pa.idtype, 'P10IDS') <> '0' --group by pa.pid
) t; --46644 /group by:45094
select count(1) from(
SELECT pr.apid, pr.pid
FROM p10ids_riskcon pr
WHERE pr.classcode NOT IN
('26371100', '26371200', '26371300', '13770100', '26376000')
--group by pr.apid, pr.pid
) t ; --14,9386,2737 / group by:4,8973,0113
Как сократить время работы? Что не так с моим искровым ресурсом sql? Надеюсь, что ваши комментарии ~