将 gzipped json 文件加载到 redshift
loading gzipped json file into redshift
我正在寻找从看起来像这样的 s3 gzip 文件加载:
{"a": "a", "b": "a", "time": "20210210T10:10:00"}
{"a": "b", "b": "b", "time": "20210210T11:10:00"}
我事先在 redshift 中创建了 table:
create table stTest(
a varchar(50),
b varchar(50),
time varchar(50));
这就是我 运行 得到的:
db=# COPY stTest FROM 's3://bucket/file.gz' credentials 'aws_access_key_id=x;aws_secret_access_key=y' json 'AUTO' gzip ACCEPTINVCHARS ' ' TRUNCATECOLUMNS TRIMBLANKS;
ERROR: S3 path "AUTO" has invalid format.
DETAIL:
-----------------------------------------------
error: S3 path "AUTO" has invalid format.
code: 8001
context: Parsing S3 Bucket
query: 72165606
location: s3_utility.cpp:132
process: padbmaster [pid=4690]
-----------------------------------------------
希望得到一些帮助。
您需要指定 json 字段到 Redshift 列映射。这是通过 FORMAT 选项和 jsonpaths 文件完成的。有关 json 路径文件的格式,请参阅 https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-format.html#copy-format。
我正在寻找从看起来像这样的 s3 gzip 文件加载:
{"a": "a", "b": "a", "time": "20210210T10:10:00"}
{"a": "b", "b": "b", "time": "20210210T11:10:00"}
我事先在 redshift 中创建了 table:
create table stTest(
a varchar(50),
b varchar(50),
time varchar(50));
这就是我 运行 得到的:
db=# COPY stTest FROM 's3://bucket/file.gz' credentials 'aws_access_key_id=x;aws_secret_access_key=y' json 'AUTO' gzip ACCEPTINVCHARS ' ' TRUNCATECOLUMNS TRIMBLANKS;
ERROR: S3 path "AUTO" has invalid format.
DETAIL:
-----------------------------------------------
error: S3 path "AUTO" has invalid format.
code: 8001
context: Parsing S3 Bucket
query: 72165606
location: s3_utility.cpp:132
process: padbmaster [pid=4690]
-----------------------------------------------
希望得到一些帮助。
您需要指定 json 字段到 Redshift 列映射。这是通过 FORMAT 选项和 jsonpaths 文件完成的。有关 json 路径文件的格式,请参阅 https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-format.html#copy-format。