本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
選擇適當的組態
在主控台體驗中,ElastiCache 可根據向量工作負載的記憶體和 cpu 需求,輕鬆選擇正確的執行個體類型。
記憶體使用量
記憶體耗用取決於向量數量、維度數量、M 值和非向量資料數量,例如與向量相關聯的中繼資料或存放在執行個體中的其他資料。所需的總記憶體是實際向量資料所需的空間,以及向量索引所需的空間的組合。向量資料所需的空間是透過測量在 HASH或 JSON資料結構中存放向量所需的實際容量,以及對最接近記憶體板的負荷來計算,以獲得最佳記憶體配置。每個向量索引使用對存放在這些資料結構中的向量資料的參考,以及索引中向量的額外副本。建議依索引規劃此額外空間耗用。
向量數量取決於您決定將資料表示為向量的方式。例如,您可以選擇將單一文件表示為數個區塊,其中每個區塊代表向量。或者,您可以選擇將整個文件表示為單一向量。向量的維度取決於您選擇的內嵌模型。例如,如果您選擇使用AWS Titan 內嵌模型,則維度數目將為 1536。請注意,您應該測試執行個體類型,以確保其符合您的需求。
擴展工作負載
向量搜尋支援所有三種擴展方法:水平、垂直和複本。擴展容量時,向量搜尋的行為就像一般的 Valkey,也就是說,增加個別節點的記憶體 (垂直擴展) 或增加節點數量 (水平擴展) 將增加整體容量。在叢集模式中,FT.CREATE命令可以傳送到叢集的任何主節點,系統會自動將新的索引定義分發給所有叢集成員。
不過,從效能角度來看,向量搜尋的行為與一般 Valkey 截然不同。向量搜尋的多執行緒實作表示其他 CPUs查詢和擷取輸送量中產生高達線性增加。水平擴展會產生擷取輸送量的線性增加,但可能會降低查詢輸送量。如果需要額外的查詢輸送量,則需要擴展複本或其他 CPUs。