Skip to main content
Loading

Estimate AVS scaling needs

Overview

Aerospike Vector Search (AVS) scales horizontally to handle increased throughput, ingestion, and performance SLAs. This page describes horizontal scaling and tuning considerations that are specific to throughput, ingestion, and performance.

image

Choosing a scaling approach

Depending on your use case there are three general ways to approach scaling your AVS cluster. This guide will walk you through each of these approaches, and what to expect as general guidance for allocating compute and memory resources. These formulas are based on real world testing but provide a rule of thumb only for estimating your cluster size. If more than one of these approaches apply to your specific use case, then choose the greater of the two.

Scaling for high query throughput

Aerospike Vector Search is designed to handle high query throughput, but transaction queueing will occur if the host machine does not have enough CPU resources. We recommend scaling up for periods of high query throughput.

Query throughput estimates

tip

Scaling for query throughput is generally CPU bound, but we recommend allocating a 2:1 memory as well as monitoring CPU closely. You can calculate your query throughput using the AVS Dashboard.

Desc.Peak QPSNumber of DimsQPS / CoreNode Size (CPU core)Memory (GB)Cluster Size*
Low Dimension100,00012820050010008
Medium Dimension100,000768502000400032
High Dimension100,0003072101000020000156
  • Cluster-size based on 64-core nodes.

Scaling for index caching

Another common scenario is scaling to reduce search times. This can be accomplished by allocating enough memory to hold the entire index in memory across your cluster.

tip

This is done with the same approach used to calculate your index size. The number of cores is calculated based on a 1:2 ratio compared to memory in GB.

Storage estimates

DescriptionNumber of RecordsNumber of DimensionsNode Size (CPU core)Number of CoresMemory (GB)Cluster Size
1 Billion Low Dimension1,000,000,000128325031,00516
1 Billion Medium Dimension1,000,000,000768641,7753,54928
1 Billion High Dimension1,000,000,0003,072646,35412,707100

Scaling for indexing throughput

For some use case, prioritizing re-indexing of your data can be a consideration for scaling your cluster. This can be especially true when bulk loading a large amount of data at once.

tip

While indexing can be limited by CPU, the throughput of the underlying Aerospike Database can also affect indexing performance.

Indexing throughput estimates

Ingest Throughput ScalingIngest per HourNumber of DimensionsIndexed Records per Sec / CPU coreNode Size (CPU core)Num. of CPU coresMemory (GB)Node Count
Low Dimension1,000,0001284087141
Medium Dimension1,000,000768103228561
High Dimension1,000,0003072332931863