大数据计算MaxCompute不支持修改操作?
Failed, ErrorCode: 152, Error Message: ODPS-0110061: Failed to run ddltask-ODPS-0110061: Failed to run ddltask - Schema evolution DDLs is not enabled in
根据您提供的错误信息,看起来您尝试在MaxCompute中执行表结构修改操作,但系统返回了错误,提示“ODPS-0110061: Failed to run ddltask-ODPS-0110061: Failed to run ddltask - Schema evolution DDLs is not enabled in project”。
这可能是因为您所在的MaxCompute项目中,表结构修改权限没有被启用。要启用表结构修改权限,您需要在MaxCompute控制台中进行操作。以下是具体的步骤:
MaxCompute不支持直接修改表结构的操作,因为MaxCompute是一个基于列存储的大数据处理服务,其数据模型是静态的,不支持动态修改表结构。但是,MaxCompute支持通过数据操作(如INSERT、UPDATE、DELETE等)来实现对表结构的修改。
如果需要修改表结构,可以通过以下两种方式实现:
错误码:ODPS-0110061: Failed to run ddltask
错误1:Schema evolution DDLs is not enabled in current project:xxxx
错误信息
FAILED: Catalog Service Failed, ErrorCode: 152, Error Message: ODPS-0110061: Failed to run ddltask-Schema evolution DDLs is not enabled in current project:xxxx
错误码描述
当前项目默认不允许表结构变更(Schema Evolution),如新增struct类型的子列、删除列、修改列顺序和更改列数据类型。
解决方案
若您需要开通表结构变更(Schema Evolution),请运行setproject odps.schema.evolution.enable=true;命令,需要等待10分钟后才会生效,更多表结构变更点击参考分区和列操作。
错误2:ODPS-0110061: Failed to run ddltask - Modify DDL meta encounter exception
错误信息
ODPS-0110061: Failed to run ddltask - Modify DDL meta encounter exception : ODPS-0429311:Transaction aborted - MaxC Transaction aborted. Can't update ObjectId(objectType:PARTITION, dbName:mc_gjpt, tableName:xxxx, tableId:xxx, partitionId:xxxx, partitionName:pt=20221125, tenantId:, catalogName:xxx, catalogId:xxx, dbId:, projectName:xxx). BeginTs is less than lastCommitTs.objectId:ObjectId(objectType:PARTITION, dbName:xxx, tableName:xxxx, tableId:xxx, partitionId:xxx, partitionName:pt=20221125, tenantId:, catalogName:xxxx, catalogId:xxx, dbId:, projectName:xxxx), txnId:xxxxx, lastCommitTs:1709410212584448, lastMaxBeginTs:1709410182400000, isolation:NONSTRICT_SNAPSHOT_ISOLATION, op:UPDATE, isConstraintNotAllowInsertIntoReorder:false
错误码描述
用户在短时间内对Meta信息进行变更,导致Meta冲突报错。
解决方案
避免短时间内并发去更新Meta信息,建议更新Meta信息的操作间隔至少为一分钟。
ODPS-0110061 https://help.aliyun.com/zh/maxcompute/user-guide/odps-0110061?spm=a2c4g.11186623.0.i9
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。