系统限制
本文介绍使用 StarRocks 系统时需要注意的事项。
-
StarRocks 采用 MySQL 协议进行通信,用户可通过 MySQL Client 或者 JDBC 连接到 StarRocks 集群。选择 MySQL Client 版本时建议采用 5.1 及之后的版本,5.1 之前版本不支持长度超过 16 个字符的用户名。
-
对数据目录名 (Catalog)、数据库名、表名、视图名、分区名、列名、用户名、角色名的要求:
- 只能由数字 (0-9)、字母 (a-z或A-Z),以及下划线 (_) 组成。用户名 (username) 可以使用纯数字命名。
- 可以以字母或下划线开头。
- 长度不能超过 64 个字符。几个特殊情况:
- 数据库名不能超过 256 个字符。
- 表名和列名不能超过 1024 个字符。
- 用户名 (username) 不能超过 128 个字符。
- 列名(包括列别名)、分区名、索引名大小写不敏感,其他名称大小写敏感。
-
对标签(Label)名的要求:
导入数据时可指定任务的标签(Label)。标签名可由数字 (0-9)、字母(a-z或A-Z),以及下划线(_)组成,且长度不能超过 128 个字符。标签名以字母或下划线开头。
-
建表时,Key 列不能使用 FLOAT 或者 DOUBLE 类型,可用 DECIMAL 类型表示小数。
-
VARCHAR 最大长度:
- 对于 StarRocks 2.1 之前的版本,长度范围为 1~65533 字节。
- 【公测中】自 StarRocks 2.1 版本开始,长度范围为 1~1048576 字节。1048578(行最大值)- 2(长度标识位,记录实际数据长度)= 1048576。
-
StarRocks 仅支持 UTF8 编码,不支持 GBK 等编码。
-
建表后,表类型不支持修改(比如不能将已有的明细表修改为主键表)。如果需要修改表类型,请重新建表。
-
StarRocks 不支持修改表的列名。
-
一个查询中子查询的最 大个数默认为 10000,可以通过 FE 参数
expr_children_limit
设置。