Workflows are among the most commonly used tools in a variety of execution
environments. Many of them target a specific environment; few of them make it
possible to execute an entire workflow in different environments, e.g.
Kubernetes and batch clusters. We present a novel approach to workflow
execution, called StreamFlow, that complements the workflow graph with the
declarative description of potentially complex execution environments, and that
makes it possible the execution onto multiple sites not sharing a common data
space. StreamFlow is then exemplified on a novel bioinformatics pipeline for
single-cell transcriptomic data analysis workflow.Comment: 30 pages - 2020 IEEE Transactions on Emerging Topics in Computin