MaxCompute SQL是专门为大规模数据集设计的SQL语言,在服务大规模数据场景的同时,也需要遵循一定的限制来确保系统的稳定性和运行效率,本文为您介绍MaxCompute SQL的限制项。
限制项 | 最大值/限制条件 | 分类 | 说明 |
表名长度 | 128字节 | 长度限制 | 表名、列名中不能有特殊字符,必须以字母开头,且只能使用英文小写字母(a-z)、英文大写字母(A-Z)、数字和下划线(_)。 |
注释长度 | 1024字节 | 长度限制 | 长度不超过1024字节的有效字符串。 |
表的列定义 | 1200个 | 数量限制 | 单表的列定义个数最多为1200个。 |
单表分区数 | 60000个 | 数量限制 | 单表的分区个数最多为60000个。 |
表的分区层级 | 6级 | 数量限制 | 在表中创建的分区层次不能超过6级。 |
屏显 | 10000行 | 数量限制 | SELECT语句屏显最多输出10000行。 |
| 256个 | 数量限制 |
|
| 256个 | 数量限制 |
|
| 128个 | 数量限制 |
|
| 512 MB | 数量限制 |
|
| 1000行 | 数量限制 | 子查询中存在分区列时,子查询的返回结果不能超过1000行。 |
SQL语句长度 | 2 MB | 长度限制 | SQL语句的最大长度为2 MB。包括您使用SDK调用SQL的场景。 |
列记录长度 | 8 MB | 数量限制 | 表中单个单元的最大长度为8 MB。 |
IN的参数个数 | 1024 | 数量限制 | IN的最大参数限制,例如 |
| 1 MB | 长度限制 |
|
视图 | 不可写 | 操作限制 | 视图不支持写入,不支持 |
列的数据类型 | 不可修改 | 操作限制 | 不允许修改列的数据类型及列位置。 |
Java UDF函数 | 不允许为 | 操作限制 | Java UDF函数不能为 |
最多查询分区个数 | 10000个 | 数量限制 | 最多查询分区个数不能超过10000个。 |
SQL执行计划长度 | 1 MB | 长度限制 | MaxCompute SQL生成的执行计划不能超过1 MB,否则会触发 |
单作业最大执行时间 | 72小时 | 运行时长限制 | 默认情况下,SQL单个作业的最长运行时间为24小时,可以通过下面的参数设置,将单个作业的最长运行时间增加到72小时。目前SQL作业不能超过72小时,超过后会自动停止运行。
|
上述部分MaxCompute SQL限制项不支持修改。