FAILED: ODPS-0010000:System internal error - fuxi job failed, caused by: String length 9165320 is larger than maximum 8388608,咨询下DataWorks这个问题是如何产生的,该如何解决?开发环境上运行相同的代码没有问题
session级别设置set odps.sql.cfiles.field.maxsize=16384,默认8m不建议设置太大,会导致内存溢出。
setproject odps.sql.cfile2.field.maxsize=16384; 这个flag是用来项目级别限制每列字符串类型最大能写入的长度,单位为KB,默认8192(也就是8M),最大值262144。需要说明的是,String size在极端比较大的场景下,会有OOM问题的风险,所以是不建议设置比较大的值,目前设置到16384,是相对可控的,此回答整理自钉群“DataWorks0群已满,新群请看群公告”
这个问题看起来是在使用阿里云的DataWorks进行数据操作时出现的,具体是在进行ODPS(开放数据处理服务)的操作时出现了错误。错误代码ODPS-0010000
提示了一个系统内部错误,而后面的错误信息String length 9165320 is larger than maximum 8388608
则明确指出了字符串的长度超过了最大允许的长度8388608。
这个问题的产生可能是由于你正在尝试上传或处理的数据中存在某些字符串字段的长度超过了ODPS的限制。ODPS为了限制单个记录的大小,对字符串字段的长度做了限制,这个限制是8MB(8388608字节)。
解决这个问题的方法主要有两种:
在选择解决方案时,你需要考虑到哪种方法更符合你的实际情况和需求。如果数据量不大,或者你有足够的时间和资源来处理这个问题,那么你可以选择第一种方法。如果数据量很大,或者你需要尽快上线,那么你可能需要选择第二种方法。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。