HCL Commerce Version 9.1.8.0 or later

Requisitos de hardware y escalado de Elasticsearch

Puede lograr capacidad adicional implementando o ampliando la agrupación en clústeres de pod en Elasticsearch, NiFi o ambos. También puede tener en cuenta la huella de hardware y los recursos clave que afectan a la velocidad de proceso y de creación de índice.

Agrupación en clúster

Elasticsearch
Elasticsearch viene instalado de forma predeterminada como un clúster de tres fragmentos. Tanto el tamaño mínimo como el recomendado implementan dicha agrupación en clúster, y las únicas diferencias son los recursos que se asignan. El dimensionamiento recomendado tiene más vCPUs y memoria por pod, lo cual es suficiente para impulsar el tráfico y crear el índice.

Si es necesario, se puede añadir capacidad adicional escalando horizontalmente, aumentando el tamaño del clúster con nodos/pods adicionales para Elasticsearch. No obstante, se recomienda optimizar el rendimiento de la infraestructura con un almacenamiento más rápido, una conexión de red más rápida, una memoria y un CPU más rápidos, y más memoria y asignación CPU, antes de escalar horizontalmente.

NiFi
NiFi se configura como un único servidor, tanto en configuraciones mínimas como recomendadas. Para cargas de trabajo típicas esperadas, es suficiente. Sin embargo, si el proceso de NLP (procesamiento de lenguaje natural) presenta un cuello de botella, la agrupación en clúster horizontal niFi mejorará el rendimiento de NLP, con escalabilidad lineal.

Fragmentación

Es útil conocer el número óptimo de fragmentos de índice que se utilizarán a medida que los datos aumenten durante la producción. Puede determinarlo basándose en el tamaño existente del índice de búsqueda. Utilice las tres reglas siguientes para calcular el momento de ajustar el número de fragmentos de índice.
  • Un fragmento de índice no debe superar el 40 % del almacenamiento total disponible de su clúster de nodo.
  • Un tamaño de fragmento de índice no debe superar los 50 GB. Generalmente, el índice tiene un mejor rendimiento cuando su tamaño es inferior a 25 GB por fragmento.
  • Los recuentos y tamaños de documentos entre fragmentos deberían ser similares.

Huella de hardware

Existen varios factores a la hora de tener en cuenta la huella de hardware y los recursos clave que afectan a la velocidad de proceso y de creación de índice.

Recursos que influyen en las operaciones
La instalación predeterminada del clúster Nifi Elasticsearch e-commerce presupone un pod NiFi junto con 3 pods en clúster con Elasticsearch. Los recursos clave son CPU, tamaños de RAM/almacenamiento dinámico y datos de subsistema.

Los recursos CPU mínimos que se recomiendan para cada pod se establecen en 6 vCPUs por pod. Se muestra que tiene un rendimiento aceptable al crear catálogos de tamaño medio (suponiendo 300 000 artículos). Sin embargo, cada catálogo es diferente y los catálogos que tienen un diccionario de atributos excesivamente grande pueden requerir recursos adicionales para mantenerse al día con la creciente demanda de procesamiento.

En general, el proceso NiFi se ajustará cómodamente al tamaño CPU de recursos asignados, excepto en el caso del proceso NLP. Normalmente, el proceso de NLP CPU está enlazado. Antes de aumentar los recursos de CPU asignados (para aumentar la velocidad de procesamiento de NLP), se recomienda volver a probar la construcción del índice con el hardware existente. Durante una segunda creación de índice, NLP volverá a utilizar parte del cálculo de la ejecución inicial, reduciendo significativamente el tiempo de proceso global. Utilice estas compilaciones repetidas para derivar los requisitos de recursos aumentados.

O lo que es más importante: los tamaños de almacenamiento dinámico deben ajustarse para ajustarse al tamaño y complejidad de los datos indexados. El proceso NiFi y Elasticsearch se simplifica, y mientras la configuración se mantiene igual, el almacenamiento dinámico debe ser suficiente para cualquier tamaño del catálogo.

Sin embargo, se necesita algún ajuste si se intenta una optimización adicional en catálogos más grandes (archivos de flujo más grandes, más hebras, etc.), o si el conjunto de datos generados por sí mismo es mayor (debido a un mayor número de atributos, por ejemplo).

En los casos mínimos y recomendados proporcionados, hay dos configuraciones de almacenamiento dinámico, destinadas al catálogo de 300 000 y 1 millón mencionado anteriormente. Los parámetros de ajuste son diferentes entre estas configuraciones, ya que un catálogo de artículos de 1M requiere tamaños de pila más grandes tanto en NiFi como en Elasticsearch (12 GB y 16 GB en consecuencia).

El recurso más influyente para el funcionamiento general del acoplamiento de NiFi y Elasticsearch es el subsistema de E/S de Elasticsearch, que generalmente impulsa la velocidad general del procesamiento. Si Elasticsearch almacena los datos indexados en el disco lentamente, también ralentizará el proceso de compilación general, incluida la velocidad de ejecución de NiFi. Por lo tanto, debe considerarse pronto el sistema de archivos/io en Elasticsearch e idealmente debe configurarse en el almacenamiento SSD/NVMe local para obtener el máximo rendimiento y tasas de E/S.

Espacio de hardware mínimo definido y recomendado
Tiene dos valores de despliegue de configuración primaria. Una es para la configuración de despliegue predeterminada, también conocida como la configuración mínima para NiFi y Elasticsearch, y otra, conocida como configuración recomendada, que ha mostrado buenos resultados con catálogos más grandes con aprox. 1 millón de artículos aproximadamente.
La tabla siguiente muestra los valores de recurso para una huella de hardware mínima y recomendada:
Pods vCPUs/ES Pod vCPU/Pod de NiFi ES heap Pila de NIFI
Configuración mínima (por defecto)

3 - ES

1- Nifi

6 6 12 9
Configuración recomendada

3 - ES

1- Nifi

16 16 16 12