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

S3 Select查询遇MaxRecordSize错误,如何定位超1MB记录?

找出ldjson.gz中超过1MB的记录

要从properties.ldjson.gz里筛选出字符数超过1,048,576(1MB)的记录,直接用命令行工具就能搞定,以下是两种实用方法:

方法一:直接提取超大记录并保存

用zcat解压压缩文件,配合awk统计每行字符数,同时输出行号、字符数和完整记录到文件:

zcat properties.ldjson.gz | awk '{ if (length($0) > 1048576) print NR ": " length($0) " 字符\n" $0 }' > oversized_records.txt

执行后,超大记录会被保存到oversized_records.txt里,方便后续查看和处理。

方法二:先定位行号再提取

如果只想先快速找到哪些行是超大记录,可先用下面的命令输出行号和对应字符数:

zcat properties.ldjson.gz | awk '{ print NR, length($0) }' | awk '$2 > 1048576'

得到行号后,再用sed单独提取指定行的记录:

zcat properties.ldjson.gz | sed -n '替换成实际行号p'

注:你之前切换CSV格式没用,是因为那条超大记录本身的字符数已经超过AWS的阈值,必须先定位并处理这条记录才能解决查询报错问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 16:35:23