Привет, у меня есть файл, в котором столбцы разделены символом «|». и строки разделены знаком ','. Я хочу загрузить в таблицу с помощью команды копирования. Не могли бы вы предложить мне, как я могу это сделать?
Amazon Redshift Команда КОПИРОВАТЬ имеет параметр DELIMITER
, который «указывает один символ ASCII, который используется для разделения полей во входном файле, например, символ вертикальной черты (|), запятая (,) или табуляция (\t)».
Однако все строки должен заканчиваются символом новой строки (CR). Это невозможно, чтобы указать, что строки заканчиваются запятой.
Вам потребуется предварительно обработать этот файл, чтобы преобразовать его в формат, совместимый с командой Amazon Redshift COPY.
В качестве альтернативы, поскольку вы упомянули Python, вы можете написать программу Python для чтения строк, а затем отправить данные в Redshift с помощью операторов INSERT
. Однако это гораздо менее эффективно, чем использование команды COPY
, а также требует, чтобы вы установили соединение с Redshift через клиент SQL (например, psycopg2
) или API данных Amazon Redshift.