Tengo un clúster en el cual tengo una media de búsqueda de unos 3seg dependiendo de la búsqueda, para saber en qué fase de la búsqueda y que búsqueda tarda más he activado los slow logs durante un par de horas y he conseguido capturar 6 slowlogs.
Una vez que dispongo de dichos slowlogs? Hay alguna forma de análisis? He buscado información de cómo analizarlos y he encontrado el ProfileApi de elàstic.
Hay alguna guía de cómo poder analizar dichos slowlogs?
A partir del resultado del profiler, puedes observar que partes de la query son las que más tardan: Profile API | Elasticsearch Guide [7.13] | Elastic. Y según qué parámetros salgan elevados, la ayuda está en la misma página.
Para entender el detalle seguramente lo mejor es ir a la documentación de Lucene, ya que el Profile API en realidad expone clases y conceptos de Lucene.
A partir de aquí, con el mismo profiler se trataría de buscar alternativas a la query que tengan menor coste de ejecución. Si tienes algún caso concreto que puedas compartir en el que tengas dudas lo puedes añadir a este hilo y le echamos un vistazo.
Supongo que ya lo revisaste, pero la guía general de tune for search speed tiene muchos tips, en particular el uso de del Profile API. A veces la lentitud en búsquedas no es sólo causada por queries concretas pesadas, sino que se puede hacer un tuning más general.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.