stringtranslate.com

Sistema de flujo de trabajo científico

Un sistema de flujo de trabajo científico es una forma especializada de sistema de gestión de flujo de trabajo diseñado específicamente para componer y ejecutar una serie de pasos computacionales o de manipulación de datos, o flujo de trabajo , en una aplicación científica. [1]

Aplicaciones

Los científicos distribuidos pueden colaborar en la realización de experimentos científicos a gran escala y aplicaciones de descubrimiento de conocimientos utilizando sistemas distribuidos de recursos informáticos, conjuntos de datos y dispositivos. Los sistemas de flujo de trabajo científicos desempeñan un papel importante a la hora de hacer posible esta visión.

Los sistemas de flujo de trabajo científicos más especializados proporcionan una interfaz de programación visual que permite a los usuarios construir fácilmente sus aplicaciones como un gráfico visual conectando nodos entre sí, y también se han desarrollado herramientas para construir dichas aplicaciones de manera independiente de la plataforma. [2] Cada borde dirigido en el gráfico de un flujo de trabajo normalmente representa una conexión desde la salida de una aplicación hasta la entrada de la siguiente. Una secuencia de tales aristas puede denominarse tubería .

Un sistema de gestión de flujo de trabajo bioinformático es un sistema de flujo de trabajo científico especializado centrado en la bioinformática .

Flujos de trabajo científicos

Los flujos de trabajo científicos computarizados más simples son scripts que solicitan datos, programas y otras entradas y producen resultados que pueden incluir visualizaciones y resultados analíticos. Estos pueden implementarse en programas como R o MATLAB , utilizando un lenguaje de secuencias de comandos como Python con una interfaz de línea de comandos o, más recientemente, utilizando aplicaciones web de código abierto como Jupyter Notebook .

Hay muchos motivos para diferenciar los flujos de trabajo científicos de los flujos de trabajo de procesos comerciales tradicionales. Éstas incluyen:

Al centrarse en los científicos, el enfoque del diseño del sistema de flujo de trabajo científico se aleja de las actividades de programación del flujo de trabajo , generalmente consideradas por los entornos de computación grid para optimizar la ejecución de cálculos complejos en recursos predefinidos, a una visión específica del dominio de qué tipos de datos, herramientas y los recursos distribuidos deben ponerse a disposición de los científicos y cómo se pueden hacer fácilmente accesibles y con requisitos específicos de calidad de servicio [3]

Los flujos de trabajo científicos ahora son reconocidos [ ¿por quién? ] como elemento crucial de la ciberinfraestructura , facilitando la e-Ciencia. Los flujos de trabajo científicos, que normalmente se encuentran encima de una capa de middleware , son un medio mediante el cual los científicos pueden modelar, diseñar, ejecutar, depurar, reconfigurar y volver a ejecutar sus procesos de análisis y visualización . Parte del método científico establecido es crear un registro de los orígenes de un resultado, cómo se obtuvo, métodos experimentales utilizados, calibraciones y parámetros de la máquina, etc. Es lo mismo en la e-Ciencia, excepto que los datos de procedencia son un registro de las actividades de flujo de trabajo invocadas, los servicios y bases de datos a los que se accede, los conjuntos de datos utilizados, etc. Esta información es útil para que un científico interprete los resultados de su flujo de trabajo y para que otros científicos establezcan confianza en el resultado experimental. [4]

Compartir flujos de trabajo

Se han desarrollado comunidades de redes sociales como myExperiment para facilitar el intercambio y el desarrollo colaborativo de flujos de trabajo científicos. Galaxy proporciona mecanismos de colaboración para editar y publicar definiciones de flujo de trabajo y resultados de flujo de trabajo directamente en la instalación de Galaxy.

Análisis

Una suposición clave que subyace a todos los sistemas de flujo de trabajo científicos es que los propios científicos podrán utilizar un sistema de flujo de trabajo para desarrollar sus aplicaciones basándose en diagramas de flujo visuales, diagramas lógicos o, como último recurso, escribir código para describir la lógica del flujo de trabajo. Los potentes sistemas de flujo de trabajo facilitan que quienes no son programadores esbocen primero los pasos del flujo de trabajo utilizando herramientas simples de diagramas de flujo y luego conecten varias herramientas de adquisición de datos, análisis e informes. Para obtener la máxima productividad, los detalles del código de programación subyacente normalmente deben ocultarse.

Se pueden utilizar técnicas de análisis de flujo de trabajo para analizar las propiedades de dichos flujos de trabajo y verificar ciertas propiedades antes de ejecutarlos. En el artículo "El diseño e implementación de una herramienta de análisis de flujo de trabajo " de Curcin et al. [5]

Los autores señalan que introducir el análisis y la verificación de programas en el mundo del flujo de trabajo requiere una comprensión detallada de la semántica de ejecución del lenguaje del flujo de trabajo, incluidas las propiedades de ejecución de los nodos y arcos en el gráfico del flujo de trabajo, la comprensión de las equivalencias funcionales entre los patrones del flujo de trabajo y muchas otras cuestiones. Hacer este tipo de análisis es difícil, y abordar estas cuestiones requiere aprovechar los métodos formales utilizados en la investigación en ciencias de la computación (por ejemplo, redes de Petri ) y desarrollar herramientas a nivel de usuario para razonar sobre las propiedades tanto de los flujos de trabajo como de los sistemas de flujo de trabajo. La falta de este tipo de herramientas en el pasado impidió que las soluciones automatizadas de gestión del flujo de trabajo maduraran y pasaran de ser juguetes académicos agradables a herramientas de nivel de producción utilizadas fuera del estrecho círculo de los primeros usuarios y entusiastas del flujo de trabajo.

Sistemas notables

Los sistemas de flujo de trabajo científicos notables incluyen: [6]

Se han identificado más de 280 sistemas de flujo de trabajo de análisis de datos computacionales, [11] aunque la distinción entre flujos de trabajo de análisis de datos y flujos de trabajo científicos es fluida, ya que no todos los sistemas de flujo de trabajo de análisis se utilizan con fines científicos.

Ver también

Referencias

  1. ^ Sol, LiewChee; P, AtkinsonMalcolm; Galea Michelle; Fong, Ang Tan; MartínPaul; Van, HemertJano I. (12 de diciembre de 2016). "Flujos de trabajo científicos". Encuestas de Computación ACM . 49 (4): 1–39. doi :10.1145/3012429. hdl : 20.500.11820/774ef69e-a499-4bd2-a609-09f050e682ae . S2CID  9408644.
  2. ^ D. Johnson; et al. (Diciembre de 2009). "Un creador de flujo de trabajo Grid independiente de middleware para aplicaciones científicas" (PDF) . 2009 Quinta Conferencia Internacional IEEE sobre Talleres de Ciencia Electrónica . págs. 86–91. doi :10.1109/ESCIW.2009.5407993. ISBN 978-1-4244-5946-9. S2CID  3339794.
  3. ^ Kyriazis, Dimóstenes; Tserpes, Konstantinos; Menychtas, Andreas; Litke, Antonis; Varvarigou, Theodora (2008). "Un innovador mecanismo de mapeo de flujo de trabajo para Grids en el marco de la Calidad de Servicio". Sistemas informáticos de generación futura . 24 (6): 498–511. doi : 10.1016/j.future.2007.07.009.
  4. ^ Captura automática y almacenamiento eficiente de la procedencia de experimentos de e-Ciencia. Computación de concurrencia: práctica. Experto. 2008; 20:419–429
  5. ^ Curcin, V.; Ghanem, M.; Guo, Y. (2010). "El diseño e implementación de una herramienta de análisis de flujo de trabajo". Transacciones filosóficas de la Royal Society A: Ciencias matemáticas, físicas y de ingeniería . 368 (1926): 4193–4208. Código Bib : 2010RSPTA.368.4193C. doi : 10.1098/rsta.2010.0157 . PMID  20679131.
  6. ^ Ladrador, Adán; Van Hemert, Jano (2008), "Scientific Workflow: A Survey and Research Directions", Procesamiento paralelo y matemáticas aplicadas, Séptima Conferencia Internacional, PPAM 2007, Artículos seleccionados revisados , Apuntes de conferencias en informática, vol. 4967, Gdansk, Polonia: Springer Berlin / Heidelberg, págs. 746–753, CiteSeerX 10.1.1.105.4605 , doi :10.1007/978-3-540-68111-3_78, ISBN  978-3-540-68105-2
  7. ^ Marru, Suresh; Gardler, Ross; Slominski, Aleksander; Duma, comió; Perera, Srinath; Weerawarana, Sanjiva; Gunathilake, Lahiru; Herath, Chathura; Tangchaisin, Patanachai; Perforar, Marlon; Mattmann, Chris; Singh, Raminder; Gunarathne, Thilina; Chinthaka, Eran (18 de noviembre de 2011). Actas del taller de ACM de 2011 sobre entornos informáticos de puerta de enlace - GCE '11 . pag. 21. doi : 10.1145/2110486.2110490. ISBN 9781450311236. S2CID  18341808.
  8. ^ Reich, Michael; Liefeld, Ted; Gould, Josué; Lerner, Jim; Tamayo, Pablo; Mesirov, Jill P (2006). "Patrón genético 2.0". Genética de la Naturaleza . 38 (5): 500–501. doi :10.1038/ng0506-500. PMID  16642009. S2CID  5503897.
  9. ^ Deelman, Ewa ; Vahi, Karan; Juve, Gedeón; Rynge, esteras; Callaghan, Scott; Maechling, Philip J.; Mayani, Rajiv; Chen, Weiwei; Ferreira da Silva, Rafael; Livny, Mirón; Wenger, Kent (mayo de 2015). "Pegasus, un sistema de gestión de flujo de trabajo para la automatización científica". Sistemas informáticos de generación futura . 46 : 17–35. doi : 10.1016/j.future.2014.10.008 .
  10. ^ "BIOVIA Pipeline Pilot | Aplicación de creación de flujo de trabajo científico para análisis de datos". Accelrys.com . Consultado el 4 de diciembre de 2016 .
  11. ^ "Sistemas de flujo de trabajo existentes". Wiki de lenguaje de flujo de trabajo común . Archivado desde el original el 17 de octubre de 2019.

enlaces externos