Nextflowは汎用のワークフロー言語である。ワークフロー言語とは、クラウドやHPC上で、効率よくデータを処理するためのツールである。
ワークフロー言語というと、再現性が議論になるが、個人的な印象としては、確かに再現性は高くなるかもしれないけれども、環境をDockerなどに封じ込めなければならないので、別にメンテナンス性は高くならない。
むしろワークフロー言語とは、シェルスクリプトを拡張して、ローカルなコンピューター外の並列実行(クラウド環境やHPCなど)に対応してくれるツールだと認識している。
Dockerが使えない場合
事実上Dockerが標準のコンテナ技術になっているが、Dockerを使えない場合もあると思う。特にDockerは管理者権限が必要であるケースが少なくない。
そして、Dockerが使えない場合は、Singularityコンテナを使うと説明されることが多い。
しかし、実はSingularityは Sylabs Inc. という民間企業が管理していて、実はそれほど使いやすいものではない。かわりに、Apptainerの利用が推奨される。
micromamba/conda を利用して conda-forge から singularity をインストールしようとすると、古いバージョンしかない。その点、Apptainerなら新しいバージョンのものをインストールできる。
この記事は以上です。
この記事が役に立った場合は、あなたがお持ちの Tips を Qiita やそのほかのブログに公開してください。熾烈な競争環境下では、情報公開に消極的になるのが常ですが、日本語の情報源は少なく、ググラビリティを改善するコントリビューションは常に求められています。