Teradata 简明教程

Teradata - Secondary Index

表只能包含一个主键索引。更常见的是,您将遇到表包含其他列的情况,其中使用经常访问数据。Teradata 将对这些查询执行全表扫描。辅助索引解决了此问题。

辅助索引是访问数据的替代路径。主键索引与辅助索引之间存在一些差异。

  1. 辅助索引不参与数据分布。

  2. 辅助索引值存储在子表中。这些表内置于所有 AMP 中。

  3. Secondary indexes are optional.

  4. 它们可以在创建表时或创建表后创建。

  5. 由于构建子表并使用它,它们占用额外空间,并且由于需要为每一行更新子表,它们还需要维护。

有两种类型的二级索引 -

  1. Unique Secondary Index (USI)

  2. Non-Unique Secondary Index (NUSI)

Unique Secondary Index (USI)

唯一二级索引仅允许定义为 USI 的列的唯一值。通过 USI 访问行是两 amp 操作。

Create Unique Secondary Index

以下示例在 employee 表的 EmployeeNo 列上创建 USI。

CREATE UNIQUE INDEX(EmployeeNo) on employee;

Non Unique Secondary Index (NUSI)

非唯一二级索引允许定义为 NUSI 的列的重复值。通过 NUSI 访问行是全部-amp 操作。

Create Non Unique Secondary Index

以下示例在 employee 表的 FirstName 上创建 NUSI。

CREATE INDEX(FirstName) on Employee;