分区表中,分区键字段允许设置为以下哪种类型?()
A. BLOB
B. TEXT
C. INT
D. LONGTEXT
2 个赞
正确答案是 C. INT 。
详细解析:
在关系型数据库(如 OceanBase、GaussDB、MySQL 等)中,分区键(Partition Key)的选择需要满足可排序性和哈希计算效率等要求。因此,通常仅支持数值型、日期型和定长/变长字符型作为分区键1。
-
选项 A (BLOB) 错误 :
BLOB(二进制大对象)类型由于长度不可控且缺乏统一的全序关系定义,无法高效地进行范围比较或哈希计算,因此不支持作为分区键1。 -
选项 B (TEXT) /
选项 D (LONGTEXT) 错误 :
TEXT 和 LONGTEXT 属于大文本类型,与 BLOB 类似,它们可能达到 GB 级别的大小。如果将其作为分区键,会导致元数据膨胀、索引效率下降以及内存中的快速比对成本过高,所以主流数据库均不支持此类大对象类型直接作为分区键1。 -
选项 C (INT) 正确 :
INT 属于标准的整数(数值型)数据类型。它具备固定的存储长度、明确的大小比较关系以及极低的哈希计算开销,是绝大多数数据库中最常见且完美支持的分区键类型1。