Calculadora de dimensionamiento de OpenSearch
Almacenamiento para Amazon OpenSearch Service o para OpenSearch autogestionado: réplicas, tiers UltraWarm y cold, planificación de shards y los supuestos detrás de cada número.
Conservador para Amazon OpenSearch Service. El servicio reserva 20% del almacenamiento de cada instancia, pero con un tope de 20 GiB por instancia. Como ObservKit no dimensiona nodos, aplicar 20% a todo el clúster puede sobrestimar, sobre todo cuando las instancias tienen volúmenes grandes.
Ver el cálculo
Amazon OpenSearch Service: fuente × (1 + réplicas) × (1 + overhead de indexación) ÷ (1 − reservado de Linux) ÷ (1 − overhead del servicio), que AWS simplifica a fuente × (1 + réplicas) × 1,45. El overhead de servicio de 20% tiene un tope de 20 GiB por instancia, así que es una estimación del peor caso.
Supuestos y fuentes
| Supuesto | Fuente | Limitación | Confianza |
|---|---|---|---|
| La fórmula de almacenamiento hot con 5% de espacio reservado de Linux y 20% de overhead de servicio aplica solo a Amazon OpenSearch Service. | AWS: Cálculo de los requisitos de almacenamiento. | El overhead de 20% tiene un tope de 20 GiB por instancia, así que la fórmula sobrestima cuando el almacenamiento por nodo es grande. | Alta |
| Factor índice / fuente de 1,1 (overhead de indexación de 10%): una suposición de planificación editable de ObservKit. | AWS: Cálculo de los requisitos de almacenamiento: la fuente más el índice suele ser 110% de la fuente (una guía de Amazon OpenSearch Service). | No es una recomendación de OpenSearch para clústeres autogestionados, donde la proporción depende de los mappings, los códecs y los datos; mide pri.store.size con _cat/indices?v. El mismo valor predeterminado se aplica a ambos despliegues para poder compararlos. | Mediano |
| La cantidad de réplicas es 1 por defecto. | AWS: una réplica por defecto, se recomienda al menos una. OpenSearch: una réplica por cada primario por defecto. | Cero réplicas arriesga pérdida de datos; más réplicas ayudan a las cargas de mucha lectura. | Alta |
| UltraWarm y el almacenamiento cold cuentan solo shards primarios. | AWS: UltraWarm y almacenamiento cold: respaldados por S3, sin réplicas y sin nada del overhead del almacenamiento hot. | UltraWarm requiere nodos master dedicados, sus índices son de solo lectura y no se modela la cantidad de nodos warm. | Alta |
| Objetivo de utilización planificada autogestionado de 85%. | Ajustes del clúster de OpenSearch: low watermark 85%, high 90%, flood stage 95%. | Los watermarks se aplican por nodo; un objetivo agregado es una estimación de planificación, y el low watermark no detiene los primarios de los índices nuevos. | Mediano |
| Regla práctica de tamaño de shard de 10–50 GB (objetivo por defecto de 30 GB). | OpenSearch: limita el tamaño de los shards a 10–50 GB. AWS: 10–30 GiB para búsquedas sensibles a la latencia, 30–50 GiB para cargas con mucha escritura como el análisis de logs. | Es un punto de partida; las pruebas de rendimiento deciden el tamaño real. | Mediano |
| Límite de shards por nodo de datos: autogestionado 1.000 por defecto (configurable); Amazon OpenSearch Service 1.000 hasta la 2.15 y, desde la 2.17, 1.000 por cada 16 GiB de heap de JVM, hasta 4.000. | Ajustes del clúster de OpenSearch: cluster.max_shards_per_node. AWS: Cómo elegir el número de shards. | En Amazon OpenSearch Service, el límite necesita la versión del motor y el heap por nodo; sin ellos no se muestra una estimación de nodos. AWS además sugiere no pasar de 25 shards por GiB de heap, algo que no se modela. | Alta |
| Margen de crecimiento de 25%, aplicado a los datos de la fuente antes del overhead. | Suposición de planificación de ObservKit. | La fórmula de AWS toma los datos de la fuente en cualquier momento dado; fija el margen según tu proyección. | n/a |
No se modela: cantidad de nodos y tipos de instancia, tipos de volumen EBS e IOPS, cantidad de nodos UltraWarm, instancias OpenSearch Optimized, tiers warm autogestionados o de searchable snapshots, snapshots y backups, ni la recomendación de AWS de no pasar de 25 shards por GiB de heap de JVM.
Solo estimaciones de planificación. La capacidad real de OpenSearch depende de los mappings, la carga de consultas, la estrategia de shards, el hardware de los nodos y los requisitos operativos. OpenSearch y Amazon OpenSearch Service son productos distintos; el selector de despliegue muestra qué modelo aplica.
Ejemplo resuelto: Amazon OpenSearch Service, solo hot
Escenario de referencia los valores predeterminados de la calculadora: 250 GB/día de datos de la fuente, 90 días en hot, 1 réplica, factor índice / fuente 1,1 y 25% de crecimiento. Abre este escenario.
| Paso | Fórmula | Resultado |
|---|---|---|
| Fuente durante la retención | 250 GB/day × 90 days | 22,5 TB |
| Con margen de crecimiento | × 1.25 | 28,1 TB |
| Almacenado en los nodos | × (1 + 1 replica) × index factor 1.1 | 61,9 TB |
| Espacio reservado y overhead del servicio | ÷ 0,95 ÷ 0,80 (peor caso de AWS) | 19,5 TB |
| Almacenamiento hot a aprovisionar | 2,9× la fuente ajustada por crecimiento | 81,4 TB |
AWS simplifica la misma fórmula a fuente × (1 + réplicas) × 1,45. Los términos exactos dan un multiplicador de 2,9 con una réplica.
Escenarios de referencia
Escenario de referencia puntos de comparación, no layouts recomendados. Factor índice / fuente de 1,1, 1 réplica, 25% de crecimiento, objetivo de planificación de 85% para la fila autogestionada.
| Escenario | Despliegue | Días por tier | Hot a aprovisionar | UltraWarm | Cold | Total | Enlace |
|---|---|---|---|---|---|---|---|
| Solo hot, 250 GB/día · 90 días | Servicio de Amazon | 90 hot | 81,4 TB | 0 MB | 0 MB | 81,4 TB | Abrir este escenario |
| Autogestionado, los mismos datos | Autogestionado | 90 hot | 72,8 TB | 0 MB | 0 MB | 72,8 TB | Abrir este escenario |
| Un año, todo hot | Servicio de Amazon | 365 hot | 330,2 TB | 0 MB | 0 MB | 330,2 TB | Abrir este escenario |
| Un año, con tiers | Servicio de Amazon | 14 hot · 76 UltraWarm · 275 cold | 12,7 TB | 26,1 TB | 94,5 TB | 133,3 TB | Abrir este escenario |
Conservar un año en hot necesita 330,2 TB; mover 351 días a tiers respaldados por S3 necesita 133,3 TB, 2,48× menos, porque los datos warm y cold no llevan réplicas ni nada del overhead del almacenamiento hot. Los mismos 90 días en un clúster autogestionado necesitan 72,8 TB: el overhead de servicio de AWS no aplica allí, pero sí un objetivo de utilización planificada.
Ejemplo de planificación de shards
OpenSearch documenta 10–50 GB por shard como regla práctica (AWS: 10–30 GiB para búsquedas sensibles a la latencia, 30–50 GiB para análisis de logs con mucha escritura). El límite de shards por nodo depende del despliegue y de la versión. El planificador divide los datos indexados de cada rollover por un tamaño de shard objetivo y redondea hacia arriba.
| Paso | Fórmula | Resultado |
|---|---|---|
| Datos indexados por rollover | 250 GB/day × 1.1 × 1 day | 275 GB |
| Shards primarios por rollover | ceil(275 ÷ 30) | 10 |
| Tamaño estimado del shard | 275 ÷ 10 | 27,5 GB |
| Shards primarios retenidos | 10 × 90 rollovers | 900 |
| Total de shards en nodos de datos | retained × (1 + 1 replica) | 1.800 |
| Nodos de datos necesarios solo por el límite de shards, autogestionado | ceil(total ÷ cluster.max_shards_per_node), 1.000 por defecto | 2 |
| Lo mismo en Amazon OpenSearch Service | Depende de la versión del motor: 1.000 por nodo hasta la 2.15; 1.000 por cada 16 GiB de heap de JVM (máx. 4.000) desde la 2.17 | No se estima hasta que definas la versión del motor en el modo Experto |
Ejemplo ilustrativo 2 GB/día con rollover diario indexa 2,2 GB por rollover, así que cada shard es de unos 2,2 GB, por debajo de la regla práctica de 10 GB, y 90 días producen 180 shards en nodos de datos. Con rollover cada 14 días, los shards son de unos 15,4 GB y suman 28. Abre el rollover de 14 días.
Errores comunes
- Aplicar la fórmula de Amazon a un clúster autogestionado, o al revés. Los términos de 5% de Linux y 20% de overhead de servicio son de AWS. En el escenario de 250 GB/día, el modelo del servicio de Amazon da 81,4 TB y el modelo autogestionado 72,8 TB. Elige el despliegue que corresponde al tuyo.
- Darle réplicas a UltraWarm y al almacenamiento cold. Están respaldados por S3 y cuentan solo shards primarios. En el escenario anual con tiers, UltraWarm necesita 26,1 TB; contar una réplica mostraría 52,3 TB.
- Mantener en hot un año de datos que casi no se consultan. Todo en hot, un año necesita 330,2 TB; con tiers necesita 133,3 TB.
- Planificar con cero réplicas. Ejemplo hipotético sin réplica, el escenario de 250 GB/día necesita 40,7 TB en lugar de 81,4 TB, pero la pérdida de un nodo implica pérdida de datos. AWS recomienda al menos una réplica.
- Asumir que no hay overhead de indexación. Ejemplo hipotético con un factor de 1,0 en lugar del 1,1 documentado, el escenario de 250 GB/día se reduce a 74 TB, 10% por debajo de lo que indica AWS. Mide tu propio factor.
- Índices diarios para volúmenes pequeños. Muchos shards pequeños agregan overhead por shard: 180 shards de unos 2,2 GB, frente a 28 con rollover de 14 días.
- Mezclar los valores por defecto del código abierto y del servicio de Amazon. OpenSearch de código abierto crea por defecto un primario y una réplica; AWS documenta que el servicio de Amazon divide por defecto un índice en cinco shards primarios. Define explícitamente la cantidad de shards antes de indexar.
Cómo se calcula el dimensionamiento de OpenSearch
Amazon OpenSearch Service
fuente(tier) = ingesta diaria × días del tier × (1 + crecimiento)
hot a aprovisionar = fuente(hot) × (1 + réplicas) × factor de índice ÷ 0,95 ÷ 0,80
UltraWarm = fuente(warm) × factor de índice solo shards primarios
almacenamiento cold = fuente(cold) × factor de índice solo shards primarios
OpenSearch autogestionado (solo hot)
disco a aprovisionar = fuente × (1 + réplicas) × factor de índice ÷ objetivo de utilización (85%)
shards por rollover = ceil(ingesta diaria × factor de índice × días de rollover ÷ tamaño objetivo de shard)
- Unidades decimales: 1.000 GB = 1 TB.
- Los términos 0,95 y 0,80 son el espacio reservado de Linux y el almacenamiento reservado del servicio, aplicados como el peor caso de AWS.
- No se modela: cantidad de nodos e instancias, tipos de volumen EBS, cantidad de nodos UltraWarm, la recomendación de 25 shards por GiB de heap ni los tiers warm autogestionados.
El modelo común detrás de cada calculadora está en la metodología.
Fuentes
- Cálculo de los requisitos de almacenamiento — documentación de Amazon OpenSearch Service. La fórmula de almacenamiento, el overhead de indexación, el espacio reservado de Linux y del servicio.
- Cómo elegir el número de shards — documentación de Amazon OpenSearch Service. Tamaño de shard según la carga, la fórmula de shards primarios, los límites de shards y el valor por defecto de cinco primarios del servicio de Amazon.
- Almacenamiento UltraWarm — documentación de Amazon OpenSearch Service. Requisitos de almacenamiento solo con primarios, prerrequisitos, índices de solo lectura.
- Almacenamiento cold — documentación de Amazon OpenSearch Service. Almacenamiento respaldado por S3 sin réplicas ni overhead del almacenamiento hot.
- Ajustes de administración del clúster — documentación de OpenSearch (latest). Watermarks de disco y
cluster.max_shards_per_node. - Introducción a OpenSearch — documentación de OpenSearch (latest). Réplicas por defecto y la regla práctica de shards de 10–50 GB.
- Optimiza el tamaño de los shards de los índices de OpenSearch — blog de OpenSearch. Tamaños de shard según la carga y el valor por defecto de un primario y una réplica.
Última revisión: · Relacionado: Guía de dimensionamiento de OpenSearch · Planificación de capacidad · Metodología