Nextflow|資料是怎麼在 Process 間傳遞?
Process 是 nextflow 管理分析流程的基本單位,可包含能在 linux shell 執行的程式碼(例如 linux command, python code)、腳本(例如自訂的 hello-world.sh)與軟體(例如 GATK 或 FastQC)。 Process 之間彼此獨立,各有各的工作目錄,也可以分別設定其執行環境(例如 docker container 或 conda environment)。
Channel 則媒介了 process 間的資料交流,若不透過 channels 串接,process 間的檔案或變項無法共享。舉凡字串、數值、檔案路徑乃至標準輸出等,皆有對應的 qualifier 讓 nextflow 知道怎麼處理得自於 channel 的各式資料。