AWS Spectrum Scan Error压缩文件结束异常



我想使用AWS Spectrum -基于S3文件的Redshift查询。

由于您可以选择S3中的文件夹或JSON文件,因此我选择使用JSON文件作为位置。

错误:

当我引用文件test在一个文件夹-红移工作完美。

当我引用引用文件testJSON file时,我尝试在整个文件上运行查询,它失败了:

select count(*)
from test

错误:Unexpected end of compressed file. File may be truncated.

奇怪的是-如果我只查询X行,它工作:

select *
from test
limit 100;

这意味着我创建的表(当我创建外部表时)的列是正确的。我在JSON文件中遗漏了什么吗?我是这样写的(摘自AWS文档):

{
"entries": [
{"url":"s3://s3_bucket/SpectrumTest/test.gz", "meta": { "content_length": 4668469 } }
]
}

content_lengthbytes中的文件大小。因为文件改变了,但JSON manifest仍然使用旧的content_length,它没有加载整个文件,导致关于压缩文件结束的错误。

limit 100工作的原因是因为DBeaver将结果保存在缓存中。

希望这对将来的任何人都有帮助。

相关内容

  • 没有找到相关文章

最新更新