

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 DynamoDB 中多載全域次要索引
<a name="bp-gsi-overloading"></a>

雖然 Amazon DynamoDB 每個資料表具有 20 個全域次要索引的預設配額，實際上，您可以在遠超過 20 個以上的資料欄位間進行索引。與在關聯式資料庫管理系統 (RDBMS) 中的資料表不同 (其中結構描述是統一的)，DynamoDB 中的資料表可以一次保留許多不同種類的資料項目。此外，在不同項目中的相同屬性可能包含完整不同種類的資訊。

考量 DynamoDB 資料表配置的下列範例，該資料表中會儲存各種不同的資料。

![適用於 GSI 多載的資料表結構描述。](http://docs.aws.amazon.com/zh_tw/amazondynamodb/latest/developerguide/images/OverloadGSIexample.png)


`Data` 屬性 (這是所有項目共有的屬性) 會根據其父項目擁有不同的內容。如果您為使用資料表排序索引鍵做為其分割區索引鍵和 `Data` 屬性做為其排序索引鍵的資料表建立全域次要索引，您可以使用單一全域次要索引來進行多種不同的查詢。這些查詢可能包含以下項目：
+ 使用 `Employee_Name` 作為分割區索引鍵值並將員工的姓名 (例如 `Murphy, John`) 作為排序索引鍵值，即可在全域次要索引中按姓名查找員工。
+ 使用全域次要索引，透過搜尋倉庫 ID (像是 `Warehouse_01`) 來尋找在特定倉庫工作的所有員工。
+ 取得最近的雇用清單，查詢在 `HR_confidential` 上的全域次要索引作為分割區索引鍵值，並在排序索引鍵值中使用日期範圍。