Kinesis Firehose 将 csv 数据加载到 Redshift

Kinesis Firehose load csv data into Redshift

我正在使用 Kinesis firehose 将数据处理成 redshift,我正在尝试 Json 和 Csv 格式。

Json 格式对我来说工作正常,数据正在加载到 redshift table。

复制用于 JSON 的命令:

从 's3://foldername/' 凭据 'aws_iam_role=arn:aws:iam:::role/' 清单中复制 products_json json 'auto';

用于放置记录的 CLI 命令:

aws firehose put-record --delivery-stream-name csvtoredshiftstreamingjson --record='Data="{\"productid\":1,\"productname\":\"phone\",\"productprice\":\"2.30\"}"'

然而,当我使用 CSV 时,数据存在于 S3 中,但未加载到 redshift 中。

用于 CSV 的复制命令:

从 's3://foldername/' 凭据 'aws_iam_role=arn:aws:iam:::role/' 清单中复制 products_csv csv;

用于放置 CSV 记录的 CLI 命令:

aws firehose put-record --delivery-stream-name csvtoredshiftstream --record='Data="1,Phone,2.30"'

正在将记录处理到 S3,但未加载到 redshift。 STL_LOAD_ERRORS table 也没有任何记录。

如果我遗漏了什么,请告诉我。

谢谢。

我能够通过在 Redshift 中解锁以下 Ips 来提供对 redshift 的 firehose 访问来解决这个问题

52.70.63.192/27 美国东部(弗吉尼亚北部) 52.89.255.224/27 美国西部(俄勒冈) 欧盟(爱尔兰)52.19.239.192/27

firehose 使用这些 IP 地址与 Redshift 通信。

感谢和问候, 斯里维涅什 KN