2. Nextflow

2.3. Estructura de workflows

Los workflows creados para Nextflow contienen tres partes diferenciadas: procesos, canales y workflows. Un proceso ejecuta una tarea. Cada proceso es independiente del otro y puede tener más de un canal de entrada y de salida. Un canal es un sistema de colas asíncrono que permite el flujo de información entre procesos (figura 1). Para juntar los distintos procesos y su flujo de ejecución (canales) se resume en un apartado específico en el script que se denomina workflow.

Figura 1. Ejemplo de esquema de workflow en Nextflow.
Fuente: elaboración propia.

Nextflow diferencia los comandos que se ejecutaran dentro de un proceso y quién será el encargado de ejecutarlos. Esto permite tener un marco general que describa qué se quiere hacer independientemente de las herramientas que se utilizaran para ejecutarlo. Esta estructura permite lanzar un proceso en distintos entornos computacionales variando simplemente un fichero de configuración, el cual define los ejecutores específicos del entorno donde uno se encuentre.