Проблема копирования CSV в Redshift DB со столбцом, содержащим JSON - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь скопировать файл CSV из корзины S3 в базу данных RS:

copy "boss"."revenue"
from 's3://path-to-my-csv.csv.gz'
iam_role 'my-iam-role'
region 'region'
CSV
QUOTE '"'
DELIMITER ','
IGNOREHEADER 1
TRIMBLANKS
BLANKSASNULL
IGNOREBLANKLINES null as '\0'
gzip
maxerror as 10000;

Все работает отлично, но один из столбцов - это сериализованный объект JSON, в котором отсутствуют обратные косые черты \.

Файл CSV выглядит следующим образом:

"Date","Details"
"2018-01-17","{\"transactions\": 324, \"label\": \"IBM\"}"
"2018-01-18","{\"transactions\": 245, \"label\": \"Apple\"}"

В конфигурации, описанной ранее, я могу найти ошибки в stl_load_errors, говорящие о том, что при импорте возникли проблемы с символом \\.Когда я изменяю QUOTE '"' на QUOTE '\\', возникают проблемы с символом { в таблице stl_load_errors.

Есть ли у вас какие-либо идеи, как импортировать весь CSV, включая JSON?

...