Dynamic resource allocation in disaggregated query engines using reinforcement learning
Loading...
Date
2024-12-12
Authors
Conde Sarmiento, Iván D.
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
A disaggregated Query Engine can make use of multiple nodes and accelerators available in a cloud or cluster environment. In a production environment, it is important to control the use of the computing resources assigned to a task to avoid unnecessarily exhausting the computational assets of a cluster and incurring cost overruns. Sometimes, tuning these resources against the workload must be done manually, which can result in an overestimation of the amount and types of compute nodes needed or an underestimation, depending on the workload that the system presents at a given time. We propose the creation of the Dynamic Resource Allocator (DRA) for Disaggregated Query Engines, an artificial intelligence agent in charge of reserving or freeing computational resources for the execution of queries. A key feature of this agent is the use of Reinforcement Learning (RL) algorithms. An agent will be able to analyze the job execution time and node usage to learn a policy that leads to better execution time and resource allocation.
Los motores de consultas desagregados pueden hacer uso de múltiples nodos y aceleradores disponibles en un entorno de nube o clúster. En un entorno de producción, es importante controlar el uso de los recursos informáticos asignados a una tarea para evitar agotar innecesariamente los activos computacionales de un clúster e incurrir en sobrecostes. En ocasiones, el ajuste de estos recursos en función de la carga de trabajo debe realizarse manualmente, lo que puede dar lugar a una sobreestimación de la cantidad y tipos de nodos de computación necesarios o a una infraestimación, dependiendo de la carga de trabajo que presente el sistema en un momento dado. Proponemos la creación del Asignador Dinámico de Recursos (DRA) para Motores de Consulta Desagregados, un agente de inteligencia artificial encargado de reservar o liberar recursos computacionales para la ejecución de consultas. Esta gente usará algoritmos de aprendizaje por refuerzo (RL). El agente será capaz de analizar el tiempo de ejecución del trabajo y el uso de los nodos para aprender una política que conduzca a un mejor tiempo de ejecución y asignación de recursos.
Los motores de consultas desagregados pueden hacer uso de múltiples nodos y aceleradores disponibles en un entorno de nube o clúster. En un entorno de producción, es importante controlar el uso de los recursos informáticos asignados a una tarea para evitar agotar innecesariamente los activos computacionales de un clúster e incurrir en sobrecostes. En ocasiones, el ajuste de estos recursos en función de la carga de trabajo debe realizarse manualmente, lo que puede dar lugar a una sobreestimación de la cantidad y tipos de nodos de computación necesarios o a una infraestimación, dependiendo de la carga de trabajo que presente el sistema en un momento dado. Proponemos la creación del Asignador Dinámico de Recursos (DRA) para Motores de Consulta Desagregados, un agente de inteligencia artificial encargado de reservar o liberar recursos computacionales para la ejecución de consultas. Esta gente usará algoritmos de aprendizaje por refuerzo (RL). El agente será capaz de analizar el tiempo de ejecución del trabajo y el uso de los nodos para aprender una política que conduzca a un mejor tiempo de ejecución y asignación de recursos.
