索引的 FRAGMENT BY 子句

使用 FRAGMENT BY 子句创建拆离索引,并在多个 sbspace 或分区上定义存储策略。

这类似表的 FRAGMENT BY 子句的语法,但索引分片不支持 ROUND ROBIN 关键字不。PARTITION BY 关键字是此上下文中 FRAGMENT BY 关键字的同义词。

索引的 FRAGMENT BY 子句
元素 描述 限制 语法
dbspace 存储索引分片的 dbspace 您能指定至多 2,048 个 dbspaces 。所有存储分片的 dbspaces 必须具有相同的页大小。 标识符
fragment _key 索引列上的强制转型、列或函数表达式。索引根据此表达式的值分片。 列只能来自当前的表。 表达式

此处 IN 关键字引入了用来存储索引分片的存储空间的名称。如果您在 IN 关键字时候列出多个 dbspace 名称,则使用圆括号来为 dbspace 列表定界。所有存储分片的 dbspaces 必须具有相同的页大小。将位于 EXPRESSION 关键字后面的分段定义列表括起的圆括号是可选的。

对于使用同一 RANGE 区间或者 LIST 分片策略作为它们表策略的索引,您在 PARTITION 关键字之后声明的每个分片的名称必须与对应表分片的标识符相同。

对于由 RANGE 区间分片策略分片的连接索引,如果在新插入的行的范围内不存在表分片,则数据库服务器创建一个新的表分片以存储新行,并为此新表分片声明系统生成的名称。如果该表被索引,且索引被与表相同的 RANGE 区间策略分片,则数据库服务器还会创建新的索引分片。在这种情况中,该索引分片具有与对应表分片相同的系统生成的标识符。有关系统生成的 RANGE 区间分片的信息,请参阅 Interval fragment 子句通过 RANGE INTERVAL 分片

1 请参阅 Interval fragment 子句
2 请参阅 列表分片子句
3 请参阅 表达式分片子句