Сохранение PySpark в таблицу Redshift с режимом «Overwirte» приводит к удалению таблицы? - PullRequest
0 голосов
/ 21 мая 2018

Использование PySpark в AWS Glue для загрузки данных из файлов S3 в таблицу Redshift, в режиме использования кода («Overwirte») было получено сообщение об ошибке, что «невозможно удалить таблицу, потому что другой объект зависит от таблицы», оказалось, что естьпредставление, созданное поверх этой таблицы, показывает, что режим «Перезапись» фактически удаляет и заново создает таблицу красного смещения, а затем загружает данные. Есть ли вариант, что только «усеченная» таблица не удаляет его?

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Здесь есть соответствующая дискуссия, встроенная в ваш вопрос, где они использовали усечение вместо перезаписи, а также сочетание лямбды и клея.Пожалуйста, обратитесь здесь для подробных обсуждений и примеров кода.Надеюсь, это поможет.

С уважением

0 голосов
/ 21 мая 2018

AWS Glue использует разъем для смещения искрового красного смещения (это нигде не задокументировано, но я проверял это эмпирически).В документации соединителя Spark Redshift упоминается:

Перезапись существующей таблицы: по умолчанию эта библиотека использует транзакции для выполнения перезаписей, которые реализуются путем удаления таблицы назначения, создания новой пустой таблицы и добавления строк кит.

...