Teradata - 二級索引



一個表只能包含一個主鍵索引。更常見的是,你會遇到表包含其他列的情況,使用這些列可以頻繁地訪問資料。對於這些查詢,Teradata 將執行全表掃描。二級索引解決了這個問題。

二級索引是訪問資料的另一條路徑。主鍵索引和二級索引之間存在一些差異。

  • 二級索引不參與資料分佈。

  • 二級索引值儲存在子表中。這些表在所有 AMP 中構建。

  • 二級索引是可選的。

  • 它們可以在建立表時建立,也可以在建立表之後建立。

  • 它們佔用額外的空間,因為它們構建子表,並且它們也需要維護,因為需要為每一行更新子表。

二級索引有兩種型別:

  • 唯一二級索引 (USI)
  • 非唯一二級索引 (NUSI)

唯一二級索引 (USI)

唯一二級索引僅允許為定義為 USI 的列提供唯一值。透過 USI 訪問行是一個雙 AMP 操作。

建立唯一二級索引

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

CREATE UNIQUE INDEX(EmployeeNo) on employee;

非唯一二級索引 (NUSI)

非唯一二級索引允許為定義為 NUSI 的列提供重複值。透過 NUSI 訪問行是所有 AMP 操作。

建立非唯一二級索引

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

CREATE INDEX(FirstName) on Employee;
廣告
© . All rights reserved.