Я пытаюсь объединить две таблицы в pyspark, используя SQLContext:
create table joined_table stored
as orc
as
SELECT A.*,
B.*
FROM TABLEA AS A
LEFT JOIN TABLEB AS B ON 1=1
where lower(A.varA) LIKE concat('%',lower(B.varB),'%')
AND (B.varC = 0 OR (lower(A.varA) = lower(B.varB)));
Но я получаю следующую ошибку:
AnalysisException: u'Detected cartesian product for LEFT OUTER join between logical plans
parquet\nJoin condition is missing or trivial.\nUse the CROSS JOIN syntax to allow cartesian products between these relations.;
Edit:
Я решил проблему с помощью следующего в Spark:
conf.set('spark.sql.crossJoin.enabled', 'true')
Включает перекрестное соединение в Pyspark!