У меня есть лямбда-функция, которая отправляет строку в Kinesis Firehose, а затем копируется в Redshift через Kinesis Firehose.Ниже приведена строка и код для ее отправки в лямбду:
final_string = '10:00:00;1;1;undefined'
response = firehose_client.put_record(
DeliveryStreamName='Track_2',
Record={
'Data':final_string
}
)
Строка представляет значения для четырех столбцов, разделенных знаком «;».Конфигурация в Kinesis Firehose для копирования выглядит следующим образом:
BLANKSASNULL
DELIMITER ';'
EMPTYASNULL
NULL AS 'null'
ESCAPE
REMOVEQUOTES;
И желаемый результат в Redshift будет следующим:
timestamp domain product source
10:00:00 1 1 undefined
Однако мне пришлось добавить еще один столбец дляизбегая Extra column(s) found error
, и что я на самом деле получаю в Redshift, так это:
timestamp domain product source extra_column
10:00:00 1 1 undefined10:00:00 1
Почему это так и как я могу это решить?