本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
具有大型陣列的多重索引
概觀
Amazon DocumentDB 中的多金鑰索引可讓您有效率地查詢陣列欄位。此索引策略可在搜尋陣列資料時大幅降低查詢延遲,使其成為具有複雜資料結構之應用程式具吸引力的選項。
不過,在集合中使用大型陣列或多個陣列欄位時,請務必了解資源影響和效能特性,以做出明智的架構決策。當您在陣列欄位上建立索引時,Amazon DocumentDB 會為陣列中的每個元素產生個別索引項目。
對叢集的影響
-
儲存和 IO 額外負荷:多金鑰索引有時可能會耗用最多多次的基礎資料表儲存空間,大小與具有索引陣列屬性的集合中的文件、陣列中的元素數量和元素的大小直接成正比。
-
記憶體用量:由於儲存體使用量相對較大,這些索引在記憶體中有對應的使用量,因此產生較大的工作集。
-
寫入操作:多金鑰索引會在寫入操作期間建立額外負荷。每個陣列元素都會產生個別的索引項目,將完成寫入操作所需的工作相乘。
修復策略
-
如果需要,請建立多金鑰索引,並限制陣列中的欄位數量。
-
限制集合上的多金鑰索引數量
-
考慮修改您的資料模型