stringtranslate.com

Sistema de flujo de trabajo científico

Un sistema de flujo de trabajo científico es una forma especializada de un 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ífico 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 una manera independiente de la plataforma. [2] Cada borde dirigido en el gráfico de un flujo de trabajo representa típicamente una conexión desde la salida de una aplicación a la entrada de la siguiente. Una secuencia de dichos bordes puede denominarse canalización .

Un sistema de gestión de flujo de trabajo de bioinformática 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 invocan 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 scripting como Python con una interfaz de línea de comandos o, más recientemente, utilizando aplicaciones web de código abierto como Jupyter Notebook .

Existen muchos motivos para diferenciar los flujos de trabajo científicos de los flujos de trabajo de los procesos empresariales tradicionales, entre ellos:

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 en red para optimizar la ejecución de cálculos complejos en recursos predefinidos, hacia una visión específica del dominio de qué tipos de datos, herramientas y recursos distribuidos deben estar disponibles para los científicos y cómo se puede hacer que sean fácilmente accesibles y con requisitos específicos de calidad de servicio [3].

Los flujos de trabajo científicos son reconocidos hoy en día [¿ por quién? ] como un elemento crucial de la ciberinfraestructura , que facilita la e-ciencia. Los flujos de trabajo científicos, que suelen estar ubicados sobre una capa intermedia , son un medio por 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, los métodos experimentales utilizados, las calibraciones y parámetros de las máquinas, etc. Lo mismo ocurre en la e-ciencia, excepto que los datos de procedencia son un registro de las actividades del flujo de trabajo invocadas, los servicios y bases de datos a los que se accedió, los conjuntos de datos utilizados, etc. Dicha 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 colaborativos para editar y publicar definiciones de flujos de trabajo y resultados de flujos de trabajo directamente en la instalación de Galaxy.

Análisis

Un supuesto 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, escribiendo código para describir la lógica del flujo de trabajo. Los sistemas de flujo de trabajo potentes facilitan a los no programadores esbozar primero los pasos del flujo de trabajo utilizando herramientas de diagramas de flujo simples y luego conectar varias herramientas de adquisición de datos, análisis y generación de informes. Para una máxima productividad, los detalles del código de programación subyacente normalmente deberían estar ocultos.

Las técnicas de análisis de flujo de trabajo se pueden utilizar para analizar las propiedades de dichos flujos de trabajo y verificar ciertas propiedades antes de ejecutarlos. En el artículo "El diseño y la implementación de una herramienta de análisis de flujo de trabajo" de Curcin et al. [5] se describe un ejemplo de un marco de análisis formal teórico para la verificación y el perfilado de los aspectos de flujo de control de los flujos de trabajo científicos y sus aspectos de flujo de datos para el sistema Discovery Net .

Los autores señalan que la introducción del 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. Realizar dicho análisis es difícil, y abordar estas cuestiones requiere basarse en los métodos formales utilizados en la investigación en ciencias de la computación (por ejemplo, las redes de Petri ) y basarse en estos métodos formales para 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 tales herramientas en el pasado impidió que las soluciones de gestión automatizada del flujo de trabajo maduraran desde juguetes académicos agradables a herramientas a nivel de producción utilizadas fuera del estrecho círculo de los primeros usuarios y los 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.

Véase también

Referencias

  1. ^ Sun, LiewChee; P, AtkinsonMalcolm; GaleaMichelle; Fong, AngTan; MartinPaul; Van, HemertJano I. (12 de diciembre de 2016). "Flujos de trabajo científicos". Encuestas de informática de la 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 generador de flujo de trabajo de Grid independiente de middleware para aplicaciones científicas" (PDF) . 2009 5th IEEE International Conference on E-Science Workshops . págs. 86–91. doi :10.1109/ESCIW.2009.5407993. ISBN 978-1-4244-5946-9. Número de identificación del sujeto  3339794.
  3. ^ Kyriazis, Dimosthenis; Tserpes, Konstantinos; Menychtas, Andreas; Litke, Antonis; Varvarigou, Theodora (2008). "Un mecanismo innovador de mapeo de flujo de trabajo para Grids en el marco de la calidad del servicio". Future Generation Computer Systems . 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-Science. Concurrency Computat.: Pract. Exper. 2008; 20:419–429
  5. ^ Curcin, V.; Ghanem, M.; Guo, Y. (2010). "El diseño y la implementación de una herramienta de análisis de flujo de trabajo". Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences . 368 (1926): 4193–4208. Bibcode :2010RSPTA.368.4193C. doi : 10.1098/rsta.2010.0157 . PMID  20679131.
  6. ^ Barker, Adam; Van Hemert, Jano (2008), "Flujo de trabajo científico: una encuesta y direcciones de investigación", Procesamiento paralelo y matemáticas aplicadas, 7.ª conferencia internacional, PPAM 2007, Documentos seleccionados revisados , Notas de clase 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. Número de identificación del sujeto  18341808.
  8. ^ Reich, Michael; Liefeld, Ted; Gould, Joshua; Lerner, Jim; Tamayo, Pablo; Mesirov, Jill P (2006). "GenePattern 2.0". Nature Genetics . 38 (5): 500–501. doi :10.1038/ng0506-500. PMID  16642009. S2CID  5503897.
  9. ^ Deelman, Ewa ; Vahi, Karan; Juve, Gideon; Rynge, Mats; Callaghan, Scott; Maechling, Philip J.; Mayani, Rajiv; Chen, Weiwei; Ferreira da Silva, Rafael; Livny, Miron; Wenger, Kent (mayo de 2015). "Pegasus, un sistema de gestión de flujo de trabajo para la automatización científica". Future Generation Computer Systems . 46 : 17–35. doi : 10.1016/j.future.2014.10.008 .
  10. ^ "BIOVIA Pipeline Pilot | Aplicación de creación de flujos de trabajo científicos para análisis de datos". Accelrys.com . Consultado el 4 de diciembre de 2016 .
  11. ^ "Sistemas de flujo de trabajo existentes". Wiki de Common Workflow Language . Archivado desde el original el 17 de octubre de 2019.

Enlaces externos