У меня простой запрос:
select
farm_fingerprint(REPLACE(concat(coalesce(CAST(UPPER(Field1) AS STRING),''), coalesce(Field2 ,'')),' ','')) as PROPERTYID
from `mother-216719.DS1.TBL1` M
Join `mother-216719.DS1.TBL2` B on B.id = M.Internal_FA_Property_Ref_ID
join `mother-216719.DS2.TBLA` T on T.ATTOM_ID = B.ATTOM_ID
LIMIT 10
поля объединения - int64 против int64. TBL2 (B) является мостовой таблицей между TBL1 и TBLA. Цель состоит в том, чтобы объединить поля между TBL1 и TBLA для консолидированных полей.
Сведения о выполнении задания указывают на значительные сеансы повторного разделения, и хотя оценка запроса указывает, что запрос должен обрабатывать 17,5 ГБ, однако выполнение задания показывает 40,5 ГБ перемешиваются. когда я LIMIT 10
это занимает 3 минуты. если я удаляю LIMIT
, запрос выполняется в течение шести часов, а затем завершается неудачей.
Как это исправить? Спасибо!