

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Selección de la configuración adecuada
<a name="choosing-configuration"></a>

Dentro de la experiencia de la consola, ElastiCache ofrece una forma sencilla de elegir el tipo de instancia correcto en función de los requisitos de memoria y CPU de la carga de trabajo de búsqueda.

## Consumo de memoria
<a name="memory-consumption"></a>

El consumo de memoria de los campos vectoriales se basa en el número de vectores M-value, el número de dimensiones y la cantidad de datos no vectoriales, como los metadatos asociados al vector u otros datos almacenados en la instancia. La memoria total necesaria es una combinación del espacio necesario para los datos vectoriales reales y el espacio necesario para los índices vectoriales. El espacio necesario para los datos vectoriales se calcula midiendo la capacidad real necesaria para almacenar los vectores dentro de las estructuras de datos `HASH` o `JSON` y la sobrecarga a los slabs de memoria más cercanos, para lograr asignaciones de memoria óptimas. Cada uno de los índices vectoriales utiliza referencias a los datos vectoriales almacenados en estas estructuras de datos, así como una copia adicional del vector del índice. Se recomienda planificar este consumo de espacio adicional mediante el índice.

El número de vectores depende de cómo se decida representar los datos como vectores. Por ejemplo, puede elegir representar un único documento en varios fragmentos, donde cada fragmento represente un vector. Como alternativa, puede optar por representar todo el documento como un único vector. El número de dimensiones de los vectores depende del modelo de incrustación que se elija. Por ejemplo, si opta por utilizar el modelo de incrustación AWS Titan, el número de dimensiones sería 1536. Tenga en cuenta que debe probar el tipo de instancia para asegurarse de que se ajuste a sus requisitos.

## Escalado de la carga de trabajo
<a name="scaling-workload"></a>

La búsqueda admite los tres métodos de escalado: horizontal, vertical y réplicas. Al escalar por capacidad, la búsqueda vectorial se comporta igual que en Valkey, es decir, si se aumenta la memoria de los nodos individuales (escalado vertical) o se incrementa el número de nodos (escalado horizontal) crece la capacidad total. En el modo de clúster, el comando `FT.CREATE` se puede enviar a cualquier nodo principal del clúster y el sistema distribuirá automáticamente la nueva definición del índice a todos los miembros del clúster.

Sin embargo, desde el punto de vista del rendimiento, la búsqueda se comporta de forma muy diferente a la de Valkey normal. La implementación de la búsqueda en varios subprocesos significa que las CPU adicionales generan aumentos hasta lineales en el rendimiento de consultas e ingestión. El escalado horizontal produce aumentos lineales en el rendimiento de la ingesta, pero podría reducir el rendimiento de las consultas. Si se requiere un rendimiento de las consultas adicional, es necesario escalar mediante réplicas o CPU adicionales.