首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用消防软管传送AWS红移时的无效值错误

用消防软管传送AWS红移时的无效值错误
EN

Stack Overflow用户
提问于 2022-05-20 07:28:21
回答 1查看 163关注 0票数 0

我正在使用来传递到Redshift数据库。当火龙试图从S3桶上保存的流中执行复制查询时,我被困住了。

错误是

代码语言:javascript
运行
复制
ERROR:Invalid value.

就这样。为了减少这个错误,我尝试在没有显式的情况下复制错误;

代码语言:javascript
运行
复制
COPY firehose_test_table FROM 's3://xx/terraform-kinesis-firehose-test-stream-2-1-2022-05-19-14-37-02-53dc5a65-ae25-4089-8acf-77e199fd007c.gz' CREDENTIALS 'aws_iam_role=arn:aws:iam::xx' format as json 'auto ignorecase';

.gz中的数据是默认的AWS流数据,

代码语言:javascript
运行
复制
{"CHANGE":0.58,"PRICE":13.09,"TICKER_SYMBOL":"WAS","SECTOR":"RETAIL"}{"CHANGE":1.17,"PRICE":177.33,"TICKER_SYMBOL":"BNM","SECTOR":"TECHNOLOGY"}{"CHANGE":-0.78,"PRICE":29.5,"TICKER_SYMBOL":"PPL","SECTOR":"HEALTHCARE"}{"CHANGE":-0.5,"PRICE":41.47,"TICKER_SYMBOL":"KFU","SECTOR":"ENERGY"}

以及对象本身和目标表作为

代码语言:javascript
运行
复制
Create table firehose_test_table
(
      ticker_symbol varchar(4),
      sector varchar(16),
      change float,
      price float
);

我不知道下一步该怎么做,这个错误太没有启发性,无法理解问题。我还通过定义JSONpaths来尝试

代码语言:javascript
运行
复制
{
    "jsonpaths": [
        "$['change']",
        "$['price']",
        "$['ticker_symbol']",
        "$['sector']"
    ]
}

但是,也引发了同样的错误。我遗漏了什么?

EN

Stack Overflow用户

发布于 2022-05-20 14:54:37

有几件事要尝试..。

  1. GZIP选项配置中指定COPY。这在动态交付流文档中得到了明确的说明。

可以在Amazon命令中指定的参数。这些可能是您的配置所必需的。例如,如果启用了Amazon数据压缩,则需要"GZIP“。

  1. 显式地指定配置中的Redshift列名。以逗号分隔的列名列表的顺序必须与消息:change,price,ticker_symbol,sector中字段的顺序相匹配。
  2. 查询STL_LOAD_ERRORS红移表(错误文档)以查看COPY命令的错误详细信息。你应该能看到准确的错误。示例:select * from stl_load_errors order by starttime desc limit 10;
  3. 验证所有varchar字段不超过列大小限制。如果用例( TRUNCATECOLUMNS COPY )是可以接受的,您可以指定COPY选项。
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72315078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档