{"id":48,"date":"2023-09-02T15:24:55","date_gmt":"2023-09-02T13:24:55","guid":{"rendered":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/?page_id=48"},"modified":"2023-09-20T08:49:20","modified_gmt":"2023-09-20T06:49:20","slug":"introduccion","status":"publish","type":"page","link":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/","title":{"rendered":"Introducci\u00f3n"},"content":{"rendered":"<p>Los <em>pipelines<\/em> tradicionales est\u00e1n muy ligados a las infraestructuras de computaci\u00f3n locales donde se ejecutan. Estos no tienen la capacidad de resumir un proceso que se haya parado, tienen poca documentaci\u00f3n, no cuentan con una trazabilidad de los par\u00e1metros y versiones de paquetes utilizados y requieren de instalaci\u00f3n manual, lo cual impide una f\u00e1cil distribuci\u00f3n de este. Para poder solucionar estos inconvenientes se han creado los Workflow Managers. Estos permiten la utilizaci\u00f3n de <em>pipelines<\/em> de an\u00e1lisis complejos en distintos entornos de computaci\u00f3n asegurando la m\u00e1xima reproducibilidad de los procesos ejecutados.<\/p>\n<p>Varios Workflow Managers se han desarrollado espec\u00edficamente para los campos de investigaci\u00f3n y salud integrando entornos, contenedores y computaci\u00f3n en la nube.<\/p>\n<p>Hay cinco caracter\u00edsticas que hacen a los Workflow Managers herramientas de gran utilidad:<\/p>\n<ol>\n<li>Reproducibilidad. La utilizaci\u00f3n de entornos y contenedores asegura una apropiada reproducibilidad de los procesos ejecutados.<\/li>\n<li>Portabilidad. Es una de las grandes ventajas de la utilizaci\u00f3n de Workflow Managers, ya que crea los flujos de trabajo necesarios para poderse exportar a cualquier entorno computacional. Muchos de ellos permiten la f\u00e1cil migraci\u00f3n a distintos entornos, inclusive de alta computaci\u00f3n y servicios en la nube. Es m\u00e1s, es posible la interacci\u00f3n directa con orquestadores como Kubernetes o DockerSwarm.<\/li>\n<li>Escalabilidad. Ser capaz de manejar y analizar datos con una complejidad creciente es cada vez m\u00e1s com\u00fan. En este sentido hay dos aspectos que deben tenerse en cuenta: el manejo eficiente de los recursos y ser capaz de utilizar datos m\u00e1s complejos y de mayor tama\u00f1o. La mayor\u00eda de Workflow Managers implementan la paralelizaci\u00f3n en diversos pasos, sea mediante gestor de colas o <em>scheduling <\/em>est\u00e1tica o adaptativa. La paralelizaci\u00f3n puede producirse a nivel de datos, procesos o <em>pipelines<\/em>. Una asignaci\u00f3n din\u00e1mica de los recursos permite que los procesos m\u00e1s intensivos no se vean afectados respecto a los que no requieren tantos. Este balanceo minimiza cuellos de botella y reduce los tiempos de computaci\u00f3n. Los recursos pueden asignarse espec\u00edficamente para cada paso del flujo de trabajo.<\/li>\n<li>Robustez. Muchos <em>pipelines<\/em> requieren de procesos complejos y de larga duraci\u00f3n. En el posible evento de la interrupci\u00f3n del <em>pipeline<\/em> en alg\u00fan proceso debido a un error, sea program\u00e1tico o por la ausencia de un <em>input <\/em>requerido, los Workflow Managers son capaces de resumir el proceso desde el lugar donde hubo el \u00faltimo paso correcto, resultando en el ahorro en la utilizaci\u00f3n de recursos y tiempo. Este proceso se consigue mediante la producci\u00f3n de archivos y resultados intermedios, siendo comparados con los resultados esperados. Este proceso genera un aumento en las necesidades de almacenamiento, pero comporta una ventaja sustancial en el caso de tener la necesidad de una reentrada en el <em>pipeline.<\/em><\/li>\n<li>Modularidad. La compartimentaci\u00f3n de los procesos permite un gran dinamismo en la actualizaci\u00f3n de ciertos pasos del proceso, as\u00ed como de la introducci\u00f3n de puntos de control para cada etapa. La modularidad tambi\u00e9n permite la reutilizaci\u00f3n de un proceso en varios <em>pipelines<\/em> simult\u00e1neamente.<\/li>\n<\/ol>\n<p>Finalmente, indicar que algunos Workflow Managers tambi\u00e9n tienen recursos para aumentar la seguridad en la ejecuci\u00f3n de los procesos, como la validaci\u00f3n del origen de los datos o utilizar autenticaci\u00f3n de usuarios.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los pipelines tradicionales est\u00e1n muy ligados a las infraestructuras de computaci\u00f3n locales donde se ejecutan. Estos no tienen la capacidad de resumir un proceso que se haya parado, tienen poca documentaci\u00f3n, no cuentan con una trazabilidad de los par\u00e1metros y versiones de paquetes utilizados y requieren de instalaci\u00f3n manual, lo cual impide una f\u00e1cil distribuci\u00f3n [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"acf":[],"_links":{"self":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/pages\/48"}],"collection":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/comments?post=48"}],"version-history":[{"count":3,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/pages\/48\/revisions"}],"predecessor-version":[{"id":141,"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/pages\/48\/revisions\/141"}],"wp:attachment":[{"href":"http:\/\/eines-informatiques.recursos.uoc.edu\/workflows\/es\/wp-json\/wp\/v2\/media?parent=48"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}