Соединение клея AWS - PullRequest
       11

Соединение клея AWS

0 голосов
/ 07 мая 2019

Я новичок в AWS Glue и пытаюсь объединить два SQL-запроса Redshift, но не уверен, что у нас могут быть только выбранные поля, поскольку в моей основной таблице более 1000 полей.Ниже приведен запрос, который я пытаюсь сделать в Glue.

SELECT v.col1, 
       v.col2, 
       s.col3 
FROM 
(
   SELECT col1,
          col2 
   FROM t1 
   WHERE col1 > 0 
) v 
LEFT JOIN 
(
   SELECT col1, 
          col3 
   FROM t2 
   WHERE col1 > 0 
   GROUP BY col1
) s 
ON v.col1 = s.col1 

1 Ответ

1 голос
/ 07 мая 2019

Если вы пишете на Python, я бы либо использовал Spark sql, либо использовал функции объединения pysparks.

Для Spark SQL

1) Convert to a Apache Spark DataFrame using the toDF() function.
2) Make the Spark Data Frame Spark SQL Table using createOrReplaceTempView().
Then run sql and to what you posted above.

ИЛИ

Используйте PySpark

left_join = t1.join(t2, t1.col1 == t2.name,how='left')
left_join.filter(col('col1' > 0)) # Then filter afterwards

Будет ли это работать для вас?

...