Я пытаюсь соединить две большие таблицы (в приведенном ниже примере таблицы a и b) двумя условиями с "ИЛИ".Это особое условие соединения (с «ИЛИ») называется Hive как перекрестное произведение.У нас есть какая-то конкретная причина для этого?
with Emp as
(
select 1 as id, 1 as mid, 'Praveen' as name
union all
select 2,200, 'Naveen'
union all
select 3,3, 'Sachin'
)
select a.id,b.mid,a.name
from emp a left join emp b
on (a.id = b.id OR a.id = b.mid)
;
Вот предупреждающее сообщение -
Warning: Shuffle Join JOIN[18][tables = [a, b]] in Stage 'Stage-1:MAPRED' is a cross product