Ponente
Descripción
En el ámbito científico, la experimentación se basa en la ejecución secuencial de aplicaciones, empleando datos de entrada, intermedios y de salida. Los Scientific Workflow (SWF) representan estas secuencias, a menudo complejas y compuestas por tareas interdependientes y con uso intensivo de datos. Para ejecutar estos SWF, la computación en la nube se ha vuelto una elección común debido a su escalabilidad y recursos bajo demanda. Sin embargo, este entorno complejo también conlleva desafíos relacionados con los fallos.
En este contexto, una política de tolerancia a fallos eficiente puede marcar la diferencia en el rendimiento de los sistemas. A pesar de numerosos esfuerzos en desarrollar algoritmos de tolerancia a fallos, pocos consideran la estructura y dependencias de las tareas.
Esta tesis aborda este problema y propone una política de tolerancia a fallos optimizada para SWF altamente paralelizables. La estrategia combina técnicas de clusterización y resubmission, dando lugar a la política denominada 'Optimización Dinámica Vertical' (ODV), diseñada considerando la estructura y las dependencias de datos.
La implementación y evaluación se realizan en un entorno de simulación utilizando WorkflowSim. Los resultados demuestran que la política ODV mejora significativamente los tiempos de ejecución, especialmente en aplicaciones altamente paralelas como SWF bioinformáticos, por ejemplo, Epigenomics. ODV reduce el tiempo de ejecución en un 35,52% para aplicaciones de SWF menos paralelizadas y un 47,92% en SWF altamente paralelos. La diferencia entre entornos simulados y reales es del 3,73%.
Esta tesis propone y valida con éxito la política de tolerancia a fallos ODV, que se destaca por su eficacia en la mejora del rendimiento en SWF con alta paralelización, resultando en la aceleración de experimentos científicos y la reducción de costos en entornos de cómputo en la nube.
Objetivo
Los objetivos de mi trabajo investigativo son los siguientes:
Evaluar el rendimiento y la eficiencia de la política de tolerancia a fallos denominada Optimización Dinámica Vertical (ODV) en flujos de trabajo científicos (SWF) en entornos de cloud computing.
Comparar el desempeño de ODV con otras técnicas de tolerancia a fallos, como la clusterización vertical y resubmission en términos de tiempo de ejecución.
Analizar la escalabilidad de ODV al variar la tasa de fallos en los SWF, evaluando su capacidad para mantener un rendimiento óptimo incluso bajo altas tasas de error.
Evaluar el impacto de ODV en diferentes aplicaciones de SWF, incluyendo Epigenomic, SIPHT, Cybershake, LIGO y Montage.
Estos objetivos contribuirán a la evaluación y validación de ODV como una solución efectiva y rentable para mejorar el rendimiento de SWF en entornos de cloud computing, abordando los desafíos asociados con los costos de infraestructura y tiempo.
Introducción
La búsqueda de conocimiento en el ámbito científico se ha beneficiado enormemente de las herramientas tecnológicas que proporcionan datos más precisos y de mejor calidad en tiempos reducidos y a costos más bajos. Sin embargo, a menudo los investigadores expertos en sus campos carecen de habilidades de programación para ajustar parámetros de experimentación y gestionar eficazmente los resultados.
Una solución a este desafío son los flujos de trabajo científicos (SWF), diseñados para representar y administrar procesos científicos complejos y distribuidos.
Estas áreas de investigación comparten la necesidad de acceder a grandes volúmenes de datos y, por ende, enfrentan desafíos inevitables relacionados con fallos en la ejecución. Este contexto impulsa la necesidad de desarrollar políticas efectivas de tolerancia a fallos que permitan aprovechar al máximo los recursos y minimizar el tiempo y los costos.
Este trabajo se enfoca en analizar y caracterizar la estructura de los SWF, especialmente aquellos altamente paralelizables como Epigenomic, con el objetivo de desarrollar políticas de tolerancia a fallos que mejoren la eficiencia y el rendimiento en estos entornos específicos.
Resultados
En esta investigación, se han realizado exhaustivos experimentos y evaluaciones de la política de tolerancia a fallos denominada Optimización Dinámica Vertical (ODV) en el contexto de flujos de trabajo científicos (SWF). Estos experimentos han abordado diversas dimensiones y escenarios, lo que ha permitido obtener valiosas conclusiones sobre el desempeño y la escalabilidad de ODV en diferentes contextos de aplicación.
En primer lugar, se evaluó el rendimiento de ODV en el SWF Epigenomic con diferentes cargas de trabajo. Los resultados demostraron que el tiempo de ejecución está directamente relacionado con la cantidad de tareas en el SWF. En todos los casos, ODV superó significativamente a las técnicas de resubmission y clusterización vertical (CV), logrando los mejores tiempos de finalización. Se observaron ganancias considerables, especialmente para las cargas de trabajo más pesadas, donde ODV redujo el tiempo de ejecución en más del 50%.
Luego, se analizó la escalabilidad de ODV al variar la tasa de fallos (β) en el SWF Epigenomic. Los resultados revelaron que ODV es altamente eficiente en la mitigación de fallos hasta una tasa de fallos del 30%. Más allá de este umbral, se observó un aumento significativo en el tiempo de ejecución debido a la repetida clusterización dinámica y la granularidad de las tareas. A pesar de este límite, ODV mantuvo ventajas considerables sobre las otras técnicas evaluadas, logrando reducciones de tiempo superiores al 50% incluso para tasas de fallo del 40%.
Finalmente, se evaluó el desempeño de ODV en cinco aplicaciones diferentes de SWF: Epigenomic, SIPHT, Cybershake, LIGO y Montage. Estas aplicaciones presentaron variaciones significativas en el tiempo promedio de ejecución de tareas. A pesar de las diferencias en paralelismo y complejidad, ODV logró reducir el tiempo de ejecución en todas las aplicaciones. En particular, en la aplicación SIPHT, ODV alcanzó una ganancia excepcional del 89,24% en comparación con la técnica de resubmission, lo que representó una reducción de más de 3 horas en el tiempo de ejecución.
Esta investigación ha demostrado que la política de tolerancia a fallos ODV es altamente efectiva en la optimización de flujos de trabajo científicos en una variedad de escenarios. Ofrece mejoras sustanciales en el tiempo de ejecución, incluso en aplicaciones con diferentes niveles de paralelismo y tasas de fallo variables. Estos resultados respaldan la viabilidad y la eficacia de ODV como una herramienta valiosa para mejorar la eficiencia en la ejecución de tareas científicas críticas. Esta investigación contribuye significativamente al campo de la tolerancia a fallos y la optimización de SWF, ofreciendo una solución innovadora y escalable que tiene el potencial de beneficiar a una amplia gama de aplicaciones científicas y tecnológicas.
Conclusión
Se ha desarrollado y presentado la política de tolerancia a fallos denominada Optimización Dinámica Vertical (ODV) como respuesta a los desafíos que enfrentan las aplicaciones de flujos de trabajo científicos (SWF). El objetivo central es mitigar fallos temporales durante la ejecución de SWF y, al mismo tiempo, mejorar el makespan resultante.
ODV se destaca por su enfoque en la estructura de SWF, diseñada especialmente para SWF altamente paralelizables. Al desarrollar un algoritmo adaptado a esta estructura y sus dependencias, ODV optimiza resultados para estructuras con tareas distribuidas en múltiples carriles.
Se realizó un análisis para comprender su impacto en el sistema, se identificaron y clasificaron fallos potenciales, resaltando la necesidad crítica de la tolerancia a fallos en SWF. Se llevó a cabo una revisión exhaustiva de las técnicas existentes de programación, clusterización y tolerancia a fallos, abordando sus deficiencias a través de ODV.
La implementación en el entorno de simulación y los experimentos subsiguientes arrojaron resultados altamente prometedores al demostrar mejoras notables en los tiempos de ejecución en todas las aplicaciones de SWF estudiadas.
ODV emerge como una herramienta efectiva para mejorar la eficiencia en aplicaciones altamente paralelizables, con implicaciones significativas para la ejecución exitosa de tareas científicas críticas.
Metodología
En el contexto de la ejecución de aplicaciones en clusters y entornos de cloud, es importante tener en cuenta los considerables costos asociados tanto en términos de infraestructura como de tiempo. Para abordar esta preocupación, en esta investigación se empleó una metodología que se basó en el uso de un simulador basado en eventos discretos.
El simulador se utilizó a lo largo del desarrollo de este trabajo con el propósito de permitir experimentar y controlar diversos parámetros de manera eficiente, lo que posibilitó una evaluación ágil y económica en múltiples escenarios. Esta aproximación resultó fundamental para superar los desafíos que plantea la realización de experimentos en entornos de cloud, que conllevan considerables inversiones financieras y de tiempo.
En particular, el modelo de evaluación se centró en el algoritmo de la política de tolerancia a fallos, y se basó en la simulación de flujos de trabajo científicos (SWF). Estos SWF son representativos de aplicaciones de computación de alto rendimiento y análisis de datos a gran escala. Para llevar a cabo esta simulación, se consideró crucial seleccionar una herramienta adecuada, y en este caso, se optó por WorkflowSim.
WorkflowSim es un kit de herramientas que se especializa en la simulación de flujos de trabajo científicos en entornos distribuidos. Su elección se basó en su capacidad para proporcionar un marco de simulación robusto y versátil, que permite modelar y evaluar eficazmente el rendimiento de los flujos de trabajo en diversos escenarios de ejecución.
Al utilizar WorkflowSim, fue posible modelar y simular de manera efectiva la ejecución de flujos de trabajo científicos en entornos de cloud, lo que permitió realizar evaluaciones detalladas del rendimiento de la política de tolerancia a fallos propuesta. A través de este enfoque, se logró abordar los desafíos asociados con la ejecución de aplicaciones en entornos de cloud, evitando los altos costos económicos y de tiempo que conlleva la implementación en la nube en un entorno de investigación.
La metodología adoptada en este trabajo se basó en el uso de simulación con WorkflowSim para evaluar el rendimiento de la política de tolerancia a fallos en flujos de trabajo científicos en entornos de cloud. Este enfoque resultó ser una solución eficiente y económica para llevar a cabo experimentos rigurosos y analizar el impacto de la política propuesta en diversas condiciones y escenarios.
Area | Ingenierías, Matemáticas y Física |
---|