ベクトルインデックスのストレージに関する考慮事項
ベクトルインデックスは、ベーステーブルとは別にストレージを消費します。ベクトルインデックスが使用するストレージは、次の要因によって決まります。
-
ベクトルデータ – インデックス付きの各項目は、ベクトルを 32 ビット浮動小数点 (f32) 値として保存します。項目のベクトル部分のストレージは、インデックスのディメンション数に応じてスケールされます。例えば、1,536 次元のベクトルは、384 次元ベクトルの約 4 倍のベクトルストレージを使用します。
-
射影された属性 – どの属性を射影するかを選択することで、インデックスにコピーされるベーステーブル属性が決まります。
KEYS_ONLYは最小限のデータを保存し、INCLUDEはキー属性と指定した非キー属性を保存し、ALLはすべての属性を保存します。射影を大きくすると、インデックスストレージの使用量が増加します。 -
インデックス付き項目の数 – 有効なベクトル属性 (インデックスがパーティションキーを定義する場合はそのパーティションキー属性) を含む項目のみがインデックスにレプリケートされます。ベクトル属性がない項目は、ベクトルインデックスストレージを消費しません。
ベクトルインデックスストレージを制御するには、関連性のニーズを満たす最小数のディメンションを選択し、アプリケーションが検索結果から直接読み取る属性のみを射影します。現在のストレージ料金については、AWS ウェブサイトの「Amazon DynamoDB 料金