En esta página, se describen las especificaciones de instancias y nodos de las instancias de Memorystore para Valkey. Si necesitas instrucciones para crear una instancia, consulta Crea instancias.
Cómo elegir un tipo de nodo
Todos los nodos de tu instancia usan el mismo tipo de nodo que elijas. El mejor tipo de nodo para tu instancia depende de tus requisitos de precio, rendimiento y capacidad del espacio de claves.
El tipo de nodo standard-small
te permite aprovisionar instancias pequeñas y aumentar tu instancia en incrementos más pequeños a costos potencialmente más bajos que otros tipos de nodos. standard-small
también ofrece la ventaja de distribuir tu espacio de claves en más nodos con un recuento total de CPU virtuales más alto. Esto ofrece una mejor relación precio-rendimiento en comparación con highmem-medium
, siempre y cuando la capacidad total del espacio de claves de los nodos más pequeños sea suficiente para tus necesidades de datos.
Solo recomendamos elegir el tipo de nodo highmem-xlarge
si necesitas más capacidad de instancias que la que proporciona highmem-medium
. Aunque el tipo de nodo highmem-xlarge
es cuatro veces mayor que el tipo highmem-medium
en tamaño, el rendimiento no es cuatro veces mayor, ya que el rendimiento de Valkey 7.2 no se escala de forma lineal cuando se agregan CPU virtuales a nodos cada vez más grandes (escalamiento hacia arriba). En su lugar, para obtener un mejor rendimiento de precio, debes escalar agregando más nodos a una instancia.
Especificación del tipo de nodo
La capacidad y las características del nodo dependen del tipo de nodo que elijas entre los cuatro disponibles:
Capacidad del espacio de claves y sobrecarga reservada
Tipo de nodo | Capacidad predeterminada del espacio de claves de escritura | Capacidad total del nodo |
---|---|---|
shared-core-nano | 1.12 GB | 1.4 GB |
standard-small | 5.2 GB | 6.5 GB |
highmem-medium | 10.4 GB | 13 GB |
highmem-xlarge | 46.4 GB | 58 GB |
Memorystore reserva automáticamente una parte de la capacidad de tu instancia para ayudar a evitar errores de memoria insuficiente (OOM). Esto garantiza una experiencia fluida de lectura y escritura de claves. Los límites de memoria y los detalles de almacenamiento son los siguientes:
Personaliza tu almacenamiento: Si bien recomendamos usar la configuración predeterminada, tienes la opción de ajustar la cantidad de almacenamiento reservado con la configuración de
maxmemory
. Para obtener información sobremaxmemory
, consulta Configuraciones de instancias compatibles.¿Cuánto almacenamiento obtienes? Consulta la columna Capacidad predeterminada del espacio de claves de escritura de la tabla anterior. Aquí se muestra cuánto almacenamiento está disponible para tus claves de forma predeterminada.
Maximiza el almacenamiento. Si deseas obtener el almacenamiento máximo posible, la columna capacidad total del nodo muestra el límite de almacenamiento cuando configuras la configuración de
maxmemory
en 100%. Sin embargo, no te recomendamos que elijas un valor demaxmemory
superior a la configuración predeterminada.El tipo de nodo
shared-core-nano
tiene un límite estricto de 1.12 GB y no se puede cambiar con la configuración demaxmemory
.
Características del nodo
Tipo de nodo | Recuento de CPU virtuales | ANS ofrecido | Clientes máximos | Memoria máxima para los clientes (configuración de maxmemory-clients) |
---|---|---|---|---|
shared-core-nano | 0.5 | No | 5,000 | 12% |
standard-small | 2 | Sí | 16,000 (predeterminado). El valor máximo es 32,000. | 7% |
highmem-medium | 2 | Sí | 32,000 (predeterminado). El valor máximo es 64,000. | 7% |
highmem-xlarge | 8 | Sí | 64,000 | 4% |
Especificación de la instancia
En esta sección, se muestran las capacidades mínimas y máximas de las instancias según su forma, tipo de nodo y recuento de réplicas. Memorystore para Valkey solo admite instancias en el modo de clúster.
Capacidad mínima de escritura según la forma mínima de la instancia
Tipo y tamaño del nodo | Capacidad mínima de escritura con la forma de instancia mínima de 3 nodos1 |
---|---|
shared-core-nano: 1.4 GB | 4.2 GB |
standard-small: 6.5 GB | 19.5 GB |
highmem-medium: 13 GB | 39 GB |
highmem-xlarge: 58 GB | 174 GB |
1 La capacidad de escritura es la cantidad de almacenamiento disponible para escribir claves. La capacidad mínima de escritura no se ve afectada por la cantidad de réplicas que elijas.
Capacidad máxima de escritura según la forma de la instancia
Tipo y tamaño del nodo | Capacidad máxima dada la forma de la instancia de 250 nodos principales y 0 réplicas por nodo | Capacidad máxima dada la forma de la instancia de 125 nodos principales y 1 réplica por nodo | Capacidad máxima dada la forma de instancia de 83 nodos principales y 2 réplicas por nodo |
---|---|---|---|
shared-core-nano: 1.4 GB | 350 GB | 175 GB | 116.2 GB |
standard-small: 6.5 GB | 1,625 GB | 812.5 GB | 539.5 GB |
highmem-medium: 13 GB | 3,250 GB | 1,625 GB | 1,079 GB |
highmem-xlarge: 58 GB | 14,500 GB | 7,250 GB | 4,814 GB |
Selecciona una forma de instancia de 1, 2 o 4 fragmentos.
Debido a su estado de versión preliminar, la creación de instancias con 1, 2 o 4 fragmentos tiene los siguientes requisitos y comportamiento:
Para tener 1, 2 o 4 fragmentos, debes crear la instancia con 1, 2 o 4 fragmentos.
Debes usar gcloud CLI para crear instancias que tengan 1, 2 o 4 fragmentos.
Las instancias creadas con 3, 5 o más fragmentos no se pueden escalar para tener 1, 2 o 4 fragmentos.
Las instancias creadas con 1, 2 o 4 fragmentos se encuentran en la fase de lanzamiento de la versión preliminar y están sujetas a las limitaciones de esta fase.
Las instancias creadas con 1, 2 o 4 fragmentos se pueden escalar a cualquier otra forma de instancia tantas veces como desees. Por ejemplo, puedes escalar una instancia de 4 fragmentos a 8 y volver a 4.
Rendimiento
El uso de la herramienta de comparativas de memtier de OSS en la región us-central1
generó entre 120,000 y 130,000 operaciones por segundo por cada 2 nodos de CPU virtual (standard-small
y highmem-medium
) con una latencia de microsegundos y un tamaño de datos de 1 KiB.
Te recomendamos que realices tus propias comparativas con cargas de trabajo reales o sintéticas que se parezcan a tu tráfico de producción. Además, te recomendamos que definas el tamaño de tus instancias con un búfer (o "margen") para los aumentos repentinos de la carga de trabajo o el tráfico inesperado. Para obtener más orientación, consulta las prácticas recomendadas.
Extremos de instancias
En esta sección, se explican los dos extremos que tiene cada instancia.
Extremo de detección
Cada instancia tiene un extremo de descubrimiento al que se conecta tu cliente. Es una combinación de una dirección IP y un número de puerto. Para obtener instrucciones sobre cómo encontrar el extremo de detección de tu instancia, consulta Cómo ver el extremo de detección de tu instancia.
Tu cliente también lo usa para el descubrimiento de nodos. Tu cliente usa el extremo de descubrimiento para recuperar la topología de nodos de tu instancia y activar clientes externos, y mantenerlos actualizados en estado estable. La topología de nodos resultante proporciona extremos de nodos (combinaciones de IP y puertos) que tu cliente externo almacenará en caché en la memoria. Luego, tu cliente se encarga de las actualizaciones y los redireccionamientos automáticamente, sin necesidad de realizar ningún otro cambio en la aplicación. Para obtener información sobre el comportamiento de descubrimiento de clientes y las prácticas recomendadas, consulta Descubrimiento de clientes.
El extremo de descubrimiento tiene alta disponibilidad porque está respaldado por varios nodos en varias zonas para entregar la topología del nodo. La entrega de topología a través del extremo es sólida incluso cuando se enfrentan fallas o actualizaciones de nodos del backend.
Tu extremo de descubrimiento tiene el siguiente comportamiento:
El extremo de descubrimiento de tu instancia no se modifica durante el ciclo de vida de la instancia, incluso durante el mantenimiento o cualquier otra acción que realices, como aumentar o disminuir la escala o cambiar los recuentos de réplicas.
Los extremos de los nodos pueden cambiar y reciclarse a medida que se agregan y quitan nodos con el tiempo. Lo ideal es que uses un cliente de terceros que pueda controlar estos cambios automáticamente a través de redireccionamientos y actualizaciones de topología. Puedes encontrar ejemplos de clientes externos en Muestras de código de bibliotecas cliente. Tu aplicación no debe tener dependencias ni suposiciones de que los extremos de los nodos no cambiarán para una instancia determinada.
Extremo de datos
Cada instancia también tiene un extremo de datos de Private Service Connect que usa Memorystore para Valkey para la conexión de clientes. No debes conectarte a este extremo directamente. Sin embargo, Memorystore para Valkey usa este extremo para conectar tu cliente a los nodos de tu instancia.