You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Amazon S3 Select查询大型JSON对象时数据被截断的问题

问题:S3 Select查询大型JSON时结果被截断

JSON文档结构

存储在S3中的JSON文档结构如下(包含其他未展示字段),其中commits数组元素可达数千个:

{ "result": {
     "id": "123",
     "commits": ["comm1", "comm2", ..., "commN"]
   }
 }

执行的S3 Select查询命令

aws s3api select-object-content \
    --bucket my-bucket --key "path/result.json.gz" \
    --expression "select res.id, res.commits from S3Object[*].result res" \
    --expression-type 'SQL' \
    --input-serialization '{"JSON": {"Type": "DOCUMENT"}, "CompressionType": "GZIP"}' \
    --output-serialization '{"JSON": {}}' /dev/stdout | jq

问题现象

执行上述命令后,仅返回约20条commits记录,与预期的数千条不符。该对象采用gzip压缩,压缩后大小约4MB,解压后为69MB。

对S3 Select限制的疑惑

根据S3官方文档中的限制说明:

输入或结果中记录的最大长度为1 MB。

但存在以下困惑:

  • 未收到任何错误提示,仅数据被随机截断;查询其他字段时同样会出现截断,只是截断的元素数量不同。
  • 有用户反馈超出该限制时会收到“OverMaxRecordSize”错误,但自身执行查询时并未触发该错误。

无效的AI生成解决方案

咨询ChatGPT得到的解决方案中提及--payload、MaxPayloadInBytes或aws s3 select等内容,但这些参数或命令并未在官方文档中存在,属于AI幻觉内容,无法解决问题。

内容的提问来源于stack exchange,提问作者Juraj Martinka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 02:12:26