了解全局二级索引功能。

  • 数据表与索引表之间以异步方式同步数据,正常情况下同步延迟达到毫秒级别。
  • 支持单列索引和组合索引。
  • 支持索引表带有属性列(Covered Indexes)。

    在创建数据表时预先定义一些列(称为预定义列)后,可以对任意预定义列和数据表主键列进行索引,指定数据表的若干个预定义列作为索引表属性列。索引表中也可以不包含任何属性列。

    当指定数据表的若干个预定义列作为索引表属性列时,读取索引表可以直接得到数据表中对应预定义列的值,无需反查数据表。例如数据表有PK0、PK1、PK2三列主键,Defined0、Defined1、Defined2三列预定义列。
    • 索引列可以是PK2,没有属性列或者属性列是Defined0。
    • 索引列可以是PK1、PK2,没有属性列或者属性列是Defined0。
    • 索引列可以是PK2、PK1、PK0,属性列是Defined0、Defined1、Defined2。
    • 索引列可以是Defined0,没有属性列。
    • 索引列可以是Defined0、PK1,属性列是Defined1。
    • 索引列可以是Defined1、Defined0,没有属性列或者属性列是Defined2。
  • 支持稀疏索引(Sparse Indexes)
    如果数据表的某个预定义列作为索引表的属性列,当数据表某行中不存在该预定义列时,只要索引列全部存在,仍会为此行建立索引。但是如果部分索引列缺失,则不会为此行建立索引。例如数据表有PK0、PK1、PK2三列主键,Defined0、Defined1、Defined2三列预定义列,设置索引表主键为Defined0、Defined1,索引表属性列为Defined2。
    • 当数据表某行中,只包含Defined0、Defined1两列,不包含Defined2列时,会为此行建立索引。
    • 当数据表某行中,只包含Defined0、Defined2两列,不包含Defined1列时,不会为此行建立索引。
  • 支持在已存在的数据表上进行创建和删除索引操作。
  • 支持新建的索引表中包含数据表中的存量数据。